:root{--fun-night: var(--relation-midnight, #11101f);--fun-night-2: var(--relation-midnight-2, #19152a);--fun-violet: var(--relation-violet, #5e477e);--fun-lavender: var(--relation-lavender, #c8b4e8);--fun-gold: var(--relation-gold, #d3b16a);--fun-gold-light: var(--relation-gold-light, #ead9a8);--fun-ivory: var(--relation-bg, #fffaf6);--fun-text: var(--relation-text, #251d30);--fun-soft: var(--relation-text-soft, #756b7d);--fun-line: var(--relation-line, rgba(62, 45, 77, .1));--fun-on-dark: var(--relation-text-on-dark, #fbf6ef);--fun-on-dark-soft: var(--relation-text-on-dark-soft, #cfc4d8);--fun-radius: 24px;--fun-ease: cubic-bezier(.2, .7, .2, 1);--fun-spring: var(--relation-ease-spring, cubic-bezier(.34, 1.4, .64, 1));--fun-violet-text: #5b3f86;--fun-gold-text: #7a5a1f}.fun-kicker{display:block;font-size:11px;font-weight:700;letter-spacing:1.6px;color:var(--fun-violet-text);text-transform:uppercase}.fun-hero .fun-kicker,.character-teaser .fun-kicker{color:var(--fun-gold-light)}.fun-sub{font-size:14px;line-height:1.7;color:#5d5068;margin-top:4px}.fun-note{font-size:12px;line-height:1.75;color:var(--fun-soft);margin-top:14px}.fun-link{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:14px;font-weight:700;color:var(--fun-violet-text);border-radius:12px;transition:transform var(--relation-press-dur, .12s) ease}.fun-link:active{transform:scale(.97)}.fun-sparkle,.fun-crescent{flex:0 0 auto;fill:var(--fun-gold)}.fun-status{display:flex;align-items:center;justify-content:center;gap:8px;margin:28px 0;font-size:14px;color:var(--fun-soft)}.fun-status.is-error{flex-direction:column;padding:18px;border-radius:16px;background:#fff0f2;color:#93394c;text-align:center}.fun-page-note{font-size:12px;line-height:1.8;color:var(--fun-soft);margin:26px 0 8px}.fun-page-note a{color:var(--fun-violet-text);font-weight:700;text-decoration:underline;text-underline-offset:3px}.fun-hero{position:relative;isolation:isolate;overflow:hidden;color:var(--fun-on-dark);background:radial-gradient(120% 70% at 50% 18%,rgba(200,180,232,.26),transparent 62%),radial-gradient(60% 40% at 88% 92%,rgba(211,177,106,.16),transparent 70%),linear-gradient(170deg,#241b3a 0%,var(--fun-night-2) 55%,var(--fun-night) 100%);border:1px solid var(--relation-line-on-dark, rgba(234, 217, 168, .22));border-radius:30px}.fun-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;opacity:.55;background-image:radial-gradient(1.5px 1.5px at 3% 14%,#fbf6ef 90%,transparent),radial-gradient(1px 1px at 96% 8%,#fbf6ef 90%,transparent),radial-gradient(1.5px 1.5px at 97% 46%,#ead9a8 90%,transparent),radial-gradient(1px 1px at 3% 64%,#ead9a8 90%,transparent),radial-gradient(1px 1px at 24% 97%,#fbf6ef 90%,transparent),radial-gradient(1.5px 1.5px at 97% 88%,#fbf6ef 90%,transparent)}.fun-card{margin:14px 0;padding:22px 20px;border-radius:var(--fun-radius);background:#fff;border:1px solid var(--fun-line)}.fun-card h3{font-size:18px;line-height:1.5;letter-spacing:-.3px}.fun-card>.fun-kicker+h3{margin-top:6px}.character-page .page-heading{margin-bottom:18px}.character-view{display:flex;flex-direction:column}.character-result:focus{outline:none}.character-hero{text-align:center;padding:26px 20px 28px}.character-owner{font-family:var(--serif);font-size:17px;color:var(--fun-on-dark-soft)}.character-stage{position:relative;width:min(232px,70vw);aspect-ratio:1;margin:14px auto 12px}.character-glow{position:absolute;top:-14%;right:-14%;bottom:-14%;left:-14%;border-radius:50%;background:radial-gradient(circle,rgba(234,217,168,.36),rgba(200,180,232,.14) 45%,transparent 70%);z-index:-1}.character-main{width:100%;height:auto;filter:drop-shadow(0 14px 26px rgba(8,5,20,.45));animation:fun-rise .7s var(--fun-spring) both}.character-glow{animation:fun-glow 1.1s .12s var(--fun-ease) both}.character-name{font-family:var(--serif);font-size:28px;font-weight:700;line-height:1.35;letter-spacing:-.6px;animation:fun-fade-up .6s .18s var(--fun-ease) both}.character-badge{display:inline-flex;margin-top:10px;padding:5px 14px;border-radius:999px;border:1px solid rgba(234,217,168,.4);background:#ead9a81a;color:var(--fun-gold-light);font-size:13px;font-weight:600;line-height:1.6;animation:fun-fade-up .6s .26s var(--fun-ease) both}.character-tagline{max-width:340px;margin:12px auto 0;font-size:15px;line-height:1.7;color:var(--fun-on-dark-soft);animation:fun-fade-up .6s .32s var(--fun-ease) both}.character-jump{display:inline-flex;align-items:center;gap:4px;min-height:44px;margin-top:14px;padding:0 18px;border-radius:999px;border:1px solid rgba(234,217,168,.45);color:var(--fun-gold-light);font-size:13px;font-weight:700;transition:transform var(--relation-press-dur, .12s) ease;animation:fun-fade-up .6s .38s var(--fun-ease) both}.character-jump:active{transform:var(--relation-press-chip, scale(.96))}.character-jump:focus-visible{outline:3px solid var(--fun-gold-light);outline-offset:2px}.trait-list{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:8px}.trait-list li{display:flex;align-items:center;gap:12px;min-height:52px;padding:10px 14px;border-radius:16px;background:linear-gradient(100deg,#f7f2fc,#fffaf6);border:1px solid #ece3f5;font-size:15px;font-weight:600;line-height:1.5;color:var(--fun-text)}.trait-list .trait-mark{width:20px;height:20px}.trait-weak{margin-top:16px;padding:16px;border-radius:18px;background:#fff4f6;border:1px dashed #efbccb}.trait-weak h3{font-size:15px;color:#8e3a55}.trait-weak p{font-size:14px;line-height:1.75;color:#4d3f57;margin-top:4px}.bond-list{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:10px}.bond{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:18px;background:var(--fun-ivory);border:1px solid var(--fun-line)}.bond-art{flex:0 0 auto;display:flex;padding-top:2px}.bond-art img{width:46px;height:46px;border-radius:50%;box-shadow:0 0 0 2px #fff}.bond-art img+img{margin-left:-14px}.bond-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.bond-title{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--fun-violet-text)}.bond[data-kind=tempers] .bond-title,.bond[data-kind=leads] .bond-title{color:#8e3a55}.bond-element{padding:1px 8px;border-radius:999px;background:#f1ebf8;color:#4f3a70;font-weight:600}.bond-copy strong{font-size:15px;line-height:1.5;word-break:keep-all}.bond-copy small{font-size:13px;line-height:1.7;color:#5d5068;word-break:keep-all}.bond-heading-2{margin-top:22px}.bond-twin{display:flex;align-items:center;gap:10px;margin-top:16px;font-size:13px;line-height:1.7;color:#4d3f57}.bond-twin img{flex:0 0 auto;width:40px;height:40px}.element-balance{margin:12px 0 0}.element-balance svg{display:block;width:100%;max-width:340px;height:auto;margin:0 auto;overflow:visible}.eb-name{font-size:14px;font-weight:800;fill:var(--fun-text)}.eb-hanja{font-size:10px;font-weight:600;fill:#5d5068}.eb-count{font-size:15px;font-weight:800;fill:#4f3a70;font-variant-numeric:tabular-nums}.eb-mine{font-size:11px;font-weight:800;fill:#fff}.eb-legend{list-style:none;padding:0;margin:10px 0 0;display:flex;flex-wrap:wrap;justify-content:center;gap:6px}.eb-legend li{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;border:1px solid var(--fun-line);font-size:12px;color:#4d3f57}.eb-legend li.is-mine{border-color:var(--fun-gold);background:#fdf7e8}.eb-legend strong{font-variant-numeric:tabular-nums}.eb-swatch{width:10px;height:10px;border-radius:50%;border:1px solid}.eb-key{margin-top:8px;text-align:center;font-size:12px;color:var(--fun-soft);line-height:1.7}.character-today{background:linear-gradient(160deg,#fbf6ea,#fff 70%);border-color:#efe2c4}.character-today .fun-kicker{color:var(--fun-gold-text)}.character-today-line{margin-top:10px;font-family:var(--serif);font-size:19px;font-weight:600;line-height:1.6;color:var(--fun-text)}.character-share .field{margin:16px 0 6px}.character-name-field small{color:var(--fun-soft);font-weight:500}.character-card-preview{font-size:13px;color:#5d5068;line-height:1.7;margin-bottom:12px}.character-share-button{gap:8px;min-height:54px;border-radius:18px}.character-all summary{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;cursor:pointer;font-size:16px;font-weight:700;list-style:none}.character-all summary::-webkit-details-marker{display:none}.character-all[open] summary svg{transform:rotate(180deg)}.character-all summary svg{transition:transform .2s var(--fun-ease)}.character-grid{list-style:none;padding:0;margin:12px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.character-grid button{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;border-radius:18px;background:var(--fun-ivory);border:1px solid var(--fun-line);text-align:center;transition:transform var(--relation-press-dur, .12s) ease}.character-grid button:active{transform:var(--relation-press-card, scale(.985))}.character-grid button:focus-visible{outline:3px solid #aa8bd4;outline-offset:2px}.character-grid li.is-mine button{background:#fdf8ec}.character-grid button[aria-pressed=true]{border-color:var(--fun-gold);box-shadow:inset 0 0 0 1px var(--fun-gold)}.character-peek{display:flex;gap:12px;align-items:flex-start;margin-top:12px;padding:14px;border-radius:18px;background:linear-gradient(160deg,#f7f2fc,#fffaf6);border:1px solid #e8def3}.character-peek img{flex:0 0 auto}.character-peek strong{display:block;font-family:var(--serif);font-size:16px;line-height:1.45}.character-peek small{display:block;margin-top:2px;font-size:12px;color:var(--fun-gold-text);font-weight:700}.character-peek p{margin-top:6px;font-size:13px;line-height:1.65;color:#4d3f57}.character-peek-strengths{font-weight:700}.character-grid img{width:64px;height:64px}.character-grid strong{font-size:13px;line-height:1.45;word-break:keep-all}.character-grid small{font-size:12px;color:var(--fun-soft)}.character-actions{display:flex;flex-wrap:wrap;gap:10px;margin:6px 0 0}.character-actions>.button{flex:1 1 200px;gap:8px;min-height:48px}.character-form{padding:0;overflow:hidden}.character-invite{border-radius:0;border:0;padding:24px 20px 20px;text-align:center}.character-invite h2{font-family:var(--serif);font-size:23px;line-height:1.45;margin-top:8px}.character-invite>p:not(.fun-kicker){margin-top:8px;font-size:13px;line-height:1.7;color:var(--fun-on-dark-soft)}.character-parade-row{list-style:none;padding:0;margin:18px 0 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px 4px}.character-parade-row li{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:11px;color:var(--fun-on-dark-soft);animation:fun-fade-up .5s var(--fun-ease) both}.character-parade-row li:nth-child(2){animation-delay:40ms}.character-parade-row li:nth-child(3){animation-delay:80ms}.character-parade-row li:nth-child(4){animation-delay:.12s}.character-parade-row li:nth-child(5){animation-delay:.16s}.character-parade-row li:nth-child(n+6){animation-delay:.2s}.character-parade-row img{width:100%;max-width:60px;height:auto}.fun-form{padding:20px}.fun-form .check-label{align-items:flex-start;line-height:1.7;margin:10px 0}.fun-form .check-label input{margin-top:5px;flex:0 0 auto}@media(max-width:400px){.fun-form{padding:18px 14px}}.fun-form-actions{display:grid;gap:10px;margin-top:16px}.fun-cta{min-height:56px;border-radius:18px;gap:8px}.character-teaser{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 14px;margin:18px 0;padding:16px 18px;border-radius:24px;color:var(--fun-on-dark);background:radial-gradient(90% 120% at 0% 50%,rgba(200,180,232,.28),transparent 60%),linear-gradient(160deg,#2a2043,var(--fun-night-2));border:1px solid rgba(234,217,168,.28);transition:transform var(--relation-press-dur, .12s) ease}.character-teaser:active{transform:var(--relation-press-card, scale(.985))}.character-teaser:focus-visible{outline:3px solid #aa8bd4;outline-offset:3px}.character-teaser>img{width:84px;height:84px;grid-row:span 2}.character-teaser-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.character-teaser h2,.character-teaser h3{font-family:var(--serif);font-size:19px;line-height:1.45;font-weight:700;word-break:keep-all}.character-teaser small{font-size:12px;line-height:1.6;color:var(--fun-on-dark-soft)}.character-teaser-go{grid-column:2;display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--fun-gold-light);min-height:28px}.character-teaser.is-invite{grid-template-columns:minmax(0,1fr)}.character-teaser.is-invite .character-teaser-go{grid-column:1}.character-parade{display:flex;margin-bottom:8px}.character-parade img{width:48px;height:48px;border-radius:50%;box-shadow:0 0 0 2px var(--fun-night-2)}.character-parade img+img{margin-left:-10px}.fun-today .today-date-nav{border-radius:18px;border-color:var(--fun-line)}.today-status-help{font-size:12px;line-height:1.7}.today-hero-v2{margin:16px 0 14px;padding:20px 18px 18px}.today-hero-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 10px;font-size:12px;color:var(--fun-on-dark-soft)}.today-hero-owner{font-weight:700;color:var(--fun-gold-light)}.today-hero-pillar{padding:3px 10px;border-radius:999px;border:1px solid rgba(234,217,168,.28)}.today-hero-main{display:flex;align-items:center;gap:16px;margin-top:14px}.today-hero-copy{min-width:0}.fun-today .today-hero-v2 .score-ring-track{stroke:#fbf6ef24}.fun-today .today-hero-v2 .score-ring-value{stroke:var(--fun-gold)}.fun-today .today-hero-v2 .score-ring strong{font-size:32px;color:var(--fun-on-dark)}.fun-today .today-hero-v2 .score-index>small{color:var(--fun-on-dark-soft)}.today-tone{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;background:#fbf6ef1a;color:var(--fun-on-dark);font-size:12px;font-weight:700}.today-tone[data-tone=good]{background:#ead9a82e;color:var(--fun-gold-light)}.today-tone[data-tone=caution]{background:#efa7bb29;color:#f7c9d6}.today-hero-v2 h2{margin-top:8px;font-family:var(--serif);font-size:22px;line-height:1.5;font-weight:700;letter-spacing:-.5px;word-break:keep-all}.kiki-moment{display:flex;align-items:flex-start;gap:12px;margin-top:16px}.kiki-moment-avatar{position:relative;flex:0 0 auto;width:60px;height:60px}.kiki-moment-avatar img{width:60px;height:60px;border-radius:50%;box-shadow:0 0 0 2px var(--fun-gold-light),0 6px 16px #08051466;object-fit:cover}.kiki-moment-spark{position:absolute;fill:var(--fun-gold-light)}.kiki-moment-spark.is-a{top:-6px;right:-6px}.kiki-moment-spark.is-b{bottom:2px;left:-6px}.kiki-moment-moon{position:absolute;top:-6px;right:-6px;fill:var(--fun-gold-light)}.kiki-moment-cloud{position:absolute;top:-8px;right:-12px}.kiki-moment-bubble{position:relative;flex:1;min-width:0;padding:12px 14px;border-radius:4px 18px 18px;background:#fbf6ef1a;border:1px solid rgba(234,217,168,.22);font-size:14px;line-height:1.7;color:var(--fun-on-dark)}.kiki-moment-bubble strong{display:block;font-size:11px;letter-spacing:.4px;color:var(--fun-gold-light)}.kiki-moment-line{display:block;font-weight:700;margin:2px 0}.today-tiles{list-style:none;padding:0;margin:0 0 6px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.today-tiles li{animation:fun-fade-up .5s var(--fun-ease) both}.today-tiles li:nth-child(2){animation-delay:50ms}.today-tiles li:nth-child(3){animation-delay:.1s}.today-tiles li:nth-child(4){animation-delay:.15s}.today-tiles a{display:flex;flex-direction:column;gap:8px;min-height:96px;padding:14px;border-radius:20px;background:#fff;border:1px solid var(--fun-line);transition:transform var(--relation-press-dur, .12s) ease}.today-tiles a:active{transform:var(--relation-press-card, scale(.985))}.today-tiles a:focus-visible{outline:3px solid #aa8bd4;outline-offset:2px}.today-tile-head{display:flex;align-items:center;gap:8px;min-width:0}.today-tile-icon,.today-area-icon{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:12px;background:#f3eefa;color:var(--fun-violet-text)}[data-tone=good]>a .today-tile-icon,.today-area[data-tone=good] .today-area-icon{background:#fbf3df;color:var(--fun-gold-text)}[data-tone=caution]>a .today-tile-icon,.today-area[data-tone=caution] .today-area-icon{background:#fdeef1;color:#93394c}.today-tile-label{flex:1;min-width:0;font-size:14px;font-weight:700;line-height:1.35;word-break:keep-all}.today-tiles strong{font-size:20px;font-variant-numeric:tabular-nums}.today-tiles .today-bar{display:block;height:7px}.today-tile-tone{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:var(--tone-neutral)}[data-tone=good]>a .today-tile-tone{color:var(--tone-good)}[data-tone=caution]>a .today-tile-tone{color:var(--tone-caution)}.fun-today .today-area{border-radius:22px;border-left-width:1px;border-color:var(--fun-line);box-shadow:inset 4px 0 0 var(--tone-neutral-bar)}.fun-today .today-area[data-tone=good]{box-shadow:inset 4px 0 0 var(--tone-good-bar)}.fun-today .today-area[data-tone=caution]{box-shadow:inset 4px 0 0 var(--tone-caution-bar)}.fun-today .today-area header{justify-content:flex-start}.fun-today .today-area header h2{flex:1;min-width:0}.today-chip svg{vertical-align:-2px;margin-right:3px}.fun-today .today-lucky{margin:18px 0}.today-lucky h2,.today-week h2,.today-send h2{font-size:17px}.lucky-chips{list-style:none;padding:0;margin:12px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.lucky-chips .wide{grid-column:1 / -1}.lucky-chip{width:100%;min-height:72px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;padding:10px 12px;border-radius:18px;text-align:left;background:linear-gradient(180deg,#fffdf8,#fbf3e3);border:1px solid #efdfb8;box-shadow:0 1px #fff inset,0 3px #efe2c2;transition:transform var(--relation-press-dur, .12s) ease,box-shadow var(--relation-press-dur, .12s) ease}.lucky-chip:active{transform:translateY(2px) scale(.98);box-shadow:0 1px #fff inset,0 1px #efe2c2}.lucky-chip:focus-visible{outline:3px solid #c9a55a;outline-offset:2px}.lucky-chip[aria-expanded=true]{border-color:var(--fun-gold);background:linear-gradient(180deg,#fffaf0,#f8ebcd)}.lucky-chip-label{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;color:var(--fun-gold-text)}.lucky-chip-value{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:15px;font-weight:800;line-height:1.4;color:var(--fun-text);word-break:keep-all}.lucky-tip{margin:6px 2px 0;padding:10px 12px;border-radius:14px;background:#fffaf0;border:1px dashed #e7cf94;font-size:13px;line-height:1.65;color:#4d3f57;animation:fun-fade-up .24s var(--fun-ease) both}.fun-today .today-week{margin:14px 0}.today-strip button{position:relative;transition:transform var(--relation-press-dur, .12s) ease}.today-strip button:active{transform:scale(.96)}.today-strip-dot{position:absolute;top:6px;right:6px;width:6px;height:6px;border-radius:50%;background:var(--tone-neutral-bar)}.today-strip button[data-tone=good] .today-strip-dot{background:var(--tone-good-bar)}.today-strip button[data-tone=caution] .today-strip-dot{background:var(--tone-caution-bar)}.today-send{background:linear-gradient(160deg,#f6f0fc,#fff 72%);border-color:#e8def3}.today-send .today-share{margin-top:14px}.today-free-more{display:flex;flex-direction:column;gap:4px}.today-free-more strong{font-size:15px;line-height:1.6}.today-character{margin-top:22px}.today-invite{margin:4px 0 16px;padding:22px 20px;text-align:center}.today-invite-kiki{width:72px;height:72px;margin:0 auto 10px;border-radius:50%;box-shadow:0 0 0 2px var(--fun-gold-light)}.today-invite h2{font-family:var(--serif);font-size:20px;line-height:1.5}.today-invite>p{margin-top:8px;font-size:13px;line-height:1.75;color:var(--fun-on-dark-soft)}.today-invite .today-card-actions{justify-content:center}.today-invite-alt{color:var(--fun-on-dark);border-color:#ead9a873;background:#2b2243}.today-invite-alt:hover{background:#342a50}.zodiac-preview h2{font-size:18px;line-height:1.45;margin-top:4px}.zodiac-podium{list-style:none;padding:0;margin:12px 0 6px;display:grid;gap:8px}.zodiac-podium li,.zodiac-podium li>a{display:flex;align-items:center;gap:10px}.zodiac-podium li>a{flex:1;min-height:64px;padding:8px 12px 8px 8px;border-radius:18px;transition:transform var(--relation-press-dur, .12s) ease}.zodiac-podium li>a:active{transform:var(--relation-press-card, scale(.985))}.zodiac-podium-rank{flex:0 0 auto;width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;background:#fbf3df;color:var(--fun-gold-text)}.zodiac-podium-copy{display:flex;flex-direction:column;min-width:0;line-height:1.5}.zodiac-podium-copy strong{font-size:15px}.zodiac-podium-copy small{font-size:12px;color:#5d5068;word-break:keep-all}.zodiac-podium.is-night li>a{background:#fbf6ef12;border:1px solid rgba(234,217,168,.2)}.zodiac-podium.is-night .zodiac-podium-copy small{color:var(--fun-on-dark-soft)}.zodiac-podium.is-night .zodiac-podium-rank{background:var(--fun-gold);color:var(--fun-night)}.zodiac-top{margin:0 0 14px;padding:20px 16px 16px}.zodiac-top h2{margin-top:6px;font-family:var(--serif);font-size:21px}.zodiac-jump ul{list-style:none;padding:0;margin:0 0 12px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.zodiac-jump a{display:flex;flex-direction:column;align-items:center;gap:2px;min-height:60px;padding:6px 0;border-radius:16px;background:#fff;border:1px solid var(--fun-line);font-size:11px;font-weight:700;color:#4d3f57;transition:transform var(--relation-press-dur, .12s) ease}.zodiac-jump a:active{transform:var(--relation-press-chip, scale(.96))}.zodiac-jump a:focus-visible,.zodiac-podium a:focus-visible{outline:3px solid #aa8bd4;outline-offset:2px}.fun-zodiac .zodiac-card{border-radius:22px;border-left-width:1px;border-color:var(--fun-line);box-shadow:inset 4px 0 0 var(--tone-neutral-bar);scroll-margin-top:calc(var(--app-header-h) + 16px)}.fun-zodiac .zodiac-card[data-tone=good]{box-shadow:inset 4px 0 0 var(--tone-good-bar)}.fun-zodiac .zodiac-card[data-tone=caution]{box-shadow:inset 4px 0 0 var(--tone-caution-bar)}.zodiac-mark-wrap{position:relative;flex:0 0 auto;display:inline-flex}.fun-zodiac .zodiac-mark-wrap .zodiac-hanja{position:absolute;right:-6px;bottom:-4px;width:22px;height:22px;border-radius:8px;font-size:12px;box-shadow:0 0 0 2px #fff}.fun-zodiac .zodiac-card .today-chip{display:inline-flex;align-items:center}.fortune-hub-character{margin:14px 0 0}.fun-hub .fortune-hub-grid a{transition:transform var(--relation-press-dur, .12s) ease,border-color .18s ease,background-color .18s ease}.fun-hub .fortune-hub-grid a:active{transform:var(--relation-press-card, scale(.985))}.fun-hub .fortune-hub-grid a:focus-visible{outline:3px solid #aa8bd4;outline-offset:2px}.fortune-hub-marks{display:inline-flex;vertical-align:middle;margin-right:6px}.fortune-hub-grid .fortune-hub-marks svg{align-self:auto}.fortune-hub-marks svg+svg{margin-left:-6px}.fun-tarot .tarot-moon{display:flex;justify-content:center;line-height:1;margin:12px 0 8px}.fun-tarot .tarot-moon .fun-crescent{fill:#d8bf8e;transform:rotate(-18deg)}.fun-tarot .is-shuffling .fan-card{animation-duration:.62s;animation-delay:calc(var(--i, 0) * 45ms)}.fun-tarot .fan-card.chosen{animation-duration:.45s}.fun-tarot .has-selection .fan-card:not(.chosen){animation:none}.fun-tarot .tarot-reveal{animation-duration:.5s;animation-delay:.28s}.fun-tarot .tarot-flip{animation-duration:.9s;animation-delay:.5s}.fun-tarot .tarot-chips>button{transition:transform var(--relation-press-dur, .12s) ease}.fun-tarot .tarot-chips>button:active:not(:disabled){transform:var(--relation-press-chip, scale(.96))}.fun-tarot .tarot-chips>button:focus-visible,.fun-tarot .fan-card:focus-visible{outline:3px solid #ead9a8;outline-offset:3px}.fun-tarot-result .tarot-result-hero{position:relative;isolation:isolate;overflow:hidden;margin:0 0 8px;padding:22px 20px 20px;border-radius:30px;text-align:center;color:var(--fun-on-dark);background:radial-gradient(90% 60% at 50% 30%,rgba(211,177,106,.2),transparent 70%),linear-gradient(170deg,#241b3a,var(--fun-night-2) 55%,var(--fun-night));border:1px solid var(--relation-line-on-dark, rgba(234, 217, 168, .22))}.fun-tarot-result .tarot-result-hero>.eyebrow{color:var(--fun-gold-light);letter-spacing:2.4px}.fun-tarot-result .result-art{position:static;max-width:none;margin:12px auto 0;padding:0;background:none;border-radius:0}.fun-tarot-result .result-art .card-front{max-width:196px;border-radius:14px;box-shadow:0 22px 44px #0805148c,0 0 0 1px #ead9a859}.fun-tarot-result .oracle-badge{display:inline-flex;margin-top:12px}.fun-tarot-result .tarot-result-hero h1{margin-top:16px;font-family:var(--serif);font-size:30px;font-weight:700;line-height:1.3;letter-spacing:-.6px}.tarot-result-en{margin-top:4px;font-size:12px;letter-spacing:.8px;color:var(--fun-on-dark-soft)}.fun-tarot-result .result-keywords{list-style:none;padding:0;margin:12px 0 0;display:flex;flex-wrap:wrap;justify-content:center;gap:6px}.fun-tarot-result .result-keywords li{padding:4px 12px;border-radius:999px;border:1px solid rgba(234,217,168,.4);color:var(--fun-gold-light);font-size:13px;font-weight:600}.tarot-message{margin:16px 0 0;padding:14px 16px;border-radius:18px;background:#fbf6ef14;border:1px solid rgba(234,217,168,.25);text-align:left}.tarot-message .fun-kicker{color:var(--fun-gold-light)}.tarot-message p{margin-top:6px;font-family:var(--serif);font-size:16px;line-height:1.75;color:var(--fun-on-dark)}.tarot-hero-actions{display:grid;gap:10px;margin-top:16px}.tarot-hero-actions .button{width:100%;min-height:54px;border-radius:18px;gap:8px}.fun-tarot-result .tarot-share{background:#dcc59c;color:#252037;border-color:#e4cca4}.fun-tarot-result .tarot-share:hover{background:#e6d2ad}.fun-tarot-result .tarot-save{background:#fbf6ef14;color:var(--fun-on-dark);border-color:#ead9a866}.fun-tarot-result .tarot-save:disabled{opacity:1;color:var(--fun-gold-light)}.fun-tarot-result .result-copy{padding-top:22px}.fun-tarot-result .tarot-result-quote{font-family:var(--serif);font-size:22px;font-weight:700;line-height:1.5;letter-spacing:-.4px;margin:6px 0}.fun-tarot-result .reading-number{color:#8a6a2f}.tarot-free-next .followup-button{display:flex;align-items:center;gap:8px}@media(min-width:420px){.tarot-hero-actions{grid-template-columns:1fr 1fr}}.calendar-invite{margin:18px 0;padding:22px 20px;text-align:center}.calendar-invite h2{font-family:var(--serif);font-size:20px;line-height:1.5}.calendar-invite>p{margin:8px 0 16px;font-size:13px;line-height:1.75;color:var(--fun-on-dark-soft)}.fun-calendar .domain-tabs button,.fun-calendar .month-grid button,.fun-calendar .calendar-nav a{transition:transform var(--relation-press-dur, .12s) ease}.fun-calendar .domain-tabs button:active,.fun-calendar .month-grid button:active{transform:var(--relation-press-chip, scale(.96))}.fun-calendar .domain-tabs button:focus-visible,.fun-calendar .month-grid button:focus-visible,.fun-calendar .calendar-nav a:focus-visible{outline:3px solid #aa8bd4;outline-offset:2px}.fun-calendar .month-grid button.is-active small{color:var(--fun-violet-text);font-weight:700}.fun-calendar .month-heading h2{font-size:19px}.fun-calendar .calendar-error p{font-size:13px;line-height:1.7}.fun-reveal{animation:fun-fade-up .52s var(--fun-ease) both}@keyframes fun-rise{0%{opacity:0;transform:translateY(14px) scale(.9)}to{opacity:1;transform:none}}@keyframes fun-glow{0%{opacity:0;transform:scale(.7)}60%{opacity:1;transform:scale(1.06)}to{opacity:.85;transform:scale(1)}}@keyframes fun-fade-up{0%{transform:translateY(8px)}to{transform:none}}@media(prefers-reduced-motion:reduce){.fun-page *,.character-teaser,.fun-reveal{animation:none!important;transition:none!important}}:root[data-reduced-motion=true] .fun-page *,:root[data-reduced-motion=true] .character-teaser,:root[data-reduced-motion=true] .fun-reveal{animation:none!important;transition:none!important}@media(max-width:380px){.today-tiles{gap:8px}.today-tiles a{padding:12px 10px}.today-tile-head{gap:6px}.today-tile-head .today-tile-icon{width:28px;height:28px;border-radius:10px}.today-tile-label{font-size:13px;white-space:nowrap}.today-tiles strong{font-size:18px}}@media(min-width:420px){.character-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:370px){.character-parade-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px 2px}.character-name{font-size:25px}}
