.battle-overlay-canvas{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1000}.battle-overlay-hud{position:absolute;top:0;left:0;right:0;z-index:1001;pointer-events:none;padding:6px 10px;display:none;justify-content:space-between;align-items:flex-start;gap:6px;background:linear-gradient(180deg,rgba(8,8,16,.92) 0%,rgba(8,8,16,.4) 70%,transparent 100%)}.battle-overlay-hud.on{display:flex}.hud-health{flex:1;max-width:175px}.hud-name{font-size:9px;font-weight:700;margin-bottom:2px}.hud-name.blue{color:#8bf}.hud-name.red{color:#f86;text-align:right}.hud-bar{height:10px;background:#0a0a18;border:1px solid #334;border-radius:2px;overflow:hidden;position:relative}.hud-fill{height:100%;transition:width .3s;border-radius:1px}.hud-fill.blue{background:linear-gradient(90deg,#25c,#4af)}.hud-fill.red{background:linear-gradient(270deg,#c23,#f64);float:right}.hud-fill.low.blue{background:linear-gradient(90deg,#c22,#f44)}.hud-fill.low.red{background:linear-gradient(270deg,#c22,#f44)}.hud-shine{position:absolute;top:0;left:0;right:0;height:3px;background:#ffffff26}.hud-text{font-size:8px;color:#aab;margin-top:1px}.hud-vs{font-size:14px;font-weight:900;color:#fc0;text-shadow:0 0 10px rgba(255,200,0,.5);padding:0 4px}.battle-overlay-log{position:absolute;bottom:60px;left:50%;transform:translate(-50%);z-index:1001;pointer-events:none;display:flex;flex-direction:column;align-items:center;gap:4px}.log-item{background:#000c;color:#fff;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600;animation:logFadeIn .3s ease-out,logFadeOut .3s ease-in 2.5s forwards;text-align:center;white-space:nowrap}@keyframes logFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes logFadeOut{0%{opacity:1}to{opacity:0}}.battle-overlay-ko{position:fixed;top:0;left:50%;transform:translate(-50%);width:100%;max-width:480px;height:100vh;z-index:1002;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;background:#000000d9;opacity:0;pointer-events:none;transition:opacity .5s}.battle-overlay-ko.show{opacity:1;pointer-events:auto}.ko-title{font-size:64px;font-weight:900;color:#fc0;text-shadow:0 0 30px rgba(255,200,0,.8),0 4px 0 #cc8800,0 8px 20px rgba(0,0,0,.5);letter-spacing:8px;animation:koPulse .5s ease-out}@keyframes koPulse{0%{transform:scale(2);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.ko-winner{font-size:24px;font-weight:700}.ko-winner.blue{color:#8bf}.ko-winner.red{color:#f86}.ko-restart{margin-top:20px;padding:12px 24px;font-size:16px;font-weight:700;color:#fff;background:linear-gradient(135deg,#f97316,#ea580c);border:none;border-radius:8px;cursor:pointer;transition:transform .2s,box-shadow .2s}.ko-restart:hover{transform:scale(1.05);box-shadow:0 4px 20px #f9731680}.ko-restart:active{transform:scale(.98)}.ko-reveal{margin-top:20px;padding:14px 32px;font-size:18px;font-weight:700;color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:8px;cursor:pointer;transition:transform .2s,box-shadow .2s;animation:revealBtnPulse 1.5s ease-in-out infinite}.ko-reveal:hover{transform:scale(1.05);box-shadow:0 4px 20px #6366f180}.ko-reveal:active{transform:scale(.98)}@keyframes revealBtnPulse{0%,to{box-shadow:0 0 #6366f166}50%{box-shadow:0 0 0 10px #6366f100}}.intro-overlay{position:fixed;top:0;left:50%;transform:translate(-50%);width:100%;max-width:480px;height:100vh;z-index:1003;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#05050ff2;pointer-events:none;animation:introFadeIn .2s ease-out}@keyframes introFadeIn{0%{opacity:0}to{opacity:1}}.intro-scanlines{position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.08) 2px,rgba(0,0,0,.08) 4px);pointer-events:none}.intro-players{display:flex;width:100%;position:relative;overflow:hidden;height:280px;align-items:center;padding:0 16px}.intro-player{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;opacity:0;transition:all .5s cubic-bezier(.22,.97,.36,.97)}.intro-player.left{transform:translate(-100px)}.intro-player.right{transform:translate(100px)}.intro-player.show{opacity:1;transform:translate(0)}.intro-sprite-wrap{width:130px;height:130px;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.intro-sprite-wrap.blue{background:radial-gradient(circle,rgba(68,130,255,.25),transparent 70%);box-shadow:0 0 40px #4482ff40}.intro-sprite-wrap.red{background:radial-gradient(circle,rgba(220,50,50,.25),transparent 70%);box-shadow:0 0 40px #dc323240}.intro-sprite-canvas{width:110px;height:110px;image-rendering:pixelated;image-rendering:crisp-edges}.intro-element{font-size:28px;font-weight:900;margin-top:2px;text-shadow:0 0 15px currentColor}.intro-element.blue{color:#8bf}.intro-element.red{color:#f65}.intro-name{font-size:20px;font-weight:900;text-shadow:0 0 20px currentColor}.intro-name.blue{color:#8bf}.intro-name.red{color:#f65}.intro-tag{font-size:11px;color:#667;padding:3px 12px;border:1px solid #334;border-radius:20px;background:#ffffff0a}.intro-spark{position:absolute;left:50%;top:25%;bottom:25%;width:2px;background:linear-gradient(180deg,transparent,rgba(255,51,102,0),#ff3366,rgba(255,51,102,0),transparent);transform:translate(-50%);opacity:0;transition:opacity .3s}.intro-spark.show{opacity:1;animation:introSparkFlicker .15s infinite alternate}@keyframes introSparkFlicker{0%{opacity:.6;filter:blur(0px)}to{opacity:1;filter:blur(1px)}}.intro-vs{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(0);font-size:32px;font-weight:900;color:#f36;text-shadow:0 0 30px rgba(255,51,102,.5),0 0 60px rgba(255,51,102,.3);z-index:2;transition:transform .35s cubic-bezier(.22,.97,.36,.97)}.intro-vs.show{transform:translate(-50%,-50%) scale(1)}.intro-fight{margin-top:24px;font-size:44px;font-weight:900;color:#fc0;text-shadow:0 0 30px rgba(255,204,0,.5),0 0 60px rgba(255,204,0,.3);opacity:0;transform:scale(2.5);transition:all .3s cubic-bezier(.22,.97,.36,.97)}.intro-fight.show{opacity:1;transform:scale(1)}.battle-page-wrapper{width:100%;max-width:480px;margin:0 auto;position:relative;min-height:100vh;overflow:hidden}.saju-screen{width:100%;position:relative;padding-bottom:var(--bottom-nav-height)}.versus-header{display:flex;align-items:center;justify-content:center;gap:16px;padding:28px 16px 20px;background:linear-gradient(180deg,#14142a,#0f0f1a)}.vs-player{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1}.vs-avatar{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:28px}.vs-avatar.blue{background:linear-gradient(135deg,#1a3a6e,#2a6acc);box-shadow:0 0 20px #2266cc45}.vs-avatar.red{background:linear-gradient(135deg,#6e1a1a,#cc3a2a);box-shadow:0 0 20px #c333}.vs-name{font-weight:900;font-size:16px}.vs-name.blue{color:#8bf}.vs-name.red{color:#f86}.vs-sub{font-size:11px;color:#667}.vs-badge{font-size:28px;font-weight:900;color:#f36;text-shadow:0 0 15px rgba(255,51,102,.27)}.total-section{margin:16px;background:linear-gradient(135deg,#1a1a38,#161630);border:1px solid #2a2a55;border-radius:14px;padding:20px;text-align:center}.total-label{font-size:12px;color:#778;margin-bottom:10px}.total-scores{display:flex;justify-content:center;align-items:center;gap:20px}.total-val{font-size:32px;font-weight:900}.total-val.blue{color:#8bf}.total-val.red{color:#f86}.total-vs{font-size:14px;color:#556;font-weight:700}.stats-battle{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 16px;margin-top:8px}.stat-card{background:#161628;border:1px solid #222244;border-radius:12px;padding:14px;text-align:center;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;border-radius:12px 12px 0 0}.stat-card.win:before{background:linear-gradient(90deg,#2c6,#4f8)}.stat-card.lose:before{background:linear-gradient(90deg,#c33,#f64)}.stat-card.draw-card:before{background:linear-gradient(90deg,#ca3,#fd4)}.stat-label{font-size:11px;color:#778;margin-bottom:8px}.stat-scores{display:flex;justify-content:center;align-items:center;gap:12px}.stat-val{font-size:22px;font-weight:900}.stat-val.blue{color:#8bf}.stat-val.red{color:#f86}.stat-vs{font-size:11px;color:#445;font-weight:700}.saju-screen .summary-section{margin:14px 16px;background:#161628;border:1px solid #222244;border-radius:12px;padding:14px}.saju-screen .summary-title{font-size:12px;font-weight:700;color:#aab;margin-bottom:8px;display:flex;align-items:center;gap:6px}.saju-screen .summary-text{font-size:12px;color:#889;line-height:1.55}.chemistry-section{margin:14px 16px;background:linear-gradient(135deg,#1a1a38,#161630);border:1px solid #2a2a55;border-radius:14px;padding:16px}.chemistry-section.match{border-color:#4f8;box-shadow:0 0 20px #44ff881a}.chemistry-section.rival{border-color:#f64;box-shadow:0 0 20px #ff66441a}.chemistry-type{font-size:14px;font-weight:900;color:#fc0}.chemistry-score{font-size:20px;font-weight:900;color:#f36}.chemistry-desc{font-size:12px;color:#aab;line-height:1.5;margin-bottom:6px}.chemistry-relation{font-size:11px;color:#889;line-height:1.5}.result-bottom-actions{padding:24px 16px;text-align:center}.home-btn{width:100%;max-width:320px;padding:14px 24px;font-size:16px;font-weight:700;color:#fff;background:linear-gradient(135deg,#f97316,#ea580c);border:none;border-radius:12px;cursor:pointer;transition:transform .2s,box-shadow .2s}.home-btn:hover{transform:scale(1.02);box-shadow:0 4px 20px #f9731666}.home-btn:active{transform:scale(.98)}.saju-screen .loading-center{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;min-height:60vh;color:#aab}.saju-screen .error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:60vh;text-align:center;color:#aab}.saju-screen .error-state span{font-size:48px}.score-hidden{color:#334!important;letter-spacing:2px}.score-reveal{animation:scoreReveal .6s ease-out}@keyframes scoreReveal{0%{opacity:0;transform:scale(1.8);filter:blur(4px)}60%{opacity:1;transform:scale(1.05);filter:blur(0)}to{transform:scale(1)}}.mypage-screen{min-height:100vh;background:linear-gradient(180deg,#1a1a2e,#16213e);padding:16px;padding-bottom:calc(16px + var(--bottom-nav-height));max-width:480px;margin:0 auto}.loading-center,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:16px;color:#a1a1aa}.mypage-header{position:relative;display:flex;align-items:center;gap:16px;padding:20px;background:#ffffff0d;border-radius:16px;margin-bottom:16px}.logout-mini-btn{position:absolute;top:12px;right:12px;padding:6px 12px;font-size:11px;color:#ef4444;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;cursor:pointer;transition:all .2s}.logout-mini-btn:hover{background:#ef444433}.profile-avatar{width:72px;height:72px;border-radius:50%;border:3px solid #888;display:flex;align-items:center;justify-content:center;background:#ffffff1a;overflow:hidden}.profile-avatar img{width:100%;height:100%;object-fit:cover}.avatar-emoji{font-size:36px}.profile-nickname{font-size:22px;font-weight:700;color:#fff;margin:0 0 6px}.profile-saju{display:flex;align-items:center;gap:8px;margin-bottom:6px}.day-master{font-size:14px;font-weight:600}.element-badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:12px}.profile-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:#71717a}.provider-badge{background:#ffffff1a;padding:2px 6px;border-radius:4px;font-size:10px;text-transform:uppercase}.rice-card{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:linear-gradient(135deg,#eab30826,#eab3080d);border:1px solid rgba(234,179,8,.3);border-radius:12px;margin-bottom:16px}.rice-info{display:flex;align-items:center;gap:12px}.rice-icon{font-size:32px}.rice-details{display:flex;flex-direction:column}.rice-label{font-size:12px;color:#a1a1aa}.rice-amount{font-size:24px;font-weight:700;color:#eab308}.charge-btn{background:linear-gradient(135deg,#eab308,#ca8a04);color:#000;border:none;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s}.charge-btn:hover{transform:scale(1.05)}.daily-bonus-card{background:linear-gradient(135deg,#eab3081a,#eab30805);border:1px solid rgba(234,179,8,.2);border-radius:12px;padding:16px;margin-bottom:16px}.bonus-title{font-size:15px;font-weight:600;color:#eab308;margin:0 0 12px}.bonus-list{display:flex;flex-direction:column;gap:10px}.bonus-item{display:flex;align-items:center;justify-content:space-between;padding:12px;background:#ffffff0d;border-radius:8px;transition:opacity .2s}.bonus-item.claimed{opacity:.6}.bonus-info{display:flex;align-items:center;gap:10px}.bonus-icon{font-size:20px}.bonus-text{display:flex;flex-direction:column;gap:2px}.bonus-name{font-size:13px;color:#fff;font-weight:500}.bonus-amount{font-size:12px;color:#eab308;font-weight:600}.bonus-claimed{font-size:12px;color:#22c55e;font-weight:500}.bonus-claim-btn{background:linear-gradient(135deg,#eab308,#ca8a04);color:#000;border:none;padding:8px 16px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:transform .2s}.bonus-claim-btn:hover{transform:scale(1.05)}.bonus-claim-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.bonus-claim-btn.fortune{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff}.stats-card{background:#ffffff0d;border-radius:12px;padding:16px;margin-bottom:16px}.section-title{font-size:16px;font-weight:600;color:#fff;margin:0 0 12px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}.stat-item{display:flex;flex-direction:column;align-items:center;padding:12px 8px;background:#ffffff0d;border-radius:8px}.stat-value{font-size:20px;font-weight:700;color:#fff}.stat-item.win .stat-value{color:#22c55e}.stat-item.lose .stat-value{color:#ef4444}.stat-item.draw .stat-value{color:#eab308}.stat-label{font-size:11px;color:#71717a;margin-top:4px}.win-rate{display:flex;align-items:center;gap:12px}.win-rate-label{font-size:12px;color:#a1a1aa;width:32px}.win-rate-bar{flex:1;height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden}.win-rate-fill{height:100%;background:linear-gradient(90deg,#22c55e,#16a34a);border-radius:4px;transition:width .5s ease}.win-rate-value{font-size:14px;font-weight:600;color:#22c55e;width:40px;text-align:right}.tab-nav{display:flex;gap:4px;background:#ffffff0d;border-radius:12px;padding:4px;margin-bottom:16px}.tab-btn{flex:1;background:transparent;border:none;color:#71717a;padding:10px 12px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.tab-btn.active{background:#ffffff1a;color:#fff}.tab-content{min-height:200px}.saju-card{background:#ffffff0d;border-radius:12px;padding:16px;margin-bottom:16px}.saju-card.empty{text-align:center;cursor:pointer}.card-title{font-size:15px;font-weight:600;color:#fff;margin:0 0 12px}.saju-card-v2{background:#ffffff0d;border-radius:12px;padding:16px;margin-bottom:16px;cursor:pointer;transition:background .2s}.saju-card-v2:hover{background:#ffffff14}.saju-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.saju-detail-link{font-size:12px;color:#71717a;transition:color .2s}.saju-card-v2:hover .saju-detail-link{color:#f97316}.saju-mini-pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:14px}.mini-pillar{display:flex;flex-direction:column;align-items:center;gap:4px}.mini-pillar.unknown{opacity:.4}.mini-pillar.highlight .mp-stem,.mini-pillar.highlight .mp-branch{box-shadow:0 0 0 1.5px #f9731666}.mp-label{font-size:11px;color:#71717a;font-weight:500}.mp-stem,.mp-branch{width:100%;display:flex;flex-direction:column;align-items:center;padding:6px 4px;border-radius:8px;background:#ffffff0a}.mp-hanja{font-size:20px;font-weight:700;line-height:1.2}.mp-hangul{font-size:10px;opacity:.7}.saju-mini-info{margin-bottom:12px}.saju-tags{display:flex;flex-wrap:wrap;gap:6px}.saju-tag{font-size:11px;font-weight:500;color:#a1a1aa;padding:3px 8px;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:#ffffff08}.saju-tag.yongshin{color:#3b82f6;border-color:#3b82f64d;background:#3b82f614}.saju-mini-stats{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;padding-top:12px;border-top:1px solid rgba(255,255,255,.06)}.mini-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.mini-stat-icon{font-size:14px}.mini-stat-score{font-size:14px;font-weight:700}.mini-stat-label{font-size:9px;color:#52525b}.saju-pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}.pillar{display:flex;flex-direction:column;align-items:center;padding:10px 8px;background:#ffffff0d;border-radius:8px}.pillar.unknown{opacity:.5}.pillar-label{font-size:10px;color:#71717a;margin-bottom:4px}.pillar-stem{font-size:18px;font-weight:700;color:#fff}.pillar-branch{font-size:16px;color:#a1a1aa}.saju-summary{font-size:13px;color:#a1a1aa;line-height:1.6}.saju-summary p{margin:4px 0}.saju-summary strong{color:#fff}.empty-text{color:#71717a;font-size:14px;margin:16px 0}.recent-activities{background:#ffffff0d;border-radius:12px;padding:16px}.activity-list{display:flex;flex-direction:column;gap:8px}.activity-item{display:flex;align-items:center;gap:12px;padding:12px;background:#ffffff0d;border-radius:8px;cursor:pointer;transition:background .2s}.activity-item:hover{background:#ffffff14}.activity-icon{font-size:24px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#ffffff1a;border-radius:8px}.activity-info{flex:1;display:flex;flex-direction:column;gap:2px}.activity-name{font-size:14px;font-weight:600;color:#fff}.activity-detail{font-size:12px;color:#a1a1aa}.activity-date{font-size:12px;color:#71717a}.show-more-btn{width:100%;margin-top:12px;padding:10px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#a1a1aa;font-size:13px;cursor:pointer;transition:all .2s}.show-more-btn:hover{background:#ffffff1a;color:#fff}.recent-battles{background:#ffffff0d;border-radius:12px;padding:16px}.battle-list{display:flex;flex-direction:column;gap:8px}.battle-list.full{gap:12px}.battle-item{display:flex;align-items:center;justify-content:space-between;padding:12px;background:#ffffff0d;border-radius:8px;border-left:3px solid #71717a;cursor:pointer;transition:background .2s}.battle-item:hover{background:#ffffff14}.battle-item.win{border-left-color:#22c55e}.battle-item.lose{border-left-color:#ef4444}.battle-item.draw{border-left-color:#eab308}.battle-item.pending{border-left-color:#3b82f6}.battle-players{display:flex;align-items:center;gap:8px}.player{font-size:13px;color:#fff}.vs{font-size:11px;color:#71717a;font-weight:600}.status-badge{font-size:11px;font-weight:600;padding:4px 10px;border-radius:12px}.status-badge.win{background:#22c55e33;color:#22c55e}.status-badge.lose{background:#ef444433;color:#ef4444}.status-badge.draw{background:#eab30833;color:#eab308}.status-badge.pending{background:#3b82f633;color:#3b82f6}.battle-main{width:100%}.battle-main .battle-players{justify-content:center;margin-bottom:8px}.player-info{display:flex;flex-direction:column;align-items:center;min-width:80px}.player-name{font-size:14px;font-weight:600;color:#fff}.player-element{font-size:11px}.battle-meta{display:flex;justify-content:space-between;align-items:center}.battle-date{font-size:12px;color:#71717a}.transaction-list{display:flex;flex-direction:column;gap:8px}.transaction-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#ffffff0d;border-radius:8px;border-left:3px solid #71717a}.transaction-item.plus{border-left-color:#22c55e}.transaction-item.minus{border-left-color:#ef4444}.tx-info{display:flex;flex-direction:column;gap:4px}.tx-desc{font-size:14px;color:#fff}.tx-date{font-size:11px;color:#71717a}.tx-amount{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.tx-amount span.plus{color:#22c55e;font-size:16px;font-weight:700}.tx-amount span.minus{color:#ef4444;font-size:16px;font-weight:700}.tx-balance{font-size:11px;color:#71717a}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:#71717a}.empty-state span{font-size:48px;margin-bottom:12px}.empty-state p{margin-bottom:16px}.primary-btn{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s}.secondary-btn{background:#ffffff1a;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer}.danger-btn{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.3);padding:12px 24px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer}.mypage-footer{display:flex;gap:12px;margin-top:24px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}.mypage-footer button{flex:1}.legal-links{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:32px;padding:16px 0;border-top:1px solid rgba(255,255,255,.1)}.legal-links a{color:#71717a;font-size:12px;text-decoration:none;transition:color .2s}.legal-links a:hover{color:#a1a1aa}.legal-links .divider{color:#3f3f46;font-size:12px}.withdraw-section{display:flex;justify-content:center;margin-top:32px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}.withdraw-btn{padding:8px 16px;background:transparent;border:1px solid #52525b;border-radius:8px;color:#71717a;font-size:13px;cursor:pointer;transition:all .2s}.withdraw-btn:hover{border-color:#ef4444;color:#ef4444}.withdraw-btn:disabled{opacity:.5;cursor:not-allowed}.name-page{min-height:100vh;background:linear-gradient(180deg,#0f0f23,#1a1a2e);padding:16px;padding-bottom:calc(16px + var(--bottom-nav-height));max-width:480px;margin:0 auto}.name-header{display:flex;align-items:center;gap:16px;margin-bottom:20px}.name-header h1{font-size:24px;font-weight:700;color:#fff;margin:0}.name-header .back-btn{background:#ffffff1a;border:none;color:#a1a1aa;padding:8px 16px;border-radius:8px;font-size:14px;cursor:pointer;transition:all .2s}.name-header .back-btn:hover{background:#ffffff26;color:#fff}.step-indicator{display:flex;align-items:center;justify-content:center;gap:8px;padding:20px 16px}.step{display:flex;flex-direction:column;align-items:center;gap:4px}.step-num{width:32px;height:32px;border-radius:50%;background:#ffffff1a;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;color:#666;transition:all .3s}.step.active .step-num{background:#8b5cf6;color:#fff}.step.done .step-num{background:#22c55e;color:#fff}.step-label{font-size:12px;color:#666}.step.active .step-label,.step.done .step-label{color:#fff}.step-line{width:40px;height:2px;background:#ffffff1a;margin-bottom:20px}.input-section,.select-section,.confirm-section{background:#ffffff0d;border-radius:16px;padding:24px}.section-title{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:600;margin-bottom:24px}.title-icon{font-size:24px}.input-group{margin-bottom:16px}.input-group label{display:block;font-size:14px;color:#999;margin-bottom:8px}.input-row{display:flex;gap:12px;margin-bottom:16px}.input-group.half{flex:1;margin-bottom:0}.hanja-help-box{display:flex;gap:12px;padding:16px;background:#8b5cf61a;border:1px solid rgba(139,92,246,.2);border-radius:12px;margin-bottom:20px}.hanja-help-icon{font-size:24px;flex-shrink:0}.hanja-help-text{font-size:13px;color:#999}.hanja-help-text strong{display:block;color:#fff;margin-bottom:4px;font-size:14px}.hanja-help-text p{margin:2px 0}.hanja-mode-toggle{display:flex;gap:8px;margin-bottom:16px}.mode-btn{flex:1;padding:10px 0;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#999;font-size:14px;cursor:pointer;transition:all .2s}.mode-btn:hover{background:#ffffff14;color:#ccc}.mode-btn.active{background:#8b5cf626;border-color:#8b5cf6;color:#fff;font-weight:600}.surname-input-row{display:flex;gap:8px}.surname-hanja-display{margin-top:8px;font-size:14px;color:#999}.surname-hanja-display strong{color:#8b5cf6;font-size:18px;margin-left:4px}.inline-hanja-section{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:16px;margin-bottom:20px}.inline-hanja-header{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;margin-bottom:16px}.inline-hanja-list{display:flex;flex-direction:column;gap:16px}.inline-hanja-group{background:#ffffff05;border-radius:8px;padding:12px}.inline-char-label{display:flex;align-items:center;gap:8px;margin-bottom:10px}.inline-char-label .korean-char{font-size:20px;font-weight:600;color:#fff}.inline-char-label .selected-hanja{font-size:16px;color:#8b5cf6}.inline-hanja-options{display:flex;flex-wrap:wrap;gap:8px;max-height:240px;overflow-y:auto;padding-right:4px}.inline-hanja-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 14px;background:#ffffff0d;border:2px solid transparent;border-radius:10px;cursor:pointer;transition:all .2s;min-width:70px}.inline-hanja-btn:hover{background:#8b5cf61a;border-color:#8b5cf64d}.inline-hanja-btn.selected{background:#8b5cf633;border-color:#8b5cf6}.inline-hanja-btn .hanja-char{font-size:24px;font-weight:600;color:#fff}.inline-hanja-btn .hanja-info{display:flex;flex-direction:column;align-items:center;gap:2px}.inline-hanja-btn .hanja-meaning{font-size:11px;color:#999;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60px}.inline-hanja-btn .hanja-element{font-size:10px;padding:2px 6px;border-radius:4px;font-weight:500}.hanja-list-options{display:flex;flex-direction:column;gap:4px;max-height:240px;overflow-y:auto;padding-right:4px}.hanja-list-item{display:flex;align-items:center;gap:12px;padding:10px 14px;background:#ffffff0d;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .15s;text-align:left;width:100%}.hanja-list-item:hover{background:#8b5cf61a}.hanja-list-item.selected{background:#8b5cf633;border-color:#8b5cf6}.hanja-list-char{font-size:22px;font-weight:600;color:#fff;min-width:32px;text-align:center}.hanja-list-meaning{font-size:14px;color:#aaa}.hanja-list-item.selected .hanja-list-meaning{color:#c4b5fd}.inline-hanja-loading{text-align:center;color:#666;padding:20px}.hanja-select-list{display:flex;flex-direction:column;gap:12px}.hanja-select-row{display:flex;align-items:center;gap:12px}.hanja-select-row .korean-label{font-size:20px;font-weight:600;color:#fff;min-width:32px;text-align:center}.hanja-select-row .no-hanja{color:#ef4444;font-size:14px}.hanja-option-item{display:flex;align-items:center;gap:8px}.hanja-option-item .hanja-char{font-size:18px;font-weight:600;min-width:24px}.hanja-option-item .hanja-meaning{flex:1;font-size:14px;color:#999}.hanja-option-item .hanja-strokes{font-size:12px;color:#666}.hanja-preview{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:16px;padding:12px;background:#8b5cf61a;border-radius:8px}.hanja-preview .preview-label{font-size:13px;color:#999}.hanja-preview .preview-name{font-size:20px;font-weight:600;color:#8b5cf6}.hanja-preview .preview-korean{font-size:14px;color:#666}.helper-text{font-size:13px;color:#666;margin:16px 0;text-align:center}.error-message{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444;padding:12px;border-radius:8px;margin-bottom:16px;font-size:14px}.input-hint{margin-top:8px;font-size:12px;color:#666}.surname-display{display:flex;align-items:center;gap:16px;padding:16px;background:#ffffff0d;border-radius:12px;margin-bottom:20px}.surname-display .label{font-size:14px;color:#666}.surname-hanja{display:flex;align-items:baseline;gap:8px}.surname-hanja .hanja{font-size:32px;font-weight:600}.surname-hanja .korean{font-size:14px;color:#999}.hanja-select-group{margin-bottom:24px}.char-label{font-size:14px;color:#999;margin-bottom:8px}.hanja-options{display:flex;gap:8px}.hanja-option{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px 8px;background:#ffffff0d;border:2px solid transparent;border-radius:12px;cursor:pointer;transition:all .2s}.hanja-option:hover{background:#ffffff1a}.hanja-option.selected{border-color:#8b5cf6;background:#8b5cf61a}.hanja-char{font-size:28px;font-weight:600}.hanja-meaning{font-size:12px;color:#999}.hanja-element{font-size:10px;padding:2px 6px;border-radius:4px;font-weight:500}.hanja-element.el-목{background:#22c55e33;color:#22c55e}.hanja-element.el-화{background:#ef444433;color:#ef4444}.hanja-element.el-토{background:#a1620733;color:#d97706}.hanja-element.el-금{background:#eab30833;color:#eab308}.hanja-element.el-수{background:#3b82f633;color:#3b82f6}.confirm-card{background:linear-gradient(135deg,#8b5cf633,#3b82f633);border:1px solid rgba(139,92,246,.3);border-radius:16px;padding:24px;text-align:center;margin-bottom:20px}.confirm-name{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.confirm-name .korean-name{font-size:32px;font-weight:700}.confirm-name .hanja-name{font-size:24px;color:#8b5cf6}.confirm-details{text-align:left}.detail-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.1)}.detail-row .label{color:#999}.analyzing-state{display:flex;flex-direction:column;align-items:center;gap:16px;padding:40px 0}.analyzing-state .analyze-sub{font-size:13px;color:#999;margin-top:-8px;animation:fadeIn .5s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.name-result-page .name-content{padding-bottom:var(--bottom-nav-height)}.result-summary-card{background:linear-gradient(135deg,#8b5cf64d,#3b82f633);border-radius:20px;padding:24px;text-align:center;margin-bottom:20px}.name-display{margin-bottom:20px}.name-display .korean{display:block;font-size:28px;font-weight:700;margin-bottom:4px}.result-hero-card{background:linear-gradient(135deg,#8b5cf626,#3b82f61a);border:1px solid rgba(139,92,246,.3);border-radius:24px;padding:28px 20px;margin-bottom:20px;text-align:center}.hero-name-area{margin-bottom:20px}.hero-hanja-row{display:flex;justify-content:center;gap:16px;margin-bottom:8px}.hero-hanja-char{font-size:42px;font-weight:300;color:#fff;text-shadow:0 0 20px rgba(139,92,246,.5)}.hero-korean{font-size:18px;color:#a78bfa;letter-spacing:8px;margin-left:8px}.hero-nickname-area{margin-bottom:20px}.hero-nickname-badge{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#8b5cf6,#6366f1);padding:14px 32px;border-radius:30px;margin-bottom:12px;box-shadow:0 4px 20px #8b5cf666}.hero-nickname-icon{font-size:24px}.hero-nickname-text{font-size:22px;font-weight:700;color:#fff;letter-spacing:2px}.hero-nickname-desc{font-size:14px;color:#a78bfa;margin:0 0 8px;line-height:1.4}.hero-quote{font-size:14px;color:#999;margin:0 0 14px;line-height:1.5;font-style:italic}.hero-nickname-tags{display:flex;justify-content:center;gap:8px}.nickname-element-tag{font-size:12px;padding:4px 12px;border-radius:12px;font-weight:600}.nickname-element-tag.el-목{background:#22c55e33;color:#22c55e}.nickname-element-tag.el-화{background:#ef444433;color:#ef4444}.nickname-element-tag.el-토{background:#a1620733;color:#d97706}.nickname-element-tag.el-금{background:#eab30833;color:#eab308}.nickname-element-tag.el-수{background:#3b82f633;color:#3b82f6}.nickname-type-tag{font-size:12px;padding:4px 12px;border-radius:12px;font-weight:500;background:#8b5cf633;color:#a78bfa}.hero-keywords{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-bottom:20px}.hero-keyword-tag{background:#ffffff14;border:1px solid rgba(255,255,255,.15);padding:6px 14px;border-radius:20px;font-size:13px;color:#ddd}.hero-elements-row{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.hero-element-chip{display:flex;align-items:center;gap:4px;padding:8px 14px;border-radius:20px;font-size:13px;font-weight:500}.hero-element-chip.el-목{background:#22c55e26;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.hero-element-chip.el-화{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.hero-element-chip.el-토{background:#a1620726;color:#d97706;border:1px solid rgba(161,98,7,.3)}.hero-element-chip.el-금{background:#eab30826;color:#eab308;border:1px solid rgba(234,179,8,.3)}.hero-element-chip.el-수{background:#3b82f626;color:#3b82f6;border:1px solid rgba(59,130,246,.3)}.he-icon{font-size:14px}.he-name{font-weight:600}.he-count{font-size:11px;opacity:.8}.result-section{background:#ffffff0d;border-radius:16px;margin-bottom:12px;overflow:hidden}.section-header{display:flex;align-items:center;gap:12px;padding:16px;cursor:pointer;-webkit-user-select:none;user-select:none}.section-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#8b5cf626;border-radius:8px;font-size:16px;flex-shrink:0;line-height:1}.section-title{flex:1;font-size:15px;font-weight:600;margin:0;color:#fff;line-height:32px}.toggle-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#ffffff14;border-radius:6px;color:#888;font-size:10px;flex-shrink:0}.result-section.always-open .section-header{cursor:default}.section-content{padding:0 16px 16px}.characters-scroll{display:flex;gap:12px;overflow-x:auto;padding-bottom:12px;margin-bottom:16px}.character-card{flex-shrink:0;width:140px;background:#ffffff0d;border-radius:12px;padding:16px;text-align:center}.char-header{margin-bottom:8px}.char-hanja{display:block;font-size:36px;font-weight:600}.char-korean{font-size:14px;color:#999}.char-reading{font-size:12px;color:#8b5cf6;margin-bottom:8px}.char-symbolism{font-size:11px;color:#999;line-height:1.4;margin-bottom:8px}.char-meta{display:flex;justify-content:center;gap:8px;align-items:center}.element-tag{font-size:10px;padding:2px 6px;border-radius:4px}.element-tag.el-목{background:#22c55e33;color:#22c55e}.element-tag.el-화{background:#ef444433;color:#ef4444}.element-tag.el-토{background:#a1620733;color:#d97706}.element-tag.el-금{background:#eab30833;color:#eab308}.element-tag.el-수{background:#3b82f633;color:#3b82f6}.stroke-count{font-size:10px;color:#666}.characters-list{display:flex;flex-direction:column;gap:20px;margin-bottom:20px}.character-card-v2{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:20px}.char-header-line{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.08)}.char-title{font-size:18px;font-weight:600;color:#fff}.char-title:first-letter{font-size:24px}.char-section{margin-bottom:16px}.char-section:last-child{margin-bottom:0}.char-section-label{font-size:13px;font-weight:600;color:#8b5cf6;margin-bottom:8px;display:flex;align-items:center;gap:6px}.char-section-label:before{content:"";width:3px;height:14px;background:#8b5cf6;border-radius:2px}.char-section-text{font-size:14px;line-height:1.8;color:#ccc;margin:0;padding-left:9px}.char-meta-v2{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.element-badge{font-size:12px;padding:4px 10px;border-radius:6px;font-weight:500}.element-badge.el-목{background:#22c55e33;color:#22c55e}.element-badge.el-화{background:#ef444433;color:#ef4444}.element-badge.el-토{background:#a1620733;color:#d97706}.element-badge.el-금{background:#eab30833;color:#eab308}.element-badge.el-수{background:#3b82f633;color:#3b82f6}.stroke-badge{font-size:11px;color:#666}.keyword-chip{font-size:12px;padding:6px 12px;background:#8b5cf626;border:1px solid rgba(139,92,246,.3);border-radius:20px;color:#a78bfa}.char-life-app{display:flex;flex-direction:column;gap:10px;background:#ffffff05;border-radius:12px;padding:14px}.life-app-item{display:flex;align-items:flex-start;gap:10px}.life-app-icon{font-size:14px;flex-shrink:0;margin-top:2px}.life-app-label{font-size:12px;font-weight:600;color:#999;min-width:36px;flex-shrink:0}.life-app-text{font-size:13px;color:#bbb;line-height:1.5}.combined-meaning{background:#8b5cf61a;border-radius:12px;padding:16px}.combined-meaning .label{display:block;font-size:12px;color:#8b5cf6;margin-bottom:8px}.combined-meaning p{margin:0;font-size:14px;line-height:1.6}.life-card{background:#ffffff0d;border-radius:12px;padding:16px;margin-bottom:12px}.life-icon{font-size:24px;margin-bottom:4px}.life-label{font-size:14px;font-weight:600;color:#8b5cf6;margin-bottom:8px}.life-card p{margin:0;font-size:13px;color:#ccc;line-height:1.5}.elements-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:16px}.element-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 4px;background:#ffffff08;border:2px solid transparent;border-radius:12px;text-align:center;opacity:.4}.element-card.active{background:#ffffff14;opacity:1}.element-card.active .el-name.el-목{color:#22c55e}.element-card.active .el-name.el-화{color:#ef4444}.element-card.active .el-name.el-토{color:#d97706}.element-card.active .el-name.el-금{color:#eab308}.element-card.active .el-name.el-수{color:#3b82f6}.el-icon{font-size:20px}.el-name{font-size:12px;font-weight:600;color:#666}.el-count{font-size:14px;font-weight:700;color:#999}.element-card.active .el-count{color:#fff}.element-char-list{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.element-char-item{background:#ffffff08;border-radius:12px;padding:14px 16px}.ec-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.ec-hanja{font-size:16px;font-weight:600;color:#fff}.ec-element{font-size:12px;padding:4px 10px;border-radius:6px;font-weight:500}.ec-element.el-목{background:#22c55e33;color:#22c55e}.ec-element.el-화{background:#ef444433;color:#ef4444}.ec-element.el-토{background:#a1620733;color:#d97706}.ec-element.el-금{background:#eab30833;color:#eab308}.ec-element.el-수{background:#3b82f633;color:#3b82f6}.ec-reason{font-size:13px;line-height:1.6;color:#aaa;margin:0}.element-flow-box{background:#8b5cf614;border:1px solid rgba(139,92,246,.2);border-radius:12px;padding:16px}.ef-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.ef-title{font-size:14px;font-weight:600}.ef-type{font-size:12px;padding:4px 10px;border-radius:6px;font-weight:500}.ef-type.type-상생{background:#22c55e33;color:#22c55e}.ef-type.type-상극{background:#ef444433;color:#ef4444}.ef-type.type-균형{background:#3b82f633;color:#3b82f6}.ef-type.type-편중{background:#eab30833;color:#eab308}.ef-summary{margin-bottom:10px}.ef-formula{font-size:13px;color:#8b5cf6;font-weight:500}.ef-desc{font-size:14px;line-height:1.7;color:#ccc;margin:0 0 12px}.ef-advice{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:#999}.ef-advice .advice-icon{flex-shrink:0}.el-count{font-size:14px;font-weight:700}.el-personality{font-size:9px;color:#999;line-height:1.3}.harmony-box{background:#8b5cf61a;border-radius:12px;padding:16px}.harmony-type{display:flex;align-items:center;gap:8px;margin-bottom:8px}.harmony-type .label{font-size:12px;color:#999}.type-badge{padding:2px 8px;border-radius:8px;font-size:12px;font-weight:600}.type-badge.harmony-상생{background:#22c55e33;color:#22c55e}.type-badge.harmony-상극{background:#ef444433;color:#ef4444}.type-badge.harmony-균형{background:#3b82f633;color:#3b82f6}.type-badge.harmony-편중{background:#eab30833;color:#eab308}.harmony-desc{font-size:13px;color:#ccc;margin:8px 0;line-height:1.5}.harmony-advice{display:flex;align-items:flex-start;gap:8px;font-size:12px;color:#8b5cf6}.ogyeok-avg{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#ffffff0d;border-radius:12px;margin-bottom:16px}.ogyeok-avg .label{color:#999}.ogyeok-avg .score{font-size:24px;font-weight:700;color:#8b5cf6}.ogyeok-list{display:flex;flex-direction:column;gap:12px}.ogyeok-item{background:#ffffff08;border-radius:12px;padding:12px}.ogyeok-header{display:flex;justify-content:space-between;margin-bottom:8px}.ogyeok-name{font-weight:600}.ogyeok-strokes{font-size:12px;color:#666}.ogyeok-bar{height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden;margin-bottom:8px}.ogyeok-fill{height:100%;border-radius:4px;transition:width .5s ease-out}.ogyeok-info{display:flex;align-items:center;gap:8px}.ogyeok-label{font-size:11px;padding:2px 6px;border-radius:4px}.ogyeok-label.label-good{background:#22c55e33;color:#22c55e}.ogyeok-label.label-bad{background:#ef444433;color:#ef4444}.stroke-breakdown{background:#ffffff08;border-radius:12px;padding:16px;margin-bottom:16px}.breakdown-title{font-size:13px;color:#999;margin-bottom:12px}.breakdown-chars{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.breakdown-char{display:flex;flex-direction:column;align-items:center;gap:4px}.breakdown-char .bc-hanja{font-size:28px;font-weight:600;color:#fff}.breakdown-char .bc-strokes{font-size:12px;color:#8b5cf6}.breakdown-total{display:flex;flex-direction:column;align-items:center;gap:4px;margin-left:auto;padding-left:16px;border-left:1px solid rgba(255,255,255,.1)}.breakdown-total .bt-label{font-size:12px;color:#666}.breakdown-total .bt-value{font-size:18px;font-weight:600;color:#fff}.ogyeok-calc-list{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.ogyeok-calc-item{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;background:#ffffff08;border-radius:10px}.oc-left{display:flex;align-items:center;gap:12px}.oc-name{font-weight:600;font-size:14px;min-width:40px}.oc-formula{font-size:12px;color:#888;font-family:monospace}.oc-right{display:flex;align-items:center;gap:8px}.oc-strokes{font-size:13px;color:#aaa;min-width:36px;text-align:right}.oc-element{font-size:11px;padding:3px 8px;border-radius:4px;font-weight:500}.oc-element.el-목{background:#22c55e33;color:#22c55e}.oc-element.el-화{background:#ef444433;color:#ef4444}.oc-element.el-토{background:#a1620733;color:#d97706}.oc-element.el-금{background:#eab30833;color:#eab308}.oc-element.el-수{background:#3b82f633;color:#3b82f6}.oc-label{font-size:11px;padding:3px 8px;border-radius:4px;min-width:32px;text-align:center}.oc-label.good{background:#22c55e26;color:#22c55e}.oc-label.bad{background:#ef444426;color:#ef4444}.samjae-box{background:#8b5cf614;border:1px solid rgba(139,92,246,.2);border-radius:12px;padding:16px;margin-bottom:16px}.samjae-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.samjae-title{font-size:14px;font-weight:600}.samjae-type{font-size:12px;padding:4px 10px;border-radius:6px;font-weight:500}.samjae-type.type-상생{background:#22c55e33;color:#22c55e}.samjae-type.type-상극{background:#ef444433;color:#ef4444}.samjae-type.type-혼합{background:#eab30833;color:#eab308}.samjae-flow{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:14px}.samjae-element{display:flex;flex-direction:column;align-items:center;gap:4px}.samjae-element .se-badge{font-size:14px;padding:8px 14px;border-radius:8px;font-weight:600}.samjae-element .se-label{font-size:11px;color:#888}.samjae-element .se-arrow{font-size:16px;color:#666;margin:0 4px}.samjae-desc{font-size:13px;line-height:1.6;color:#bbb;margin:0;text-align:center}.ogyeok-note{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#ffffff08;border-radius:8px}.ogyeok-note .note-icon{font-size:14px}.ogyeok-note .note-text{font-size:11px;color:#888}.ogyeok-interp{font-size:11px;color:#666}.stroke-section{background:#ffffff08;border-radius:12px;padding:16px;margin-bottom:16px}.stroke-section-title{font-size:14px;font-weight:600;color:#8b5cf6;margin-bottom:14px}.stroke-char-list{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:14px}.stroke-char-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 16px;background:#ffffff0d;border-radius:10px}.sc-hanja{font-size:24px;font-weight:600;color:#fff}.sc-strokes{font-size:13px;color:#8b5cf6;font-weight:500}.stroke-total-line{font-size:13px;color:#aaa;padding:12px;background:#8b5cf614;border-radius:8px;text-align:center}.ogyeok-detail-list{display:flex;flex-direction:column;gap:8px}.ogyeok-detail-item{display:flex;flex-direction:column;padding:12px 14px;background:#ffffff08;border-radius:10px;gap:6px}.ogyeok-detail-item .od-row{display:flex;align-items:center}.od-interpretation{font-size:12px;color:#aaa;line-height:1.5;margin:0;padding-left:2px}.od-left{display:flex;align-items:center;gap:6px;min-width:130px}.od-name{font-weight:600;font-size:14px;color:#fff}.od-desc{font-size:11px;color:#888}.od-calc{flex:1;font-size:12px;color:#999;font-family:monospace;text-align:center}.od-right{display:flex;align-items:center;gap:8px}.od-last{font-size:12px;color:#aaa;padding:4px 8px;background:#ffffff0d;border-radius:4px}.od-arrow{font-size:12px;color:#666}.od-element{font-size:12px;padding:4px 10px;border-radius:6px;font-weight:600}.od-element.el-목{background:#22c55e33;color:#22c55e}.od-element.el-화{background:#ef444433;color:#ef4444}.od-element.el-토{background:#a1620733;color:#d97706}.od-element.el-금{background:#eab30833;color:#eab308}.od-element.el-수{background:#3b82f633;color:#3b82f6}.ogyeok-flow-visual{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px;padding:16px;background:#8b5cf60d;border-radius:12px;margin-bottom:16px}.ofv-item{display:flex;align-items:center;gap:6px}.ofv-element{font-size:14px;font-weight:600;padding:6px 12px;border-radius:8px}.ofv-element.el-목{background:#22c55e33;color:#22c55e}.ofv-element.el-화{background:#ef444433;color:#ef4444}.ofv-element.el-토{background:#a1620733;color:#d97706}.ofv-element.el-금{background:#eab30833;color:#eab308}.ofv-element.el-수{background:#3b82f633;color:#3b82f6}.ofv-label{font-size:10px;color:#888}.ofv-arrow{font-size:16px;color:#555;margin:0 2px}.summary-section .section-header{cursor:default}.summary-text{font-size:14px;line-height:1.6;margin-bottom:16px}.advice-box{display:flex;gap:12px;background:linear-gradient(135deg,#eab3081a,#f59e0b1a);border-radius:12px;padding:16px}.advice-box .advice-icon{font-size:24px}.advice-box p{margin:0;font-size:14px;line-height:1.5}.share-card{background:linear-gradient(135deg,#6366f133,#8b5cf633);border-radius:16px;padding:20px;margin-top:20px}.share-header{display:flex;align-items:center;gap:8px;margin-bottom:16px;font-weight:600}.share-icon{font-size:20px}.share-content{text-align:center}.share-nickname{font-size:24px;font-weight:700;color:#8b5cf6;margin-bottom:12px}.share-keywords{display:flex;justify-content:center;gap:8px;margin-bottom:12px}.keyword-tag{padding:4px 12px;background:#ffffff1a;border-radius:16px;font-size:13px}.share-hashtags{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.hashtag{font-size:12px;color:#8b5cf6}.action-buttons{display:flex;gap:12px;margin-top:24px}.action-buttons button{flex:1}.error-state{text-align:center;padding:60px 20px}.error-state p{margin-bottom:20px;color:#999}.shop-screen{min-height:100vh;background:linear-gradient(180deg,#1a1a2e,#16213e);padding:16px;padding-bottom:calc(16px + var(--bottom-nav-height));max-width:480px;margin:0 auto}.loading-center{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:16px;color:#a1a1aa}.shop-header{display:flex;align-items:center;gap:16px;margin-bottom:20px}.back-btn{background:#ffffff1a;border:none;color:#a1a1aa;padding:8px 16px;border-radius:8px;font-size:14px;cursor:pointer;transition:all .2s}.back-btn:hover{background:#ffffff26;color:#fff}.shop-title{font-size:24px;font-weight:700;color:#fff;margin:0}.balance-card{display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(135deg,#eab30826,#eab3080d);border:1px solid rgba(234,179,8,.3);border-radius:16px;margin-bottom:20px}.balance-info{display:flex;align-items:center;gap:16px}.balance-icon{font-size:40px}.balance-details{display:flex;flex-direction:column}.balance-label{font-size:14px;color:#a1a1aa}.balance-amount{font-size:32px;font-weight:700;color:#eab308}.shop-notice{text-align:center;margin-bottom:24px;padding:16px;background:#6366f11a;border:1px solid rgba(99,102,241,.2);border-radius:12px}.shop-notice p{margin:0;color:#a1a1aa;font-size:14px}.shop-notice .notice-sub{font-size:12px;color:#71717a;margin-top:4px}.product-list{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.product-card{display:flex;justify-content:space-between;align-items:center;padding:20px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:16px;transition:all .2s}.product-card:hover{background:#ffffff14;border-color:#eab3084d}.product-info{display:flex;flex-direction:column;gap:4px}.product-rice{display:flex;align-items:center;gap:8px}.rice-emoji{font-size:28px}.rice-count{font-size:24px;font-weight:700;color:#fff}.bonus-badge{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;font-size:12px;font-weight:600;padding:4px 8px;border-radius:12px}.product-total{font-size:13px;color:#a1a1aa;margin-left:44px}.product-action{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.product-price{font-size:18px;font-weight:600;color:#eab308}.purchase-btn{background:linear-gradient(135deg,#eab308,#ca8a04);color:#000;border:none;padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s;min-width:100px;display:flex;align-items:center;justify-content:center}.purchase-btn:hover:not(:disabled){transform:scale(1.05)}.purchase-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.payment-info{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:16px}.payment-info h3{font-size:14px;font-weight:600;color:#fff;margin:0 0 12px}.payment-info ul{margin:0;padding:0 0 0 16px}.payment-info li{font-size:13px;color:#71717a;margin-bottom:6px;line-height:1.5}.payment-info li:last-child{margin-bottom:0}.callback-screen{min-height:100vh;background:linear-gradient(180deg,#1a1a2e,#16213e);display:flex;align-items:center;justify-content:center;padding:20px;padding-bottom:var(--bottom-nav-height)}.callback-content{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:360px;width:100%}.callback-content h2{font-size:24px;font-weight:700;color:#fff;margin:16px 0 8px}.callback-content p{font-size:14px;color:#a1a1aa;margin:0}.success-icon,.cancel-icon,.fail-icon{font-size:64px;margin-bottom:8px}.result-box{width:100%;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:20px;margin:24px 0}.result-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0}.result-label{font-size:14px;color:#a1a1aa}.result-value{font-size:20px;font-weight:700}.result-value.rice{color:#22c55e}.result-value.balance{color:#eab308}.result-divider{height:1px;background:#ffffff1a}.error-message{color:#ef4444!important;margin-top:8px!important}.button-group{display:flex;gap:12px;margin-top:24px;width:100%}.button-group button{flex:1}.primary-btn{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border:none;padding:14px 28px;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s;margin-top:16px}.primary-btn:hover{transform:scale(1.02)}.secondary-btn{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);padding:14px 28px;border-radius:12px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s}.secondary-btn:hover{background:#ffffff26}.legal-screen{min-height:100vh;background:linear-gradient(180deg,#1a1a2e,#16213e);padding-bottom:var(--bottom-nav-height);max-width:480px;margin:0 auto}.legal-header{display:flex;align-items:center;justify-content:space-between;padding:16px;position:sticky;top:0;background:#1a1a2ef2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10}.legal-header h1{font-size:18px;font-weight:600;color:#fff;margin:0}.legal-header .back-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#ffffff1a;border:none;border-radius:12px;color:#fff;font-size:18px;cursor:pointer;transition:background .2s}.legal-header .back-btn:hover{background:#ffffff26}.legal-content{padding:16px}.legal-content section{margin-bottom:24px}.legal-content h2{font-size:16px;font-weight:600;color:#fff;margin-bottom:12px}.legal-content p{font-size:14px;color:#a1a1aa;line-height:1.7}.legal-footer{margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);text-align:center}.legal-footer p{font-size:12px;color:#71717a}.about-hero{text-align:center;padding:32px 0}.about-logo{font-size:64px;margin-bottom:16px}.about-hero h2{font-size:24px;margin-bottom:8px}.about-tagline{color:#71717a!important;font-size:14px!important}.business-info{background:#ffffff0d;border-radius:12px;padding:16px}.business-info p{margin-bottom:8px}.business-info p:last-child{margin-bottom:0}.business-info strong{color:#d4d4d8}:root{--primary: #6366f1;--primary-dark: #4f46e5;--primary-light: #a5b4fc;--secondary: #f59e0b;--success: #10b981;--danger: #ef4444;--kakao: #fee500;--kakao-text: #191919;--naver: #03c75a;--google-border: #dadce0;--bg-primary: #0f0f23;--bg-secondary: #1a1a2e;--bg-card: rgba(255, 255, 255, .05);--bg-card-hover: rgba(255, 255, 255, .1);--text-primary: #ffffff;--text-secondary: #a1a1aa;--text-muted: #71717a;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;font-family:Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5;color:var(--text-primary);background:var(--bg-primary)}*{box-sizing:border-box;margin:0;padding:0}body{margin:0;min-height:100vh;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%)}:root{--bottom-nav-height: calc(100px + env(safe-area-inset-bottom)) }.home-page,.name-page,.name-result-page,.mypage-screen,.tarot-page,.tennis-tarot-page,.battle-page,.battle-page-wrapper,.fortune-page-v2,.birth-input-page,.legal-screen,.shop-screen,.callback-screen,.saju-screen,.history-page{padding-bottom:var(--bottom-nav-height)}button{cursor:pointer;font-family:inherit;border:none;background:none}a{color:var(--primary-light);text-decoration:none}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:radial-gradient(ellipse at 20% 20%,rgba(99,102,241,.15) 0%,transparent 50%),radial-gradient(ellipse at 80% 80%,rgba(245,158,11,.1) 0%,transparent 50%),linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%)}.login-container{width:100%;max-width:400px;text-align:center}.login-hero{margin-bottom:40px}.logo-icon{font-size:64px;margin-bottom:16px;animation:float 3s ease-in-out infinite}.icon-yin{display:inline-block;background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 20px rgba(99,102,241,.5))}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.logo-text{font-size:36px;font-weight:800;background:linear-gradient(135deg,#fff 0%,var(--primary-light) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:8px}.tagline{color:var(--text-secondary);font-size:16px}.login-features{display:flex;justify-content:center;gap:24px;margin-bottom:40px}.feature-item{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary)}.feature-icon{font-size:28px}.login-buttons{display:flex;flex-direction:column;gap:12px}.login-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:14px 20px;font-size:15px;font-weight:600;border-radius:var(--radius-md);transition:all .2s ease}.login-btn:disabled{opacity:.7;cursor:not-allowed}.login-btn .btn-icon{width:20px;height:20px}.login-btn.kakao{background:var(--kakao);color:var(--kakao-text)}.login-btn.kakao:hover:not(:disabled){background:#f5da00}.login-btn.kakao .btn-icon{fill:var(--kakao-text)}.login-btn.naver{background:var(--naver);color:#fff}.login-btn.naver:hover:not(:disabled){background:#02b351}.login-btn.naver .naver-icon{font-weight:800;font-size:16px}.login-btn.google{background:#fff;color:#3c4043;border:1px solid var(--google-border)}.login-btn.google:hover:not(:disabled){background:#f8f9fa}.divider{display:flex;align-items:center;margin:8px 0;color:var(--text-muted);font-size:13px}.divider:before,.divider:after{content:"";flex:1;height:1px;background:#ffffff1a}.divider span{padding:0 16px}.login-btn.guest{background:var(--bg-card);color:var(--text-secondary);border:1px solid rgba(255,255,255,.1)}.login-btn.guest:hover{background:var(--bg-card-hover);color:var(--text-primary)}.login-notice{margin-top:24px;font-size:12px;color:var(--text-muted)}.login-notice a{color:var(--text-secondary);text-decoration:underline}.home-page{min-height:100vh;padding-bottom:var(--bottom-nav-height)}.home-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;position:sticky;top:0;background:#0f0f23e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:100}.header-logo{font-size:20px;font-weight:700;background:linear-gradient(135deg,#fff 0%,var(--primary-light) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-right{display:flex;gap:8px}.icon-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--bg-card);font-size:18px;transition:background .2s}.icon-btn:hover{background:var(--bg-card-hover)}.login-header-btn{padding:8px 20px;border-radius:20px;background:var(--accent);color:#fff;font-size:14px;font-weight:600;border:none;cursor:pointer;transition:opacity .2s}.login-header-btn:hover{opacity:.85}.ad-banner{margin:20px;display:flex;justify-content:center}.ad-image{width:100%;height:220px;object-fit:cover;border-radius:var(--radius-lg)}.ad-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;height:100px;background:var(--bg-card);border:2px dashed rgba(255,255,255,.15);border-radius:var(--radius-lg)}.ad-icon{font-size:24px;opacity:.5}.ad-text{font-size:14px;color:var(--text-muted)}.ad-size{font-size:11px;color:var(--text-muted);opacity:.6}.today-fortune-card{margin:20px;padding:24px;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);border-radius:var(--radius-xl);box-shadow:0 8px 32px #6366f14d}.fortune-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.fortune-date{font-size:13px;opacity:.9}.fortune-badge{font-size:12px;padding:4px 10px;background:#fff3;border-radius:20px}.fortune-content{display:flex;align-items:center;gap:24px}.score-circle{width:80px;height:80px;background:#ffffff26;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.score-number{font-size:32px;font-weight:800;line-height:1}.score-label{font-size:12px;opacity:.8}.fortune-summary{flex:1}.summary-text{font-size:14px;font-weight:600;margin-bottom:12px}.detail-btn{font-size:14px;color:#fffc;padding:8px 16px;background:#ffffff1a;border-radius:var(--radius-sm);transition:background .2s}.detail-btn:hover{background:#fff3}.battle-banner{margin:20px;padding:20px;background:linear-gradient(135deg,#1a1a2e,#2d1f3d);border:1px solid rgba(245,158,11,.3);border-radius:var(--radius-lg);position:relative;overflow:hidden}.banner-content{display:flex;align-items:center;justify-content:space-between;position:relative;z-index:1}.banner-badge{display:inline-block;font-size:12px;margin-bottom:8px}.banner-text h3{font-size:16px;font-weight:700;margin-bottom:4px}.banner-text p{font-size:13px;color:var(--text-secondary)}.banner-btn{padding:10px 20px;background:var(--secondary);color:#fff;font-weight:600;font-size:14px;border-radius:var(--radius-md);white-space:nowrap;transition:transform .2s,box-shadow .2s}.banner-btn:hover{transform:translateY(-2px);box-shadow:0 4px 16px #f59e0b66}.banner-decoration{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.deco-icon{position:absolute;font-size:48px;opacity:.1}.deco-icon.left{left:-10px;bottom:-10px}.deco-icon.right{right:10px;top:-5px}.menu-section{padding:0 20px}.section-title{font-size:18px;font-weight:700}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.menu-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 12px;background:var(--bg-card);border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-lg);transition:all .2s ease;position:relative;min-height:120px;height:120px}.menu-card:hover{background:var(--bg-card-hover);transform:translateY(-4px);border-color:#6366f14d}.menu-card.selected{border-color:var(--primary);background:#6366f11a}.menu-badge{position:absolute;top:8px;right:8px;font-size:10px;font-weight:700;padding:2px 6px;border-radius:4px}.menu-badge.new{background:var(--primary);color:#fff}.menu-badge.hot{background:var(--danger);color:#fff}.menu-icon{font-size:32px;margin-bottom:10px}.menu-title{font-size:14px;font-weight:600;margin-bottom:4px;color:var(--text-primary)}.menu-desc{font-size:11px;color:var(--text-muted);text-align:center}.menu-card.display-card{cursor:default;background:linear-gradient(135deg,#1a1a2e,#0f0f23);border:1px solid rgba(16,185,129,.3);position:relative;overflow:hidden}.menu-card.display-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 50% 0%,rgba(16,185,129,.15),transparent 70%);pointer-events:none}.menu-card.display-card:hover{transform:none;border-color:#10b98180}.live-indicator{display:flex;align-items:center;gap:4px;font-size:10px;font-weight:600;color:#10b981;text-transform:uppercase;letter-spacing:.5px}.live-dot{width:6px;height:6px;background:#10b981;border-radius:50%;animation:pulse-live 1.5s ease-in-out infinite}@keyframes pulse-live{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.visitor-count{font-size:28px;font-weight:800;color:#10b981;font-family:Roboto Mono,monospace;text-shadow:0 0 20px rgba(16,185,129,.5);margin:4px 0}.visitor-label{font-size:11px;color:var(--text-muted)}.menu-card.ad-card{padding:0;overflow:hidden;cursor:pointer}.menu-card.ad-card:hover{transform:translateY(-4px)}.ad-thumbnail{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-lg)}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;padding:8px 0;padding-bottom:calc(8px + env(safe-area-inset-bottom));background:#0f0f23f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.05)}.nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 16px;color:var(--text-muted);transition:color .2s}.nav-item:hover{color:var(--text-secondary)}.nav-item.active{color:var(--primary)}.nav-icon{font-size:22px}.nav-label{font-size:11px;font-weight:500}@media (max-width: 400px){.menu-grid{grid-template-columns:repeat(2,1fr)}.fortune-content{flex-direction:column;text-align:center}.login-features{flex-wrap:wrap}}@media (min-width: 768px){.home-page{max-width:480px;margin:0 auto;border-left:1px solid rgba(255,255,255,.05);border-right:1px solid rgba(255,255,255,.05)}.bottom-nav{max-width:480px;left:50%;transform:translate(-50%)}}.login-form{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.login-input{width:100%;padding:14px 16px;font-size:15px;background:var(--bg-card);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);color:var(--text-primary);outline:none;transition:border-color .2s}.login-input:focus{border-color:var(--primary)}.login-input::placeholder{color:var(--text-muted)}.login-input:disabled{opacity:.6}.login-btn.primary{background:var(--primary);color:#fff}.login-btn.primary:hover:not(:disabled){background:var(--primary-dark)}.mode-toggle{margin-bottom:16px;font-size:14px;color:var(--text-secondary);background:none;border:none;cursor:pointer;text-decoration:underline}.mode-toggle:hover{color:var(--text-primary)}.error-message{margin-bottom:16px;padding:12px 16px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);color:#fca5a5;font-size:14px;text-align:center}.rice-balance{display:flex;align-items:center;gap:4px;padding:6px 12px;background:var(--bg-card);border-radius:20px;font-size:14px;font-weight:600}.rice-icon{font-size:16px}.rice-amount{color:var(--secondary)}.user-menu-wrapper{position:relative}.user-dropdown{position:absolute;top:100%;right:0;margin-top:8px;min-width:200px;background:var(--bg-secondary);border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-md);box-shadow:0 8px 24px #0006;z-index:200;overflow:hidden;animation:dropdownSlide .2s ease-out}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.user-dropdown .user-info{padding:16px}.user-dropdown .user-nickname{display:block;font-weight:600;margin-bottom:4px}.user-dropdown .user-email{display:block;font-size:12px;color:var(--text-muted)}.user-dropdown hr{border:none;border-top:1px solid rgba(255,255,255,.1);margin:0}.user-dropdown .mypage-btn{width:100%;padding:12px 16px;font-size:14px;color:var(--text);text-align:left;background:none;border:none;cursor:pointer;transition:background .2s}.user-dropdown .mypage-btn:hover{background:#ffffff1a}.user-dropdown .logout-btn{width:100%;padding:12px 16px;font-size:14px;color:var(--danger);text-align:left;background:none;border:none;cursor:pointer;transition:background .2s}.user-dropdown .logout-btn:hover{background:#ef44441a}.loading-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:var(--text-secondary)}.loading-spinner{font-size:48px;animation:spin 2s linear infinite}.birth-input-page{min-height:100vh;padding:20px;background:radial-gradient(ellipse at 30% 20%,rgba(99,102,241,.1) 0%,transparent 50%),linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%)}.birth-input-container{max-width:400px;margin:0 auto}.page-header{display:flex;align-items:center;gap:16px;margin-bottom:32px}.page-header h1{font-size:20px;font-weight:700}.back-btn{font-size:18px;color:var(--text-secondary);padding:8px;transition:color .2s}.back-btn:hover{color:var(--text-primary)}.input-description{text-align:center;margin-bottom:32px}.input-description .icon{font-size:48px;margin-bottom:12px}.input-description p{font-size:16px;color:var(--text-secondary);line-height:1.6}.birth-form{display:flex;flex-direction:column;gap:24px}.form-section{display:flex;flex-direction:column;gap:12px}.section-label{font-size:14px;font-weight:600;color:var(--text-secondary)}.helper-text{font-size:12px;color:var(--text-muted);margin-top:8px}.submit-btn{margin-top:8px;padding:16px;font-size:16px;font-weight:700;background:var(--primary);color:#fff;border-radius:var(--radius-md);transition:all .2s}.submit-btn:hover{background:var(--primary-dark);transform:translateY(-2px)}.privacy-note{margin-top:24px;font-size:12px;color:var(--text-muted);text-align:center}.today-fortune-page{min-height:100vh;background:radial-gradient(ellipse at 50% 0%,rgba(99,102,241,.15) 0%,transparent 50%),linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%)}.fortune-container{max-width:480px;margin:0 auto;padding:0 20px 40px}.fortune-header{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:#0f0f23e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:100;margin:0 -20px;padding:16px 20px}.fortune-header h1{font-size:18px;font-weight:700}.share-btn{font-size:18px;color:var(--text-secondary);padding:8px}.today-fortune-page .fortune-date{text-align:center;padding:16px 0;font-size:14px;color:var(--text-secondary)}.guest-notice{display:flex;flex-direction:column;align-items:center;gap:12px;padding:16px 20px;background:linear-gradient(135deg,#fbbf2426,#f59e0b1a);border:1px solid rgba(251,191,36,.3);border-radius:var(--radius-lg);margin-bottom:16px;text-align:center}.guest-notice .notice-icon{font-size:24px}.guest-notice p{font-size:13px;color:var(--text-secondary);line-height:1.5;margin:0}.guest-notice .notice-btn{padding:8px 20px;background:#fbbf2433;border:1px solid rgba(251,191,36,.4);border-radius:var(--radius-md);color:#fbbf24;font-size:13px;font-weight:600;transition:all .2s}.guest-notice .notice-btn:hover{background:#fbbf244d}.saved-notice{display:flex;justify-content:center;padding:10px 16px;background:#34d3991a;border:1px solid rgba(52,211,153,.3);border-radius:var(--radius-md);margin-bottom:16px;font-size:13px;color:#34d399}.reward-notice{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;background:linear-gradient(135deg,#fbbf2426,#f59e0b1a);border:1px solid rgba(251,191,36,.3);border-radius:var(--radius-md);margin-bottom:16px;font-size:13px;color:#fbbf24;animation:rewardPop .5s ease-out}.reward-notice .reward-icon{font-size:18px}@keyframes rewardPop{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.main-score-card{padding:32px 24px;background:linear-gradient(135deg,var(--primary) 0%,#7c3aed 100%);border-radius:var(--radius-xl);text-align:center;margin-bottom:20px;box-shadow:0 8px 32px #6366f14d}.saju-info{display:flex;justify-content:center;gap:12px;margin-bottom:20px}.day-master-badge,.today-energy{font-size:12px;padding:4px 10px;background:#fff3;border-radius:20px}.main-score-card .score-circle{width:120px;height:120px;margin:0 auto 16px;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.main-score-card .score-number{font-size:48px}.main-score-card .score-label{font-size:14px}.grade-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;background:#fff3;border-radius:20px;margin-bottom:16px}.grade-emoji{font-size:18px}.grade-text{font-size:14px;font-weight:700}.fortune-summary{font-size:16px;line-height:1.6;opacity:.95}.score-excellent{color:#fbbf24}.score-good{color:#34d399}.score-normal{color:#60a5fa}.score-low{color:#f87171}.fortune-detail-card,.advice-card{padding:20px;background:var(--bg-card);border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-lg);margin-bottom:20px}.fortune-detail-card h3,.category-section h3,.lucky-section h3,.advice-card h3{font-size:16px;font-weight:700;margin-bottom:12px}.fortune-detail-card p,.advice-card p{font-size:14px;line-height:1.7;color:var(--text-secondary)}.category-section{margin-bottom:20px}.category-card{padding:16px;background:var(--bg-card);border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-md)}.category-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.category-icon{font-size:20px}.category-name{font-size:13px;font-weight:600;color:var(--text-secondary)}.category-score{font-size:24px;font-weight:800;margin-bottom:8px}.category-message{font-size:12px;color:var(--text-muted);line-height:1.5}.lucky-section{padding:20px;background:var(--bg-card);border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-lg);margin-bottom:20px}.lucky-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.lucky-item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px}.lucky-icon{font-size:24px;margin-bottom:4px}.lucky-value{font-size:13px;font-weight:600;color:var(--text-primary)}.fortune-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}.action-btn{padding:14px;font-size:15px;font-weight:600;border-radius:var(--radius-md);transition:all .2s}.action-btn.primary{background:var(--primary);color:#fff}.action-btn.primary:hover{background:var(--primary-dark)}.action-btn.secondary{background:var(--bg-card);color:var(--text-secondary);border:1px solid rgba(255,255,255,.1)}.action-btn.secondary:hover{background:var(--bg-card-hover);color:var(--text-primary)}.history-page{min-height:100vh;background:radial-gradient(ellipse at 50% 0%,rgba(99,102,241,.1) 0%,transparent 50%),linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%)}.history-container{max-width:480px;margin:0 auto;padding:0 20px 40px}.history-header{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:#0f0f23e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:100;margin:0 -20px;padding:16px 20px}.history-header h1{font-size:18px;font-weight:700}.service-tabs-wrapper{position:relative;display:flex;align-items:center}.service-tabs-wrapper:before,.service-tabs-wrapper:after{content:"";position:absolute;top:0;bottom:0;width:40px;pointer-events:none;z-index:5;opacity:0;transition:opacity .2s}.service-tabs-wrapper.show-left:before{left:0;background:linear-gradient(to right,var(--bg-primary) 0%,transparent 100%);opacity:1}.service-tabs-wrapper.show-right:after{right:0;background:linear-gradient(to left,var(--bg-primary) 0%,transparent 100%);opacity:1}.tab-arrow{position:absolute;top:50%;transform:translateY(-50%);width:24px;height:24px;border-radius:6px;background:#ffffff14;border:none;color:var(--text-secondary);font-size:14px;font-weight:600;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:all .2s;opacity:.7}.tab-arrow:hover{background:#ffffff26;color:var(--text-primary);opacity:1}.tab-arrow.left{left:4px}.tab-arrow.right{right:4px}.service-tabs{display:flex;gap:8px;padding:12px 8px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;flex:1}.service-tabs::-webkit-scrollbar{display:none}.service-tab{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 16px;min-width:70px;background:var(--bg-card);border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-md);transition:all .2s;flex-shrink:0}.service-tab:hover{background:var(--bg-card-hover)}.service-tab.active{background:var(--primary);border-color:var(--primary)}.service-tab.disabled{opacity:.5}.service-tab .tab-icon{font-size:20px}.service-tab .tab-label{font-size:11px;font-weight:600;color:var(--text-secondary);white-space:nowrap}.service-tab.active .tab-label{color:#fff}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px}.loading-state p{font-size:14px;color:var(--text-secondary)}.guest-block{display:flex;flex-direction:column;align-items:center;text-align:center;padding:60px 20px;gap:16px}.guest-block .block-icon{font-size:48px;opacity:.8}.guest-block h3{font-size:18px;font-weight:700}.guest-block p{font-size:14px;color:var(--text-secondary);line-height:1.6}.guest-block .signup-btn{margin-top:8px;padding:12px 32px;background:var(--primary);color:#fff;font-size:15px;font-weight:600;border-radius:var(--radius-md);transition:all .2s}.guest-block .signup-btn:hover{background:var(--primary-dark)}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:60px 20px;gap:16px}.empty-state .empty-icon{font-size:48px;opacity:.8}.empty-state h3{font-size:18px;font-weight:700}.empty-state p{font-size:14px;color:var(--text-secondary);line-height:1.6}.record-list{display:flex;flex-direction:column;gap:16px;margin-top:16px}.record-card{background:var(--bg-card);border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-lg);padding:16px;transition:all .2s}.record-card:hover{background:var(--bg-card-hover);border-color:#ffffff1a}.record-date{font-size:13px;color:var(--text-muted);margin-bottom:12px}.record-content{display:flex;gap:16px;margin-bottom:12px}.record-score-section{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:70px}.record-score{font-size:24px;font-weight:800}.record-grade{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-secondary)}.record-info{flex:1;min-width:0}.record-saju{display:flex;align-items:center;gap:6px;margin-bottom:6px}.saju-label{font-size:11px;color:var(--text-muted)}.saju-value{font-size:12px;font-weight:600;color:var(--primary-light)}.record-summary{font-size:13px;color:var(--text-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.record-categories{display:flex;gap:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.05)}.cat-item{font-size:12px;color:var(--text-muted)}.kakao-callback-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.callback-container{text-align:center}.callback-spinner{font-size:48px;animation:spin 1s linear infinite;margin-bottom:24px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.callback-icon{font-size:48px;margin-bottom:24px}.callback-icon.error{color:var(--danger)}.callback-message{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.callback-submessage{font-size:14px;color:var(--text-secondary)}.tarot-page{min-height:100vh;max-width:480px;margin:0 auto;background:radial-gradient(ellipse at 30% 20%,rgba(139,92,246,.15) 0%,transparent 50%),radial-gradient(ellipse at 70% 80%,rgba(99,102,241,.1) 0%,transparent 50%),linear-gradient(135deg,#0a0a1a,#1a1a2e)}.tarot-header{display:flex;align-items:center;gap:16px;padding:16px 20px;position:sticky;top:0;background:#0a0a1ae6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:100}.tarot-header h1{font-size:20px;font-weight:700;background:linear-gradient(135deg,#fff,#c4b5fd);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tarot-intro{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 80px);padding:40px 20px;text-align:center}.tarot-intro-visual{position:relative;width:200px;height:200px;margin-bottom:40px}.floating-cards{position:relative;width:100%;height:100%}.floating-card{position:absolute;font-size:64px;filter:drop-shadow(0 0 20px rgba(139,92,246,.5))}.floating-card.card-1{top:20%;left:10%;animation:floatCard1 4s ease-in-out infinite}.floating-card.card-2{top:30%;right:10%;animation:floatCard2 4s ease-in-out infinite .5s}.floating-card.card-3{bottom:20%;left:50%;transform:translate(-50%);animation:floatCard3 4s ease-in-out infinite 1s}@keyframes floatCard1{0%,to{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-15px) rotate(5deg)}}@keyframes floatCard2{0%,to{transform:translateY(0) rotate(5deg)}50%{transform:translateY(-20px) rotate(-5deg)}}@keyframes floatCard3{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-15px)}}.tarot-intro h2{font-size:28px;font-weight:800;margin-bottom:16px;background:linear-gradient(135deg,#fff,#c4b5fd);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tarot-intro p{font-size:16px;color:var(--text-secondary);line-height:1.8;margin-bottom:40px}.tarot-start-btn{padding:16px 48px;font-size:18px;font-weight:700;background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff;border-radius:var(--radius-lg);box-shadow:0 8px 32px #8b5cf666;transition:all .3s}.tarot-start-btn:hover{transform:translateY(-3px);box-shadow:0 12px 40px #8b5cf680}.tarot-shuffling{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 80px);padding:40px 20px}.shuffle-guide{text-align:center;margin-bottom:60px}.shuffle-guide h2{font-size:24px;font-weight:800;margin-bottom:12px;background:linear-gradient(135deg,#fff,#c4b5fd);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.shuffle-guide p{font-size:15px;color:var(--text-secondary);line-height:1.8}.shuffle-deck{position:relative;width:120px;height:180px;margin-bottom:60px}.shuffle-card{position:absolute;width:100%;height:100%;transition:all .4s cubic-bezier(.34,1.56,.64,1);transform:translate(calc(var(--i) * 4px)) translateY(calc(var(--i) * -2px)) rotate(calc(var(--i) * 1deg))}.shuffle-deck.shuffling .shuffle-card{animation:shuffleCard .8s ease-in-out forwards;animation-delay:calc(var(--i) * .05s)}@keyframes shuffleCard{0%{transform:translate(calc(var(--i) * 4px)) translateY(calc(var(--i) * -2px)) rotate(calc(var(--i) * 1deg))}25%{transform:translate(calc(var(--i) * 30px - 60px)) translateY(-20px) rotate(calc(var(--i) * 15deg - 30deg))}50%{transform:translate(calc(var(--i) * -30px + 60px)) translateY(-30px) rotate(calc(var(--i) * -15deg + 30deg))}75%{transform:translate(calc(var(--i) * 20px - 40px)) translateY(-10px) rotate(calc(var(--i) * 10deg - 20deg))}to{transform:translate(calc(var(--i) * 4px)) translateY(calc(var(--i) * -2px)) rotate(calc(var(--i) * 1deg))}}.shuffle-actions{display:flex;flex-direction:column;gap:16px;width:100%;max-width:280px}.shuffle-btn{padding:16px 32px;font-size:18px;font-weight:700;background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border-radius:var(--radius-lg);box-shadow:0 8px 24px #6366f166;transition:all .3s}.shuffle-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 32px #6366f180}.shuffle-btn:disabled{opacity:.7;cursor:not-allowed}.shuffle-done-btn{padding:14px 32px;font-size:16px;font-weight:600;background:transparent;color:var(--text-secondary);border:2px solid rgba(139,92,246,.3);border-radius:var(--radius-lg);transition:all .3s}.shuffle-done-btn:hover{background:#8b5cf61a;border-color:#8b5cf6;color:var(--text-primary)}.tarot-selecting{padding:20px;animation:fadeIn .4s ease}.selecting-guide{text-align:center;margin-bottom:40px}.selecting-guide p{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:20px}.selection-progress{display:flex;justify-content:center;gap:12px}.progress-dot{padding:8px 16px;background:var(--bg-card);border:2px solid rgba(139,92,246,.3);border-radius:var(--radius-md);font-size:13px;font-weight:600;color:var(--text-muted);transition:all .3s}.progress-dot.filled{background:#8b5cf633;border-color:#8b5cf6;color:#c4b5fd}.card-spread{display:flex;justify-content:center;align-items:center;min-height:400px;position:relative;padding:40px 20px}.spread-card{position:absolute;width:90px;height:135px;cursor:pointer;transform-origin:center bottom;transition:transform .3s ease,opacity .3s ease;border-radius:var(--radius-md);overflow:hidden}.spread-card:hover:not(.selected):not(.fly-away):not(.fade-out){transform:translate(var(--translateX)) translateY(-25px) rotate(var(--rotation)) scale(1.08)!important;z-index:50!important}.card-spread.shuffling .spread-card{animation:spreadShuffle .8s ease-in-out forwards;animation-delay:calc(var(--i) * .03s);pointer-events:none}@keyframes spreadShuffle{0%{transform:translate(var(--translateX)) rotate(var(--rotation))}30%{transform:translate(0) translateY(-60px) rotate(0) scale(.9)}50%{transform:translate(calc(var(--i) * 15px - 67px)) translateY(-80px) rotate(calc(var(--i) * 20deg - 90deg)) scale(.85)}70%{transform:translate(0) translateY(-40px) rotate(0) scale(.95)}to{transform:translate(var(--translateX)) rotate(var(--rotation))}}.shuffle-action{display:flex;justify-content:center;margin-top:20px}.shuffle-inline-btn{padding:12px 28px;font-size:15px;font-weight:600;background:#6366f126;color:#a5b4fc;border:1px solid rgba(99,102,241,.3);border-radius:var(--radius-lg);transition:all .3s}.shuffle-inline-btn:hover:not(:disabled){background:#6366f140;border-color:#6366f1;color:#c7d2fe;transform:translateY(-2px)}.shuffle-inline-btn:disabled{opacity:.6;cursor:not-allowed}.spread-card.fly-away{animation:flyAway .6s ease-out forwards;pointer-events:none}@keyframes flyAway{0%{transform:translate(var(--translateX)) rotate(var(--rotation)) scale(1);opacity:1}30%{transform:translate(var(--translateX)) translateY(-30px) rotate(var(--rotation)) scale(1.15);opacity:1}to{transform:translate(var(--translateX)) translateY(-200px) rotate(0) scale(.5);opacity:0}}.spread-card.fade-out{animation:fadeOutCard .4s ease-out forwards;pointer-events:none}@keyframes fadeOutCard{0%{transform:translate(var(--translateX)) rotate(var(--rotation)) scale(1);opacity:1}to{transform:translate(var(--translateX)) rotate(var(--rotation)) scale(.9);opacity:0}}.card-back{width:100%;height:100%;background:linear-gradient(135deg,#1e1b4b,#312e81);border:2px solid rgba(139,92,246,.5);border-radius:var(--radius-md);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;box-shadow:0 8px 24px #0006}.card-back-pattern{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:20px;opacity:.6}.tarot-reveal{padding:20px;max-width:480px;margin:0 auto;animation:fadeIn .4s ease}.reveal-cards{display:flex;justify-content:center;gap:16px;margin-bottom:32px}.reveal-card-wrapper{display:flex;flex-direction:column;align-items:center;gap:12px}.position-label{font-size:13px;font-weight:600;color:#fff;padding:4px 12px;background:var(--bg-card);border-radius:var(--radius-sm)}.reveal-card{width:100px;height:150px;perspective:1000px}.card-inner{position:relative;width:100%;height:100%;transition:transform .8s cubic-bezier(.175,.885,.32,1.275);transform-style:preserve-3d}.reveal-card.flipped .card-inner{transform:rotateY(180deg)}.reveal-card.reversed.flipped .card-inner{transform:rotateY(180deg) rotate(180deg)}.card-back,.card-front{position:absolute;width:100%;height:100%;backface-visibility:hidden;border-radius:var(--radius-md)}.card-front{transform:rotateY(180deg);overflow:hidden;box-shadow:0 8px 24px #0000004d;position:relative}.card-image{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-md);text-align:center}.reversed-badge{position:absolute;bottom:6px;font-size:8px;font-weight:700;padding:2px 6px;background:#ef4444;color:#fff;border-radius:4px}.tarot-interpretation{display:flex;flex-direction:column;gap:16px}.interpretation-card{padding:20px;background:var(--bg-card);border:1px solid rgba(139,92,246,.2);border-radius:var(--radius-lg)}.interpretation-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.position-badge{font-size:12px;font-weight:600;padding:4px 10px;background:#8b5cf633;color:#c4b5fd;border-radius:var(--radius-sm)}.interpretation-header h3{font-size:16px;font-weight:700;color:var(--text-primary)}.interpretation-keywords{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.keyword{font-size:12px;padding:4px 10px;background:#fbbf2426;color:#fbbf24;border-radius:20px}.interpretation-text{font-size:14px;line-height:1.7;color:var(--text-secondary)}.tarot-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}.tarot-action-btn{padding:14px;font-size:15px;font-weight:600;border-radius:var(--radius-md);transition:all .2s}.tarot-action-btn.primary{background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff}.tarot-action-btn.primary:hover{transform:translateY(-2px);box-shadow:0 4px 16px #8b5cf666}.tarot-action-btn.secondary{background:var(--bg-card);color:var(--text-secondary);border:1px solid rgba(255,255,255,.1)}.tarot-action-btn.secondary:hover{background:var(--bg-card-hover);color:var(--text-primary)}@media (max-width: 480px){.reveal-cards{gap:8px}.reveal-card{width:85px;height:127px}.spread-card{width:70px;height:105px}.card-spread{min-height:320px}.card-back-pattern{font-size:16px}}@media (max-width: 360px){.spread-card{width:60px;height:90px}}.tennis-tarot-page{min-height:100vh;max-width:480px;margin:0 auto;background:radial-gradient(ellipse at 30% 20%,rgba(16,185,129,.15) 0%,transparent 50%),radial-gradient(ellipse at 70% 80%,rgba(245,158,11,.1) 0%,transparent 50%),linear-gradient(135deg,#0a1a0f,#1a2e1a)}.tarot-header.tennis h1{background:linear-gradient(135deg,#fff,#a7f3d0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tennis-intro{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 80px);padding:40px 20px;text-align:center;animation:fadeIn .4s ease}.tennis-intro-visual{position:relative;width:200px;height:200px;margin-bottom:40px}.floating-cards.tennis .floating-card{filter:drop-shadow(0 0 20px rgba(16,185,129,.5))}.tennis-intro h2{font-size:28px;font-weight:800;margin-bottom:16px;background:linear-gradient(135deg,#fff,#a7f3d0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tennis-intro p{font-size:16px;color:var(--text-secondary);line-height:1.8;margin-bottom:32px}.spread-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px 16px;background:#10b9811a;border:1px solid rgba(16,185,129,.2);border-radius:var(--radius-lg);transition:all .3s}.spread-btn:hover{background:#10b98133;border-color:#10b98166;transform:translateY(-3px)}.spread-icon{font-size:24px}.spread-title{font-size:16px;font-weight:700;color:var(--text-primary)}.spread-desc{font-size:12px;color:var(--text-secondary)}.card-back.tennis{background:linear-gradient(145deg,#065f46,#047857,#059669)}.card-back.tennis .card-back-pattern span:first-child,.card-back.tennis .card-back-pattern span:last-child{color:#bbf7d0}.card-back.tennis .card-back-pattern span:nth-child(2){color:#fef3c7}.tarot-selecting.tennis .selecting-guide p{color:#a7f3d0}.spread-hint{font-size:12px;color:var(--text-secondary);display:block;margin-top:4px}.reveal-cards.single{justify-content:center}.reveal-cards.single .reveal-card-wrapper{flex:0 0 auto;width:180px}.tennis-interpretation{padding:20px;animation:fadeInUp .5s ease}.one-card-reading{background:#10b9810d;border:1px solid rgba(16,185,129,.15);border-radius:var(--radius-lg);padding:24px;margin-bottom:24px}.one-card-reading .reading-header{text-align:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid rgba(16,185,129,.1)}.one-card-reading .reading-header h3{font-size:22px;font-weight:700;color:#a7f3d0;margin-bottom:4px}.card-name-en{font-size:14px;color:var(--text-muted)}.reading-section{margin-bottom:20px}.reading-section.summary{display:flex;align-items:flex-start;gap:12px;background:#ffffff08;padding:16px;border-radius:var(--radius-md);margin-bottom:24px}.reading-section.summary .section-icon{font-size:24px}.reading-section.summary p{font-size:17px;font-weight:600;color:var(--text-primary);line-height:1.6}.section-label{font-size:13px;font-weight:600;color:var(--text-muted);margin-bottom:8px}.reading-section p{font-size:15px;color:var(--text-secondary);line-height:1.6}.reading-section.focus{margin-top:24px;padding-top:16px;border-top:1px solid rgba(16,185,129,.1)}.focus-keywords{display:flex;gap:10px;flex-wrap:wrap}.focus-keyword{padding:8px 16px;background:linear-gradient(135deg,#10b98133,#0596691a);border:1px solid rgba(16,185,129,.3);border-radius:20px;font-size:14px;font-weight:600;color:#a7f3d0}.focus-keywords.small .focus-keyword{padding:4px 10px;font-size:12px}.three-card-reading{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.card-reading-section{background:#10b9810d;border:1px solid rgba(16,185,129,.15);border-radius:var(--radius-md);padding:16px}.card-reading-section .reading-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.position-badge.tennis{background:linear-gradient(135deg,#059669,#047857);color:#fff}.card-reading-section .reading-header h3{font-size:16px;font-weight:700;color:var(--text-primary)}.reading-content{padding-left:4px}.reading-content p{font-size:14px;color:var(--text-secondary);line-height:1.6;margin-bottom:8px}.reading-content .sub-reading{font-size:13px;color:var(--text-muted);padding-left:8px;border-left:2px solid rgba(16,185,129,.3);margin-top:12px}.tarot-action-btn.tennis{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 20px #10b9814d}.tarot-action-btn.tennis:hover{box-shadow:0 6px 28px #10b98166}.tarot-reveal.tennis .position-label{background:linear-gradient(135deg,#10b981,#059669)}.category-selection{width:100%;max-width:400px}.category-title{font-size:16px;font-weight:600;color:var(--text-secondary);margin-bottom:16px}.category-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.category-btn{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 12px;background:#10b98114;border:1px solid rgba(16,185,129,.15);border-radius:var(--radius-md);transition:all .3s}.category-btn:hover{background:#10b98126;border-color:#10b9814d;transform:translateY(-2px)}.category-btn:active{transform:translateY(0)}.category-icon{font-size:28px}.category-label{font-size:14px;font-weight:700;color:var(--text-primary)}.category-desc{font-size:11px;color:var(--text-muted)}.category-btn.selected{background:#10b98140;border-color:#10b981;box-shadow:0 0 20px #10b9814d}.category-btn.selected .category-label{color:#a7f3d0}.start-reading-btn{margin-top:24px;padding:16px 32px;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:var(--radius-lg);font-size:16px;font-weight:700;color:#fff;cursor:pointer;transition:all .3s;box-shadow:0 4px 20px #10b9814d;animation:fadeInUp .3s ease}.start-reading-btn:hover{transform:translateY(-3px);box-shadow:0 6px 28px #10b98166}.start-reading-btn:active{transform:translateY(0)}.selected-category-tag{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:#10b98133;border:1px solid rgba(16,185,129,.4);border-radius:20px;font-size:14px;font-weight:600;color:#a7f3d0;margin-top:8px}.card-info-section{text-align:center;margin-bottom:20px}.card-info-section h3{font-size:22px;font-weight:700;color:#a7f3d0;margin-bottom:4px}.card-info-section .card-name-en{display:block;font-size:14px;color:var(--text-muted);margin-bottom:12px}.card-keywords{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.keyword-tag{padding:6px 12px;background:#10b98126;border:1px solid rgba(16,185,129,.3);border-radius:16px;font-size:13px;font-weight:600;color:#a7f3d0}.card-description-section{background:#ffffff08;border-radius:var(--radius-md);padding:16px;margin-bottom:20px}.card-description{font-size:15px;color:var(--text-secondary);line-height:1.7;text-align:center}.card-image-description{background:#8b5cf614;border:1px solid rgba(139,92,246,.2);border-radius:var(--radius-md);padding:16px;margin-bottom:16px;text-align:center}.card-image-description p{font-size:14px;color:var(--text-secondary);line-height:1.7;font-style:italic}.card-meaning-section{background:#ffffff08;border-radius:var(--radius-md);padding:16px;margin-bottom:16px}.meaning-label{font-size:13px;font-weight:700;color:var(--text-muted);margin-bottom:10px}.card-meaning{font-size:15px;color:var(--text-primary);line-height:1.7}.tennis-general-section{background:linear-gradient(135deg,#10b9811a,#10b9810d);border:1px solid rgba(16,185,129,.25);border-radius:var(--radius-lg);padding:20px;margin-bottom:20px;text-align:center}.general-label{font-size:14px;font-weight:700;color:#a7f3d0;margin-bottom:12px}.general-message{font-size:17px;font-weight:600;color:var(--text-primary);line-height:1.6}.category-reading-section{background:#10b98114;border:1px solid rgba(16,185,129,.2);border-radius:var(--radius-lg);padding:20px;margin-bottom:20px}.category-badge{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:linear-gradient(135deg,#059669,#047857);border-radius:20px;font-size:13px;font-weight:700;color:#fff;margin-bottom:16px}.reading-message{margin-bottom:20px}.reading-message p{font-size:17px;font-weight:600;color:var(--text-primary);line-height:1.6;text-align:center}.reading-details{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.reading-item{display:flex;flex-direction:column;gap:6px;padding:12px 16px;background:#0003;border-radius:var(--radius-md)}.reading-item .item-label{font-size:12px;font-weight:700;color:var(--text-muted)}.reading-item p{font-size:14px;color:var(--text-secondary);line-height:1.5}.reading-item.action{border-left:3px solid #10b981}.reading-item.caution{border-left:3px solid #f59e0b}.focus-section{padding-top:16px;border-top:1px solid rgba(16,185,129,.15)}.focus-label{display:block;font-size:12px;font-weight:700;color:var(--text-muted);margin-bottom:10px}.spread-selection{display:flex;flex-direction:column;align-items:center;gap:16px;width:100%;max-width:360px}.selected-category-badge{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#10b98126;border:1px solid rgba(16,185,129,.3);border-radius:20px;cursor:pointer;transition:all .2s}.selected-category-badge:hover{background:#10b98140}.selected-category-badge span:first-child{font-size:18px}.selected-category-badge span:nth-child(2){font-size:14px;font-weight:600;color:#a7f3d0}.change-hint{font-size:11px!important;color:var(--text-muted)!important;font-weight:400!important}.spread-buttons{display:flex;gap:16px;width:100%}.category-context{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:20px;padding:10px 20px;background:linear-gradient(135deg,#10b98126,#0596691a);border:1px solid rgba(16,185,129,.25);border-radius:24px}.context-icon{font-size:20px}.context-label{font-size:14px;font-weight:700;color:#a7f3d0}.reading-section.category-focus{margin-top:20px;padding:16px;background:linear-gradient(135deg,#f59e0b1a,#d977060d);border:1px solid rgba(245,158,11,.2);border-radius:var(--radius-md)}.reading-section.category-focus .section-label{color:#fbbf24}.reading-section.category-focus p{color:#fcd34d;font-weight:500}.category-focus-section{margin-top:16px;padding:16px;background:linear-gradient(135deg,#f59e0b1a,#d977060d);border:1px solid rgba(245,158,11,.2);border-radius:var(--radius-md);text-align:center}.category-focus-section .focus-badge{font-size:13px;font-weight:700;color:#fbbf24;margin-bottom:8px}.category-focus-section p{font-size:14px;color:#fcd34d;font-weight:500}.one-liner-section{margin-top:20px;padding:20px;background:linear-gradient(135deg,#10b9811f,#f59e0b14);border:1px solid rgba(16,185,129,.25);border-radius:var(--radius-lg);text-align:center}.one-liner-label{font-size:13px;font-weight:700;color:#a7f3d0;margin-bottom:12px}.one-liner-text{font-size:15px;font-weight:600;color:var(--text-primary);line-height:1.7;margin-bottom:16px}.hashtag-list{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.hashtag{padding:6px 12px;background:#f59e0b26;border:1px solid rgba(245,158,11,.3);border-radius:16px;font-size:13px;font-weight:600;color:#fbbf24}@media (max-width: 480px){.category-grid{grid-template-columns:repeat(2,1fr);gap:8px}.category-btn{padding:12px 8px}.category-icon{font-size:24px}.spread-buttons{flex-direction:column}.spread-btn{flex-direction:row;justify-content:flex-start;text-align:left}.spread-btn .spread-icon{font-size:32px}.one-card-reading{padding:16px}.reading-section.summary{flex-direction:column;text-align:center}}.analysis-quick-view{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px}.analysis-item{display:flex;align-items:center;gap:12px;padding:16px;background:var(--bg-card);border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-md)}.analysis-item.twelve-stage{background:linear-gradient(135deg,#6366f11a,#6366f10d);border-color:#6366f133}.analysis-item.spirit-stars{background:linear-gradient(135deg,#f59e0b1a,#f59e0b0d);border-color:#f59e0b33}.analysis-emoji{font-size:28px}.analysis-content{display:flex;flex-direction:column;gap:2px}.analysis-label{font-size:11px;color:var(--text-muted)}.analysis-value{font-size:14px;font-weight:700;color:var(--text-primary)}.category-extra-messages{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.05)}.extra-message{font-size:11px;color:var(--text-muted);line-height:1.5;margin-bottom:4px}.extra-message:last-child{margin-bottom:0}.advice-list{list-style:none;padding:0;margin:0}.advice-list li{position:relative;padding-left:20px;font-size:14px;line-height:1.7;color:var(--text-secondary);margin-bottom:10px}.advice-list li:before{content:"→";position:absolute;left:0;color:var(--primary-light)}.detailed-analysis-section{margin-bottom:20px}.toggle-analysis-btn{width:100%;display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:linear-gradient(135deg,#8b5cf626,#6366f11a);border:1px solid rgba(139,92,246,.3);border-radius:var(--radius-md);color:var(--text-primary);font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.toggle-analysis-btn:hover{background:linear-gradient(135deg,#8b5cf640,#6366f133)}.detailed-analysis-content{margin-top:12px;padding:20px;background:var(--bg-card);border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-md);animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.analysis-block{margin-bottom:24px}.analysis-block:last-child{margin-bottom:0}.analysis-block h4{font-size:14px;font-weight:700;color:var(--text-primary);margin-bottom:12px;display:flex;align-items:center;gap:8px}.analysis-text{font-size:14px;line-height:1.7;color:var(--text-secondary)}.analysis-list{list-style:none;padding:0;margin:0}.analysis-list li{font-size:13px;line-height:1.6;color:var(--text-secondary);padding:8px 12px;background:#ffffff05;border-radius:var(--radius-sm);margin-bottom:8px}.analysis-list li:last-child{margin-bottom:0}.analysis-list.detailed li{border-left:3px solid var(--primary)}.spirit-star-badges{display:flex;flex-wrap:wrap;gap:8px}.spirit-star-badge{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:linear-gradient(135deg,#f59e0b26,#f59e0b0d);border:1px solid rgba(245,158,11,.3);border-radius:20px;font-size:13px;font-weight:600;color:var(--text-primary)}@media (max-width: 480px){.analysis-quick-view{grid-template-columns:1fr}.analysis-item{padding:14px}.analysis-emoji{font-size:24px}.toggle-analysis-btn{padding:14px 16px;font-size:14px}.detailed-analysis-content{padding:16px}.analysis-block h4{font-size:13px}.analysis-text,.analysis-list li{font-size:12px}.spirit-star-badge{padding:6px 12px;font-size:12px}}.fortune-page-v2{min-height:100vh;background:radial-gradient(ellipse at 30% 10%,rgba(99,102,241,.12) 0%,transparent 50%),radial-gradient(ellipse at 70% 90%,rgba(245,158,11,.08) 0%,transparent 50%),linear-gradient(180deg,var(--bg-primary) 0%,var(--bg-secondary) 100%)}.fortune-header-v2{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;position:sticky;top:0;background:#0f0f23f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:100;border-bottom:1px solid rgba(255,255,255,.05);max-width:480px;margin:0 auto}.fortune-header-v2 h1{font-size:18px;font-weight:700}.fortune-content-v2{max-width:520px;margin:0 auto;padding:0 20px 100px}.fortune-date-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;margin:16px 0;background:var(--bg-card);border-radius:var(--radius-md)}.date-text{font-size:14px;font-weight:600;color:var(--text-secondary)}.saved-badge{font-size:12px;color:var(--success);background:#10b9811a;padding:4px 10px;border-radius:12px}.guest-banner{display:flex;align-items:center;gap:12px;padding:14px 16px;margin-bottom:16px;background:linear-gradient(135deg,#6366f11a,#6366f10d);border:1px solid rgba(99,102,241,.2);border-radius:var(--radius-md)}.guest-banner p{flex:1;font-size:13px;color:var(--text-secondary);margin:0}.guest-banner button{padding:8px 16px;background:var(--primary);color:#fff;font-size:13px;font-weight:600;border-radius:var(--radius-sm)}.section-title{font-size:16px;font-weight:700;color:var(--text-primary)}.main-score-section{padding:24px;margin-bottom:20px;background:linear-gradient(135deg,#6366f114,#8b5cf60d);border:1px solid rgba(99,102,241,.15);border-radius:var(--radius-xl);text-align:center}.saju-badge-row{display:flex;justify-content:center;gap:10px;margin-bottom:20px;flex-wrap:wrap}.saju-badge{padding:6px 14px;font-size:12px;font-weight:600;border-radius:20px}.saju-badge.day-master{background:#6366f133;color:var(--primary-light)}.saju-badge.today-energy{background:#f59e0b33;color:#fbbf24}.score-display{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:16px}.score-ring{display:flex;align-items:center;justify-content:center;width:120px;height:120px;border-radius:50%;background:var(--bg-card);border:4px solid}.score-display.excellent .score-ring{border-color:#10b981}.score-display.good .score-ring{border-color:#34d399}.score-display.normal .score-ring{border-color:#60a5fa}.score-display.low .score-ring{border-color:#f87171}.score-value{font-size:42px;font-weight:800}.score-display.excellent .score-value{color:#10b981}.score-display.good .score-value{color:#34d399}.score-display.normal .score-value{color:#60a5fa}.score-display.low .score-value{color:#f87171}.score-unit{font-size:16px;font-weight:600;color:var(--text-muted);margin-left:4px}.grade-info{display:flex;align-items:center;gap:8px}.grade-emoji{font-size:28px}.grade-text{font-size:22px;font-weight:800}.grade-description{font-size:13px;color:var(--text-muted);margin-bottom:12px}.fortune-summary{font-size:15px;line-height:1.7;color:var(--text-secondary)}.energy-analysis-section{margin-bottom:24px}.energy-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.energy-card{padding:16px;background:var(--bg-card);border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-md)}.energy-card.ten-god{background:linear-gradient(135deg,#8b5cf61a,#8b5cf608);border-color:#8b5cf633}.energy-card.twelve-stage{background:linear-gradient(135deg,#10b9811a,#10b98108);border-color:#10b98133}.energy-card .card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.energy-card .card-label{font-size:11px;color:var(--text-muted)}.energy-card .card-value{font-size:15px;font-weight:700}.energy-card .card-keyword{font-size:12px;color:var(--primary-light);margin-bottom:8px}.energy-card .card-desc{font-size:12px;line-height:1.5;color:var(--text-secondary)}.energy-level{display:flex;align-items:center;gap:8px;margin-bottom:8px}.energy-label{font-size:11px;color:var(--text-muted)}.energy-bars{display:flex;gap:3px}.energy-bar{width:16px;height:6px;background:#ffffff1a;border-radius:3px}.energy-bar.filled{background:linear-gradient(90deg,#10b981,#34d399)}.element-relation-box{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-md)}.relation-icon{font-size:24px}.element-relation-box p{font-size:13px;line-height:1.5;color:var(--text-secondary);margin:0}.categories-section{margin-bottom:24px}.category-cards-v2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.category-card-v2{padding:16px;background:var(--bg-card);border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-md);transition:all .2s}.category-card-v2.excellent{border-left:3px solid #10b981}.category-card-v2.good{border-left:3px solid #34d399}.category-card-v2.normal{border-left:3px solid #60a5fa}.category-card-v2.low{border-left:3px solid #f87171}.cat-header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.cat-icon{font-size:18px}.cat-name{font-size:13px;font-weight:700;flex:1}.cat-grade{font-size:11px;font-weight:700;padding:3px 8px;border-radius:10px;background:#ffffff1a}.cat-score-bar{position:relative;height:6px;background:#ffffff1a;border-radius:3px;margin-bottom:10px;overflow:hidden}.cat-score-bar .score-fill{height:100%;border-radius:3px;transition:width .5s ease}.category-card-v2.excellent .score-fill{background:#10b981}.category-card-v2.good .score-fill{background:#34d399}.category-card-v2.normal .score-fill{background:#60a5fa}.category-card-v2.low .score-fill{background:#f87171}.cat-score-bar .score-text{position:absolute;right:0;top:-18px;font-size:11px;font-weight:700;color:var(--text-secondary)}.cat-main-msg{font-size:12px;line-height:1.5;color:var(--text-secondary);margin-bottom:8px}.cat-details{margin-bottom:10px}.detail-msg{font-size:11px;color:var(--text-muted);line-height:1.4;margin-bottom:4px}.cat-tip{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#6366f11a;border-radius:var(--radius-sm)}.tip-label{font-size:10px;font-weight:700;color:var(--primary-light)}.tip-text{font-size:11px;color:var(--text-secondary)}.special-analysis-section{margin-bottom:24px}.analysis-box{margin-bottom:12px;background:var(--bg-card);border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-md);overflow:hidden}.analysis-box .box-header{display:flex;align-items:center;gap:10px;padding:14px 16px;cursor:pointer;transition:background .2s}.analysis-box .box-header:hover{background:#ffffff08}.box-icon{font-size:18px}.box-title{flex:1;font-size:14px;font-weight:600}.toggle-icon{font-size:12px;color:var(--text-muted)}.box-content{padding:16px;border-top:1px solid rgba(255,255,255,.05);animation:fadeIn .2s ease}.relation-item{padding:12px;margin-bottom:10px;background:#ffffff05;border-radius:var(--radius-sm)}.relation-item.positive{border-left:3px solid #10b981}.relation-item.negative{border-left:3px solid #f87171}.relation-item.neutral{border-left:3px solid #60a5fa}.rel-type{display:inline-block;padding:3px 10px;font-size:12px;font-weight:700;background:#ffffff1a;border-radius:10px;margin-right:8px}.rel-pillars{font-size:12px;color:var(--text-muted)}.rel-desc{font-size:12px;color:var(--text-secondary);margin-top:8px;line-height:1.5}.analysis-summary{font-size:13px;color:var(--text-secondary);line-height:1.6;margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.05)}.spirit-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.spirit-badge{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:linear-gradient(135deg,#f59e0b26,#f59e0b0d);border:1px solid rgba(245,158,11,.3);border-radius:20px;font-size:13px;font-weight:600}.spirit-interpretation{font-size:13px;line-height:1.6;color:var(--text-secondary)}.lucky-section-v2{margin-bottom:24px}.lucky-grid-v2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.lucky-card{display:flex;align-items:flex-start;gap:12px;padding:16px;background:var(--bg-card);border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-md)}.lucky-card.wide{grid-column:span 2}.lucky-card .lucky-icon{font-size:24px}.lucky-info{display:flex;flex-direction:column;gap:2px}.lucky-label{font-size:11px;color:var(--text-muted)}.lucky-value{font-size:14px;font-weight:700;color:var(--text-primary)}.lucky-reason{font-size:11px;color:var(--text-muted);line-height:1.4}.advice-section-v2{margin-bottom:24px}.main-advice-card{padding:20px;margin-bottom:16px;background:linear-gradient(135deg,#6366f11a,#8b5cf60d);border:1px solid rgba(99,102,241,.2);border-radius:var(--radius-md);text-align:center}.main-advice-text{font-size:15px;font-weight:600;line-height:1.7;color:var(--text-primary);margin:0}.dos-donts-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.advice-list{padding:16px;background:var(--bg-card);border-radius:var(--radius-md)}.advice-list.dos{border-left:3px solid #10b981}.advice-list.donts{border-left:3px solid #f87171}.advice-list h4{font-size:13px;font-weight:700;margin-bottom:10px}.advice-list ul{list-style:none;padding:0;margin:0}.advice-list li{font-size:12px;line-height:1.5;color:var(--text-secondary);margin-bottom:8px;padding-left:12px;position:relative}.advice-list li:before{content:"•";position:absolute;left:0}.advice-list li:last-child{margin-bottom:0}.mindset-card{display:flex;align-items:flex-start;gap:14px;padding:16px;background:linear-gradient(135deg,#f59e0b1a,#f59e0b08);border:1px solid rgba(245,158,11,.2);border-radius:var(--radius-md)}.mindset-icon{font-size:28px}.mindset-content{flex:1}.mindset-label{font-size:11px;color:var(--text-muted);display:block;margin-bottom:4px}.mindset-text{font-size:13px;line-height:1.6;color:var(--text-secondary);margin:0}.detailed-reading-section{margin-bottom:24px}.detailed-toggle{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:linear-gradient(135deg,#8b5cf626,#6366f11a);border:1px solid rgba(139,92,246,.3);border-radius:var(--radius-md);cursor:pointer;font-size:15px;font-weight:600;color:var(--text-primary);transition:all .2s}.detailed-toggle:hover{background:linear-gradient(135deg,#8b5cf640,#6366f133)}.toggle-arrow{font-size:12px;color:var(--text-secondary)}.detailed-content{margin-top:12px;padding:20px;background:var(--bg-card);border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-md);animation:slideDown .3s ease}.saju-profile{margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.05)}.saju-profile h4{font-size:15px;font-weight:700;margin-bottom:12px}.profile-desc{font-size:13px;line-height:1.7;color:var(--text-secondary);margin-bottom:12px}.profile-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.profile-tags .tag{padding:6px 12px;font-size:12px;background:#ffffff0d;border-radius:16px;color:var(--text-secondary)}.balance-info{padding:14px;background:#6366f11a;border-radius:var(--radius-sm)}.balance-label{font-size:13px;font-weight:700;color:var(--primary-light);display:block;margin-bottom:8px}.balance-desc{font-size:12px;line-height:1.6;color:var(--text-secondary);margin:0}.full-reading h4{font-size:15px;font-weight:700;margin-bottom:12px}.reading-text{font-size:13px;line-height:1.8;color:var(--text-secondary);white-space:pre-line}.fortune-actions-v2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}@media (max-width: 480px){.fortune-content-v2{padding:0 16px 100px}.main-score-section{padding:20px}.score-ring{width:100px;height:100px}.score-value{font-size:36px}.energy-cards,.category-cards-v2,.dos-donts-grid,.lucky-grid-v2{grid-template-columns:1fr}.lucky-card.wide{grid-column:span 1}}.loading-state-v2{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;gap:20px}.loading-state-v2 .loading-spinner{font-size:48px;animation:spin 2s linear infinite}.loading-state-v2 p{font-size:14px;color:var(--text-secondary)}.empty-state-v2{display:flex;flex-direction:column;align-items:center;text-align:center;padding:80px 20px;gap:16px}.empty-state-v2 .empty-icon{font-size:64px;opacity:.8}.empty-state-v2 h3{font-size:20px;font-weight:700;color:var(--text-primary)}.empty-state-v2 p{font-size:14px;color:var(--text-secondary);line-height:1.6}.empty-state-v2 .action-btn{margin-top:8px;padding:14px 32px;font-size:15px;font-weight:600;border-radius:var(--radius-md);transition:all .2s}.empty-state-v2 .action-btn.primary{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff}.empty-state-v2 .action-btn.primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px #6366f14d}.record-list-v2{display:flex;flex-direction:column;gap:16px;margin-top:20px}.record-card-v2{background:linear-gradient(135deg,#ffffff0d,#ffffff05);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);padding:20px;cursor:pointer;transition:all .3s ease}.record-card-v2:hover{background:linear-gradient(135deg,#ffffff14,#ffffff0a);border-color:#6366f14d;transform:translateY(-2px);box-shadow:0 8px 24px #0003}.record-card-v2.error{opacity:.6;cursor:not-allowed}.record-card-v2.error:hover{transform:none;box-shadow:none}.record-header-v2{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.record-date-v2{font-size:13px;color:var(--text-muted);font-weight:500}.record-arrow{font-size:16px;color:var(--text-muted);transition:transform .2s}.record-card-v2:hover .record-arrow{transform:translate(4px);color:var(--primary-light)}.record-main-v2{display:flex;align-items:center;gap:20px;margin-bottom:16px}.record-score-circle{width:72px;height:72px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;position:relative}.record-score-circle:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;padding:3px;background:linear-gradient(135deg,var(--score-color-start),var(--score-color-end));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude}.record-score-circle.excellent{--score-color-start: #fbbf24;--score-color-end: #f59e0b}.record-score-circle.good{--score-color-start: #34d399;--score-color-end: #10b981}.record-score-circle.normal{--score-color-start: #60a5fa;--score-color-end: #3b82f6}.record-score-circle.low{--score-color-start: #a78bfa;--score-color-end: #8b5cf6}.record-score-circle .score-num{font-size:24px;font-weight:800;line-height:1;background:linear-gradient(135deg,var(--score-color-start),var(--score-color-end));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.record-score-circle .score-unit{font-size:11px;color:var(--text-muted);margin-top:2px}.record-info-v2{flex:1;min-width:0}.record-grade-v2{display:flex;align-items:center;gap:8px;margin-bottom:8px}.record-grade-v2 .grade-emoji{font-size:20px}.record-grade-v2 .grade-text{font-size:18px;font-weight:700;color:var(--text-primary)}.record-saju-v2{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--text-secondary)}.record-saju-v2 .day-master-symbol{font-size:16px}.record-summary-v2{font-size:14px;color:var(--text-secondary);line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:16px}.record-categories-v2{display:flex;gap:8px;flex-wrap:wrap}.cat-chip{display:flex;align-items:center;gap:4px;padding:6px 12px;background:#ffffff0d;border-radius:20px;font-size:13px}.cat-chip.excellent{background:#fbbf2426;color:#fbbf24}.cat-chip.good{background:#34d39926;color:#34d399}.cat-chip.normal{background:#60a5fa26;color:#60a5fa}.cat-chip.low{background:#a78bfa26;color:#a78bfa}.error-text{font-size:14px;color:var(--text-muted)}@media (max-width: 480px){.record-card-v2{padding:16px}.record-main-v2{gap:16px}.record-score-circle{width:64px;height:64px}.record-score-circle .score-num{font-size:20px}.record-grade-v2 .grade-text{font-size:16px}.record-categories-v2{gap:6px}.cat-chip{padding:5px 10px;font-size:12px}}.record-card-v2.battle-record.pending{opacity:.6;cursor:default}.record-card-v2.battle-record.pending:hover{transform:none;box-shadow:none}.battle-status{font-size:12px;font-weight:700;padding:3px 10px;border-radius:12px}.battle-status.win{background:#22c55e26;color:#22c55e}.battle-status.lose{background:#ef444426;color:#ef4444}.battle-status.draw{background:#eab30826;color:#eab308}.battle-status.pending{background:#a1a1aa26;color:#a1a1aa}.battle-record-vs{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:12px}.battle-record-player{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1}.battle-record-player .player-dm{font-size:28px}.battle-record-player .player-element-badge{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid}.battle-record-player .element-hanja{font-size:24px;font-weight:900}.battle-record-player .player-name{font-size:14px;font-weight:700;color:#e4e4e7}.battle-record-player .player-sub{font-size:11px;font-weight:600}.battle-record-badge{font-size:16px;font-weight:900;color:#f36;text-shadow:0 0 10px rgba(255,51,102,.3)}.battle-record-chemistry{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#ffffff08;border-radius:8px;font-size:13px;color:#a1a1aa}.battle-record-chemistry .chemistry-compat{font-weight:700;color:#f36}.battle-page{min-height:100vh;max-width:480px;margin:0 auto;background:linear-gradient(135deg,#0f0f23,#1a1a2e);padding-bottom:var(--bottom-nav-height)}.battle-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#0000004d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:100}.battle-header h1{font-size:18px;font-weight:700;color:#fff}.battle-content{padding:20px;max-width:500px;margin:0 auto}.battle-intro{text-align:center;padding:30px 0}.battle-intro .intro-icon{font-size:64px;margin-bottom:16px;animation:battle-bounce 2s ease-in-out infinite}@keyframes battle-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.battle-intro h2{font-size:24px;font-weight:700;color:#fff;margin-bottom:8px}.battle-intro p{color:#a1a1aa;font-size:14px;line-height:1.6}.battle-steps{display:flex;align-items:center;justify-content:center;gap:8px;margin:24px 0;flex-wrap:wrap}.battle-steps .step{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#ffffff0d;border-radius:20px;font-size:12px;color:#71717a}.battle-steps .step.active{background:linear-gradient(135deg,#f97316,#ea580c);color:#fff}.battle-steps .step.done{background:#22c55e26;color:#22c55e}.battle-steps .step-num{width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:#fff3;border-radius:50%;font-weight:700;font-size:11px}.battle-steps .step-arrow{color:#71717a;font-size:14px}.battle-form{background:#ffffff0d;border-radius:16px;padding:24px;margin-top:20px}.battle-form .form-title{font-size:16px;font-weight:600;color:#fff;margin-bottom:20px;text-align:center}.battle-note{text-align:center;color:#71717a;font-size:12px;margin-top:24px}.guest-block{text-align:center;padding:60px 20px}.guest-block .block-icon{font-size:64px;margin-bottom:20px}.guest-block h3{font-size:20px;font-weight:700;color:#fff;margin-bottom:8px}.guest-block p{color:#a1a1aa;margin-bottom:24px;line-height:1.6}.saju-profile-card{display:flex;align-items:center;gap:16px;background:linear-gradient(135deg,#f9731633,#ea580c1a);border:1px solid rgba(249,115,22,.3);border-radius:16px;padding:20px;margin-bottom:24px}.profile-symbol{font-size:48px;width:72px;height:72px;display:flex;align-items:center;justify-content:center;background:#0000004d;border-radius:50%}.profile-info{flex:1}.profile-ilju{font-size:28px;font-weight:700;color:#fff;letter-spacing:2px}.profile-element{font-size:14px;margin-top:4px}.profile-balance{font-size:12px;color:#a1a1aa;margin-top:2px}.battle-stats-section{margin-bottom:24px}.battle-stats-section .section-title{font-size:16px;font-weight:600;color:#fff;margin-bottom:12px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.stat-card{background:#ffffff0d;border-radius:12px;padding:14px 8px;text-align:center;border:1px solid transparent}.stat-card.excellent{border-color:#22c55e80;background:#22c55e1a}.stat-card.good{border-color:#3b82f680;background:#3b82f61a}.stat-card.normal{border-color:#eab30880;background:#eab3081a}.stat-card.low{border-color:#ef44444d;background:#ef44441a}.stat-icon{font-size:20px;display:block;margin-bottom:4px}.stat-name{font-size:11px;color:#a1a1aa;display:block}.stat-score{font-size:24px;font-weight:700;color:#fff;display:block;margin:4px 0}.stat-grade{font-size:11px;color:#a1a1aa;display:block}.report-summary,.report-section{background:#ffffff0d;border-radius:12px;padding:16px;margin-bottom:16px}.report-summary .section-title,.report-section h4{font-size:14px;font-weight:600;color:#fff;margin-bottom:8px}.report-summary p,.report-section p{font-size:14px;color:#a1a1aa;line-height:1.6}.advice-card{background:linear-gradient(135deg,#6366f133,#4f46e51a);border:1px solid rgba(99,102,241,.3);border-radius:12px;padding:16px;margin-bottom:16px}.advice-card h4{font-size:14px;font-weight:600;color:#fff;margin-bottom:8px}.advice-card .main-advice{font-size:14px;color:#a1a1aa;line-height:1.6;margin-bottom:12px}.lucky-items{display:flex;gap:12px;flex-wrap:wrap}.lucky-items span{background:#0000004d;padding:6px 12px;border-radius:20px;font-size:12px;color:#a1a1aa}.share-section{margin-top:24px}.share-code-box{background:#f973161a;border:2px dashed rgba(249,115,22,.5);border-radius:12px;padding:20px;text-align:center;margin-bottom:16px}.share-label{font-size:12px;color:#a1a1aa;display:block;margin-bottom:8px}.share-code{font-size:32px;font-weight:700;color:#f97316;letter-spacing:4px}.share-buttons{display:flex;gap:12px}.share-note{text-align:center;color:#71717a;font-size:12px;margin-top:16px}.challenger-card{background:linear-gradient(135deg,#f9731633,#ea580c1a);border:1px solid rgba(249,115,22,.3);border-radius:16px;padding:24px;margin-bottom:24px;position:relative;display:flex;flex-direction:column;align-items:center;text-align:center}.challenger-badge{position:absolute;top:-10px;left:20px;background:#f97316;padding:4px 12px;border-radius:12px;font-size:11px;font-weight:600;color:#fff}.challenger-avatar{font-size:48px;width:72px;height:72px;display:flex;align-items:center;justify-content:center;background:#0000004d;border-radius:50%;margin-bottom:12px}.challenger-info{margin-bottom:16px}.challenger-name{font-size:18px;font-weight:700;color:#fff;display:block}.challenger-saju{font-size:13px;color:#a1a1aa}.vs-badge{font-size:24px;font-weight:700;color:#f97316;margin:12px 0;padding:8px 24px;background:#0000004d;border-radius:20px}.opponent-placeholder{padding:20px}.placeholder-icon{font-size:40px;display:block;margin-bottom:8px;opacity:.5}.placeholder-text{font-size:14px;color:#71717a}.battle-result-page{min-height:100vh;background:linear-gradient(135deg,#0f0f23,#1a1a2e)}.loading-center{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:16px}.battle-intro-animation{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;animation:battle-fadeIn .5s ease-out}@keyframes battle-fadeIn{0%{opacity:0}to{opacity:1}}.intro-vs-container{display:flex;align-items:center;gap:20px}.intro-player{display:flex;flex-direction:column;align-items:center;gap:8px;animation:slideIn .6s ease-out}.intro-player.left{animation-name:slideInLeft}.intro-player.right{animation-name:slideInRight}@keyframes slideInLeft{0%{transform:translate(-50px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInRight{0%{transform:translate(50px);opacity:0}to{transform:translate(0);opacity:1}}.player-symbol{font-size:48px;width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:#ffffff1a;border-radius:50%}.player-name{font-size:16px;font-weight:600;color:#fff}.player-ilju{font-size:13px;color:#a1a1aa}.intro-vs{display:flex;flex-direction:column;align-items:center;gap:8px}.vs-text{font-size:32px;font-weight:700;color:#f97316;animation:battle-pulse 1s ease-in-out infinite}@keyframes battle-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.chemistry-badge{padding:4px 12px;border-radius:12px;font-size:11px;font-weight:600;background:#ffffff1a;color:#a1a1aa}.chemistry-badge.match{background:#ec489933;color:#ec4899}.chemistry-badge.rival{background:#ef444433;color:#ef4444}.intro-message{margin-top:40px;font-size:28px;font-weight:700;color:#fff;animation:fadeInUp .5s ease-out 1s both}@keyframes fadeInUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.battle-rounds-animation{padding:60px 20px 40px;max-width:500px;margin:0 auto}.round-card{background:#ffffff0d;border-radius:16px;padding:20px;margin-bottom:16px;animation:slideUp .5s ease-out;border:2px solid transparent}.round-card.current{border-color:#f9731680;box-shadow:0 0 20px #f9731633}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.round-header{display:flex;align-items:center;gap:8px;margin-bottom:16px}.round-icon{font-size:24px}.round-name{font-size:16px;font-weight:600;color:#fff}.round-scores{display:flex;align-items:center;justify-content:center;gap:24px}.score-side{text-align:center;flex:1}.score-side .score-value{font-size:32px;font-weight:700;color:#fff;display:block}.score-side .score-grade{font-size:12px;color:#a1a1aa}.score-side.winner .score-value{color:#22c55e}.score-vs{font-size:24px;font-weight:700;color:#f97316}.round-winner-tag{text-align:center;margin-top:12px;padding:6px 16px;background:#22c55e33;color:#22c55e;border-radius:20px;font-size:13px;font-weight:600}.round-progress{text-align:center;color:#71717a;font-size:13px;margin-top:20px}.final-result{padding:40px 20px;max-width:500px;margin:0 auto;animation:battle-fadeIn .5s ease-out}.result-banner{text-align:center;padding:40px;border-radius:20px;margin-bottom:24px}.result-banner.win{background:linear-gradient(135deg,#22c55e4d,#16a34a1a);border:2px solid rgba(34,197,94,.5)}.result-banner.lose{background:linear-gradient(135deg,#ef444433,#dc26261a);border:2px solid rgba(239,68,68,.3)}.result-banner.draw{background:linear-gradient(135deg,#eab30833,#ca8a041a);border:2px solid rgba(234,179,8,.3)}.result-icon{font-size:64px;display:block;margin-bottom:16px;animation:battle-bounce 1s ease-in-out infinite}.result-text{font-size:32px;font-weight:700;color:#fff}.score-summary{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:24px}.score-box{flex:1;text-align:center;padding:16px;background:#ffffff0d;border-radius:12px}.summary-name{font-size:14px;color:#a1a1aa;display:block;margin-bottom:4px}.summary-wins{font-size:24px;font-weight:700;color:#fff}.score-vs-final{color:#71717a}.score-vs-final .draws{font-size:14px}.chemistry-card{background:#ffffff0d;border-radius:16px;padding:20px;margin-bottom:24px;border:1px solid transparent}.chemistry-card.match{background:linear-gradient(135deg,#ec489933,#db27771a);border-color:#ec48994d}.chemistry-card.rival{background:linear-gradient(135deg,#ef444433,#dc26261a);border-color:#ef44444d}.chemistry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.chemistry-type{font-size:18px;font-weight:700;color:#fff}.chemistry-score{font-size:24px;font-weight:700;color:#f97316}.chemistry-desc{font-size:14px;color:#a1a1aa;line-height:1.6;margin-bottom:8px}.chemistry-relation{font-size:12px;color:#71717a}.rounds-detail{margin-bottom:24px}.rounds-detail h3{font-size:16px;font-weight:600;color:#fff;margin-bottom:12px}.detail-row{display:flex;align-items:center;padding:12px 16px;background:#ffffff08;border-radius:8px;margin-bottom:8px}.detail-icon{font-size:18px;margin-right:12px}.detail-name{flex:1;font-size:14px;color:#a1a1aa}.detail-scores{display:flex;align-items:center;gap:8px;font-size:16px;color:#71717a}.detail-scores .winner{color:#22c55e;font-weight:700}.detail-vs{color:#3f3f46}.result-actions{display:flex;flex-direction:column;gap:12px}.loser-message-box{background:#ffffff0d;border-radius:16px;padding:20px;margin-bottom:20px}.loser-speech,.winner-speech,.draw-message{padding:12px 16px;border-radius:12px;margin-bottom:12px}.loser-speech:last-child,.winner-speech:last-child,.draw-message:last-child{margin-bottom:0}.loser-speech{background:linear-gradient(135deg,#ef444426,#dc262614);border-left:3px solid #ef4444}.winner-speech{background:linear-gradient(135deg,#22c55e26,#16a34a14);border-left:3px solid #22c55e}.draw-message{background:linear-gradient(135deg,#eab30826,#ca8a0414);border-left:3px solid #eab308}.message-speaker{font-size:12px;font-weight:600;color:#a1a1aa;display:block;margin-bottom:4px}.message-text{font-size:16px;font-weight:600;color:#fff;line-height:1.5;margin:0}.score-summary.mini{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:24px;padding:12px;background:#ffffff08;border-radius:8px;font-size:14px;color:#71717a}.score-summary.mini .draws{color:#eab308}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:16px;text-align:center}.error-state span{font-size:48px}.error-state p{color:#a1a1aa}.battle-stage{display:flex;justify-content:space-between;align-items:center;padding:40px 30px;background:linear-gradient(180deg,#0000004d,#00000080);border-radius:16px;margin-bottom:20px;position:relative;overflow:hidden}.battle-stage:before{content:"";position:absolute;bottom:0;left:0;right:0;height:40px;background:linear-gradient(180deg,transparent,rgba(100,100,100,.3))}.battle-stage.final{background:linear-gradient(180deg,#f973161a,#0006);border:1px solid rgba(249,115,22,.3)}.battle-vs{font-size:32px;font-weight:900;color:#f97316;text-shadow:0 0 20px rgba(249,115,22,.5);animation:vs-pulse 1s ease-in-out infinite;z-index:1}@keyframes vs-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.battle-result-page.platformer-mode{min-height:100vh;background:linear-gradient(180deg,#0a0a14,#1a1a2e);padding:0;display:flex;flex-direction:column}.platformer-battle-container{position:relative;width:100%;max-width:480px;margin:0 auto;padding:20px}.skip-button{position:absolute;top:30px;right:30px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#ffffffb3;padding:8px 16px;border-radius:20px;font-size:14px;cursor:pointer;transition:all .2s ease;z-index:100}.skip-button:hover{background:#fff3;color:#fff}.battle-result-page.platformer-mode .final-result{padding:30px 20px;max-width:480px;margin:0 auto;animation:fadeInUp .5s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
