@font-face{font-family:AppFont;src:url(/fonts/SuperMindset.woff2)format("woff2"),url(/fonts/SuperMindset.woff)format("woff");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+20-7E,U+A0-FF,U+2010-205E}@font-face{font-family:BMJUA;src:url(/fonts/BMJUA.woff2)format("woff2"),url(/fonts/BMJUA.woff)format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Pretendard;font-weight:45 920;font-style:normal;font-display:swap;src:url(https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/variable/woff2/PretendardVariable.woff2)format("woff2-variations")}@font-face{font-family:Paperlogy;font-weight:400;font-style:normal;font-display:swap;src:url(https://cdn.jsdelivr.net/gh/fonts-archive/Paperlogy/Paperlogy-4Regular.woff2)format("woff2"),url(https://cdn.jsdelivr.net/gh/fonts-archive/Paperlogy/Paperlogy-4Regular.woff)format("woff")}@font-face{font-family:Cafe24 Ssurround;font-weight:400;font-style:normal;font-display:swap;src:url(https://cdn.jsdelivr.net/gh/fonts-archive/Cafe24Ssurround/Cafe24Ssurround.woff2)format("woff2"),url(https://cdn.jsdelivr.net/gh/fonts-archive/Cafe24Ssurround/Cafe24Ssurround.woff)format("woff")}.landing{--font-ui:"Pretendard",sans-serif;--font-label:"Paperlogy","Pretendard",sans-serif;--font-cute:"BMJUA","Pretendard",sans-serif;--font-number:"AppFont","BMJUA",sans-serif;--font-title:"Cafe24 Ssurround","BMJUA",sans-serif;--bg:#f8f6ff;--card:#fff;--text-900:#1a1230;--text-700:#5a4f7a;--text-500:#6b5d8f;--text-400:#8b7bb8;--border:#8b5cf629;--border-soft:#8b5cf61a;--primary:#b794f6;--primary-deep:#8b5cf6;--primary-soft:#f0ecfa;--accent-pink:#f0abfc;--accent-pink-bright:#f5d0fe;--accent-purple:#b794f6;--orange:#f59e0b;--green:#10b981;--danger:#ef4444;--live:#ef4444;--blue:#3b82f6;--blue-soft:#eff6ff;font-family:var(--font-ui);color:var(--text-900);letter-spacing:-.18px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background:radial-gradient(at 0 0,#f0abfc17 0%,#0000 42%),radial-gradient(at 100% 100%,#b794f61a 0%,#0000 48%),linear-gradient(#fff 0%,#fdfbff 24%,#faf7ff 100%);font-size:16px;line-height:1.7}.landing *,.landing :before,.landing :after{box-sizing:border-box}.landing a{color:inherit;cursor:pointer;text-decoration:none}.landing button{cursor:pointer;font-family:inherit}.landing .l-container{max-width:1280px;margin:0 auto;padding:0 32px}.landing .l-hero{text-align:center;padding:72px 0 52px}.landing .l-badge{font-family:var(--font-label);color:#7c3aed;background:#f0abfc2e;border:1px solid #b794f62e;border-radius:999px;align-items:center;gap:6px;margin-bottom:22px;padding:8px 15px;font-size:14px;font-weight:800;display:inline-flex;box-shadow:inset 0 1px #ffffff7a}.landing .l-badge:before{content:"";background:var(--accent-pink);border-radius:50%;width:6px;height:6px;animation:1.8s ease-in-out infinite lPulse}@keyframes lPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.landing .l-hero h1{font-family:var(--font-title);letter-spacing:-1.35px;color:var(--text-900);margin:0 0 22px;font-size:62px;font-weight:400;line-height:1.12}.landing .l-hero h1 .accent{color:#7c3aed}.landing .l-hero-desc{font-family:var(--font-ui);color:#5a4f7a;letter-spacing:-.15px;margin:0;font-size:16px;font-weight:500;line-height:1.85}.landing .l-hero-desc strong{color:var(--text-900)}.landing .l-search-box{max-width:640px;color:var(--text-400);background:#fff;border:1px solid #b794f633;border-radius:12px;align-items:center;gap:12px;margin:34px auto 0;padding:16px 22px;display:flex;box-shadow:0 8px 20px #8b5cf60a}.landing .l-search-box:focus-within{border-color:#b794f6;box-shadow:0 0 0 4px #b794f62e}.landing .l-search-box input{font-family:var(--font-ui);color:var(--text-900);background:0 0;border:none;outline:none;flex:1;font-size:15px;font-weight:500}.landing .l-search-box input::placeholder{color:var(--text-400)}.landing .l-search-box{position:relative}.landing .l-search-dropdown{border:1px solid var(--border-soft,#e2e8f0);z-index:100;background:#fff;border-radius:12px;max-height:360px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 32px #0000001f}.landing .l-search-item{color:inherit;cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;text-decoration:none;transition:background .15s;display:flex}.landing .l-search-item:hover{background:var(--bg-alt,#f8fafc)}.landing .l-search-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:32px;height:32px}.landing .l-search-avatar-fallback{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:700;display:flex}.landing .l-search-name{color:var(--text-900,#0f172a);font-size:14px;font-weight:600}.landing .l-search-id{color:var(--text-400,#94a3b8);font-size:12px}.landing .l-hero-cta{font-family:var(--font-ui);color:#fff;cursor:pointer;background:linear-gradient(135deg,#8b5cf6,#b794f6);border:none;border-radius:12px;align-items:center;gap:6px;margin-top:22px;padding:14px 32px;font-size:16px;font-weight:700;transition:transform .15s,box-shadow .15s;display:inline-flex;box-shadow:0 4px 16px #8b5cf640}.landing .l-hero-cta:hover{transform:translateY(-2px);box-shadow:0 6px 24px #8b5cf659}.landing .l-hero-cta:active{transform:translateY(0);box-shadow:0 2px 8px #8b5cf633}.landing .l-stats-row{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:32px;display:grid}.landing .l-stat-card{background:#fff;border:1px solid #b794f633;border-radius:18px;min-height:146px;padding:24px 26px;position:relative;overflow:hidden;box-shadow:0 10px 26px #8b5cf60e}.landing .l-stat-card.primary{color:#fff;background:linear-gradient(135deg,#f0abfc 0%,#b794f6 42%,#7c3aed 100%);border:0;box-shadow:inset 0 1px #ffffff5c,0 12px 26px #7c3aed29}.landing .l-stat-card.primary:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#fff3,#0000 42%);position:absolute;inset:0}.landing .l-stat-head{justify-content:space-between;align-items:center;margin-bottom:16px;font-size:14px;display:flex}.landing .l-stat-label{font-family:var(--font-label);letter-spacing:-.08px;color:#5a4f7a;font-size:14px;font-weight:800;line-height:1.35}.landing .l-stat-card.primary .l-stat-label{color:#ffffffeb;align-items:center;gap:6px;display:inline-flex}.landing .l-stat-card.primary .l-stat-label:before{content:"";background:#4ade80;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 3px #4ade8040}.landing .l-stat-icon{color:var(--text-400);font-size:16px}.landing .l-stat-card.primary .l-stat-icon{color:#fffc;font-size:38px;position:absolute;bottom:22px;right:24px}.landing .l-stat-value{font-family:var(--font-number);letter-spacing:-.25px;color:#7c3aed;margin-bottom:4px;font-size:36px;font-weight:800;line-height:1.12}.landing .l-stat-card.primary .l-stat-value{color:#fff}.landing .l-stat-sub{font-family:var(--font-ui);color:#6b5d8f;font-size:12px;font-weight:600}.landing .l-stat-card.primary .l-stat-sub{color:#ffffffe0}.landing .l-stat-trend{background:#ffffff2e;border-radius:999px;align-items:center;gap:3px;padding:3px 8px;font-size:12px;display:inline-flex}.landing .l-section-title{font-family:var(--font-cute);letter-spacing:-.18px;color:var(--text-900);align-items:center;gap:8px;margin-bottom:14px;padding-left:4px;font-size:19px;font-weight:400;display:flex}.landing .l-section-title:before{content:"";background:#b794f6;border-radius:2px;width:3px;height:14px}.landing .l-monthly-row{grid-template-columns:1fr 1fr 1fr;gap:14px;margin-bottom:32px;display:grid}.landing .l-monthly-card{background:#fff;border:1px solid #b794f633;border-radius:18px;align-items:center;gap:16px;min-height:94px;padding:22px 24px;display:flex;box-shadow:0 10px 26px #8b5cf60e}.landing .l-monthly-icon{color:#b794f6;background:#b794f61f;border-radius:8px;justify-content:center;align-items:center;width:38px;height:38px;font-size:16px;display:flex}.landing .l-monthly-label{font-family:var(--font-label);color:#5a4f7a;margin-bottom:2px;font-size:14px;font-weight:800}.landing .l-monthly-value{font-family:var(--font-number);letter-spacing:-.15px;color:#7c3aed;font-size:25px;font-weight:800}.landing .l-rank-row{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:60px;display:grid}.landing .l-panel{background:#fff;border:1px solid #b794f633;border-radius:20px;padding:24px 26px;box-shadow:0 10px 26px #8b5cf60e}.landing .l-panel-head{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.landing .l-panel-title{font-family:var(--font-cute);letter-spacing:-.15px;color:var(--text-900);align-items:center;gap:8px;font-size:18px;font-weight:400;display:flex}.landing .l-panel-title .icon{color:#b794f6;background:#b794f61f;border-radius:12px;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;display:flex}.landing .l-panel-more{font-family:var(--font-ui);color:#5a4f7a;font-size:13px;font-weight:700}.landing .l-panel-more:hover{color:var(--primary)}.landing .l-tabs{background:0 0;border-radius:0;gap:6px;width:auto;margin:2px 0 18px;padding:0;display:inline-flex}.landing .l-tab{text-align:center;font-family:var(--font-ui);color:#7c3aed;cursor:pointer;background:#f0abfc2e;border:1px solid #b794f62e;border-radius:999px;flex:none;padding:5px 12px;font-size:12px;font-weight:700;box-shadow:inset 0 1px #ffffff7a}.landing .l-tab.active{color:#fff;background:linear-gradient(135deg,#f0abfc 0%,#b794f6 42%,#7c3aed 100%);border:0;box-shadow:inset 0 1px #ffffff5c,0 12px 26px #7c3aed29}.landing .l-panel.live-panel,.landing .l-panel.whale-panel{border-radius:22px;padding:24px 24px 22px}.landing .l-panel.whale-panel .l-rank-list{margin-top:43px}.landing .l-rank-list{flex-direction:column;display:flex}.landing .l-rank-item{cursor:pointer;border-bottom:1px solid #eef2f7;border-radius:6px;grid-template-columns:22px 38px minmax(0,1fr) auto;align-items:center;column-gap:12px;padding:14px 0;transition:background .15s;display:grid}.landing .l-rank-item:last-child{border-bottom:none}.landing .l-rank-item:hover{background:#f0abfc0f}.landing .l-rank-num{font-family:var(--font-ui);color:#a3adbd;text-align:center;font-size:12px;font-weight:700}.landing .l-rank-item:first-child .l-rank-num{color:var(--orange)}.landing .l-rank-avatar{color:#fff;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;font-size:13px;font-weight:800;display:flex;overflow:hidden;box-shadow:0 0 0 3px #b794f629}.landing .l-rank-name{font-family:var(--font-label);color:#111827;white-space:nowrap;text-overflow:ellipsis;margin-bottom:3px;font-size:15px;font-weight:800;overflow:hidden}.landing .l-rank-sub{font-family:var(--font-ui);color:#8a94a6;white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500;overflow:hidden}.landing .l-rank-value{font-family:var(--font-label);text-align:right;color:#7c3aed;white-space:nowrap;margin-bottom:3px;font-size:16px;font-weight:800}.landing .l-rank-value-sub{font-family:var(--font-ui);color:#9aa3b2;text-align:right;white-space:nowrap;margin-top:1px;font-size:11px;font-weight:500}.landing .l-badge-tag{font-family:var(--font-ui);border:1px solid #b794f62e;border-radius:999px;justify-content:center;align-items:center;padding:4px 9px;font-size:11px;font-weight:700;display:inline-flex}.landing .l-tag-whale{color:#7c3aed;background:#f0abfc2e;margin-top:5px}.landing .l-topic-item{border-bottom:1px solid var(--border-soft);align-items:flex-start;gap:10px;padding:13px 0;display:flex}.landing .l-topic-item:last-child{border-bottom:none}.landing .l-topic-item:hover{background:#f0abfc0f}.landing .l-topic-dot{background:#b794f6;border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:8px}.landing .l-topic-title{font-family:var(--font-label);color:var(--text-900);margin-bottom:4px;font-size:15px;font-weight:800}.landing .l-topic-meta{font-family:var(--font-ui);color:#6b5d8f;align-items:center;gap:8px;font-size:12px;font-weight:500;display:flex}.landing .l-topic-meta .sep{opacity:.5}.landing .l-mascot-section{background:radial-gradient(circle at 78% 28%,#f0abfc3d 0%,#0000 34%),linear-gradient(135deg,#fff 0%,#fbf8ff 45%,#f3eeff 100%);border:2px solid #b794f647;border-radius:24px;align-items:center;gap:40px;margin-bottom:24px;padding:48px 56px;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 42px #8b5cf61c,inset 0 1px #ffffffe6}.landing .l-mascot-section:before{content:"";background:radial-gradient(circle,#7c3aed14 0%,#0000 70%);border-radius:50%;width:220px;height:220px;position:absolute;top:-60px;right:-60px}.landing .l-mascot-section:after{content:"";background:radial-gradient(circle,#a78bfa1a 0%,#0000 70%);border-radius:50%;width:160px;height:160px;position:absolute;bottom:-40px;left:30%}.landing .l-mascot-image-wrap{z-index:1;flex-shrink:0;width:260px;position:relative}.landing .l-mascot-image{filter:drop-shadow(0 18px 24px #1a123029);width:100%;height:100%;animation:3.5s ease-in-out infinite catFloat;display:block}@keyframes catFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.landing .l-mascot-floor{background:radial-gradient(#7c3aed26 0%,#0000 70%);width:70%;height:12px;margin:-10px auto 0;animation:3.5s ease-in-out infinite shadowPulse}@keyframes shadowPulse{0%,to{opacity:.8;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}.landing .l-speech-bubble{z-index:1;background:#ffffffe0;border:2px solid #b794f652;border-radius:28px;flex:1;padding:36px 44px 38px;position:relative;box-shadow:0 14px 32px #8b5cf617,inset 0 1px #fffffff2}.landing .l-bubble-badge{font-family:var(--font-cute);color:#fff;letter-spacing:-.2px;background:linear-gradient(135deg,#f0abfc 0%,#b794f6 42%,#7c3aed 100%);border:0;border-radius:999px;margin-bottom:22px;padding:11px 24px;font-size:22px;font-weight:400;display:inline-block;box-shadow:inset 0 1px #ffffff5c,0 12px 26px #7c3aed29}.landing .l-bubble-text{font-family:var(--font-label);color:var(--text-900);letter-spacing:-.12px;font-size:18px;font-weight:600;line-height:1.9}.landing .l-bubble-text .hl{color:#7c3aed}.landing .l-bubble-text p{color:#5a4f7a}.landing .l-feature-grid{grid-template-rows:auto auto;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px;display:grid}.landing .l-feature-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-align:left;background:#ffffffbf;border:1px solid #8b5cf61a;border-radius:16px;padding:22px 18px;transition:transform .25s,box-shadow .25s;position:relative;overflow:hidden}.landing .l-feature-card:before{content:"";opacity:0;border-radius:16px 16px 0 0;height:3px;transition:opacity .25s;position:absolute;top:0;left:0;right:0}.landing .l-feature-card:hover:before{opacity:1}.landing .l-feature-main:before{background:linear-gradient(90deg,#f0abfc,#e879f9)}.landing .l-feature-sub:nth-child(2):before{background:linear-gradient(90deg,#8b5cf6,#a78bfa)}.landing .l-feature-sub:nth-child(3):before{background:linear-gradient(90deg,#4ade80,#34d399)}.landing .l-feature-card:hover{transform:translateY(-6px);box-shadow:0 12px 32px #8b5cf61f}.landing .l-feature-main{grid-column:1/-1;padding:28px 22px}.landing .l-feature-icon{border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:14px;transition:box-shadow .3s;display:flex}.landing .l-glow-pink{background:#f0abfc26}.landing .l-glow-purple{background:#8b5cf61f}.landing .l-glow-green{background:#4ade801f}.landing .l-feature-card:hover .l-glow-pink{box-shadow:0 0 20px #f0abfc66}.landing .l-feature-card:hover .l-glow-purple{box-shadow:0 0 20px #8b5cf659}.landing .l-feature-card:hover .l-glow-green{box-shadow:0 0 20px #4ade8059}.landing .l-feature-title{color:#1a1230;margin-bottom:6px;font-size:15px;font-weight:700}.landing .l-feature-main .l-feature-title{font-size:17px}.landing .l-feature-desc{color:#5a4f7a;font-size:13px;line-height:1.6}.landing .l-feature-demo{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.landing .l-demo-pill{letter-spacing:.2px;border-radius:20px;align-items:center;gap:5px;padding:5px 12px;font-size:12px;font-weight:500;display:inline-flex}.landing .l-demo-pill strong{font-weight:700}.landing .l-demo-pink{color:#d946ef;background:#f0abfc1f}.landing .l-demo-purple{color:#7c3aed;background:#8b5cf61a}.landing .l-demo-green{color:#16a34a;background:#4ade801a}@media (max-width:640px){.landing .l-feature-grid{grid-template-columns:1fr;gap:12px}.landing .l-feature-main{padding:20px 16px}.landing .l-feature-card{padding:18px 14px}}.landing .l-footer{border-top:1px solid var(--border-soft);background:#fff;margin-top:60px;padding:40px 0 50px}.landing .l-footer-inner{max-width:1280px;margin:0 auto;padding:0 32px}.landing .l-footer-copyright{margin-bottom:14px;font-size:15px}.landing .l-footer-biz{color:#5a4f7a;margin-bottom:14px;font-size:13px;line-height:1.9}.landing .l-footer-biz .sep{color:var(--border);margin:0 10px}.landing .l-footer-disclaim{color:#5a4f7a;margin-bottom:22px;font-size:13px;line-height:1.7}.landing .l-footer-links{flex-wrap:wrap;margin-bottom:6px;display:flex}.landing .l-footer-links a{color:var(--text-500);border-right:1px solid var(--border);padding:4px 14px;font-size:14px}.landing .l-footer-links a:first-child{padding-left:0}.landing .l-footer-links a:last-child{border-right:none}.landing .l-footer-links a:hover{color:var(--primary)}@media (max-width:1024px){.landing .l-stats-row{grid-template-columns:repeat(2,1fr)}.landing .l-monthly-row,.landing .l-rank-row{grid-template-columns:1fr}.landing .l-hero h1{font-size:38px}.landing .l-panel.whale-panel .l-rank-list{margin-top:0}}@media (max-width:900px){.landing .l-mascot-section{flex-direction:column-reverse;gap:24px;padding:32px 24px}.landing .l-mascot-image-wrap{width:200px;min-height:230px}.landing .l-bubble-text{font-size:16px}.landing .l-bubble-badge{font-size:17px}.landing .l-speech-bubble{padding:28px 24px}}@media (max-width:768px){.landing .l-logo{font-size:23px}.landing .l-hero h1{font-size:34px;line-height:1.18}.landing .l-hero-desc{font-size:15px}.landing .l-stat-label,.landing .l-monthly-label{font-size:13px}.landing .l-stat-value{font-size:30px}.landing .l-monthly-value{font-size:21px}.landing .l-section-title,.landing .l-panel-title{font-size:17px}.landing .l-rank-name,.landing .l-rank-value,.landing .l-topic-title{font-size:14px}.landing .l-rank-item{grid-template-columns:20px 36px minmax(0,1fr) auto;column-gap:10px;padding:12px 0}.landing .l-panel.whale-panel .l-rank-list{margin-top:38px}}@media (max-width:640px){.landing .l-stats-row{grid-template-columns:1fr}.landing .l-container{padding:0 16px}.landing .l-hero{padding:40px 0 30px}.landing .l-hero h1{font-size:28px}.landing .l-hero-desc{font-size:14px;line-height:1.7}.landing .l-hero-desc br{display:none}.landing .l-hero-cta{justify-content:center;width:60%;padding:14px 20px;font-size:15px}.landing .l-search-box{padding:12px 16px}.landing .l-search-box input{font-size:16px}.landing .l-stat-card{border-radius:14px;min-height:auto;padding:18px 20px}.landing .l-stat-value{font-size:26px}.landing .l-stat-card.primary .l-stat-icon{font-size:28px;bottom:16px;right:18px}.landing .l-monthly-card{border-radius:14px;min-height:auto;padding:16px 18px}.landing .l-monthly-value{font-size:19px}.landing .l-panel{border-radius:16px;padding:18px 16px}.landing .l-panel.live-panel,.landing .l-panel.whale-panel{border-radius:16px;padding:18px 16px 14px}.landing .l-rank-item{column-gap:8px;padding:10px 0}.landing .l-rank-avatar{width:32px;height:32px;font-size:12px}.landing .l-rank-item{grid-template-columns:18px 32px minmax(0,1fr) auto}.landing .l-rank-value{font-size:13px}.landing .l-rank-value-sub{font-size:10px}.landing .l-rank-name{font-size:13px}.landing .l-rank-sub{font-size:11px}.landing .l-badge-tag{padding:3px 7px;font-size:10px}.landing .l-mascot-section{border-radius:18px;gap:18px;margin-bottom:18px;padding:24px 18px}.landing .l-mascot-image-wrap{width:160px}.landing .l-speech-bubble{border-radius:20px;padding:22px 18px}.landing .l-bubble-badge{margin-bottom:14px;padding:8px 18px;font-size:15px}.landing .l-bubble-text{font-size:14px;line-height:1.75}.landing .l-bubble-text p br{display:none}.landing .l-btn-login{border-radius:12px;padding:9px 16px;font-size:14px}.landing .l-logo{font-size:20px}.landing .l-footer-inner{padding:0 16px}.landing .l-footer-biz{font-size:12px;line-height:1.7}.landing .l-footer-biz .sep,.landing .l-footer-biz br{display:none}.landing .l-footer-disclaim{font-size:12px}.landing .l-footer-links{gap:4px}.landing .l-footer-links a{padding:4px 8px;font-size:12px}.landing .l-panel.whale-panel .l-rank-list{margin-top:0}.landing .l-section-title{font-size:16px}.landing .l-tabs{gap:4px}.landing .l-tab{padding:4px 10px;font-size:11px}.landing .l-btn-profile{padding:5px 10px 5px 5px;font-size:13px}.landing .l-profile-avatar{width:24px;height:24px;font-size:11px}.landing .l-profile-name{display:none}}.landing .l-breadcrumb{color:var(--text-500);align-items:center;gap:8px;padding:18px 0 4px;font-size:14px;display:flex}.landing .l-breadcrumb a:hover{color:var(--primary)}.landing .l-breadcrumb .sep{color:var(--border)}.landing .l-breadcrumb .current{color:var(--text-900)}.landing .l-bj-profile{background:#fff;border:1px solid #b794f633;border-radius:14px;align-items:center;gap:22px;margin-bottom:18px;padding:26px 32px;display:flex;box-shadow:0 10px 26px #8b5cf60e}.landing .l-bj-avatar-lg{background:linear-gradient(135deg,var(--primary),#c4b5fd);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:86px;height:86px;font-size:28px;display:flex;box-shadow:0 0 0 3px #b794f629}.landing .l-bj-info{flex:1}.landing .l-bj-name{align-items:center;gap:8px;margin-bottom:6px;font-size:28px;display:flex}.landing .l-bj-desc{color:var(--text-500);font-size:15px}.landing .l-bj-stats-aside{border-left:1px solid var(--border-soft);gap:32px;padding-left:32px;display:flex}.landing .l-bj-aside-item .label{color:var(--text-500);justify-content:center;align-items:center;margin-bottom:4px;font-size:13px;display:flex}.landing .l-bj-aside-item .val{font-size:20px}.landing .l-bj-actions{gap:8px;display:flex}.landing .l-btn-fanjoin{color:#fff;background:linear-gradient(135deg,#f0abfc 0%,#b794f6 42%,#7c3aed 100%);border:none;border-radius:8px;align-items:center;gap:6px;padding:10px 18px;font-size:15px;display:inline-flex;box-shadow:0 12px 26px #7c3aed29}.landing .l-btn-msg{background:var(--bg);color:var(--text-700);border:none;border-radius:8px;align-items:center;gap:6px;padding:10px 16px;font-size:15px;display:inline-flex}.landing .l-tag-live{color:var(--live);background:#fef2f2}.landing .l-tag-partner{color:#4f46e5;background:#eef2ff}.landing .l-tag-best{color:#059669;background:#ecfdf5}.landing .l-live-row{grid-template-columns:1.55fr 1fr;gap:14px;margin-bottom:18px;display:grid}.landing .l-live-card{color:#fff;text-align:center;background:linear-gradient(135deg,#1a1230 0%,#5a4f7a 48%,#b794f6 100%);border-radius:14px;padding:28px;position:relative;overflow:hidden}.landing .l-live-tag{background:var(--live);color:#fff;border-radius:999px;align-items:center;gap:5px;margin-bottom:14px;padding:4px 12px;font-size:12px;display:inline-flex}.landing .l-live-tag:before{content:"";background:#fff;border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite lPulse}.landing .l-live-title{max-width:540px;margin:30px auto 18px;font-size:17px;line-height:1.5}.landing .l-btn-join{color:#fff;background:linear-gradient(135deg,#f0abfc 0%,#b794f6 42%,#7c3aed 100%);border:none;border-radius:999px;align-items:center;gap:6px;padding:12px 26px;font-size:15px;display:inline-flex;box-shadow:0 12px 26px #7c3aed29}.landing .l-btn-join:hover{filter:brightness(1.08)}.landing .l-live-aside{flex-direction:column;gap:14px;display:flex}.landing .l-live-stat{background:#fff;border:1px solid #b794f633;border-radius:12px;flex:1;padding:18px 22px;box-shadow:0 10px 26px #8b5cf60e}.landing .l-live-stat .label{color:var(--text-500);margin-bottom:6px;font-size:13px}.landing .l-live-stat .val{align-items:baseline;gap:8px;font-size:26px;display:flex}.landing .l-live-stat .val .unit{color:var(--text-400);font-size:13px}.landing .l-live-stat .trend{color:var(--green);font-size:13px}.landing .l-month-row{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px;display:grid}.landing .l-month-card{background:#fff;border:1px solid #b794f633;border-radius:12px;padding:18px 22px;position:relative;box-shadow:0 10px 26px #8b5cf60e}.landing .l-month-card .label{color:var(--text-500);margin-bottom:8px;font-size:13px}.landing .l-month-card .val{letter-spacing:-.3px;font-size:24px}.landing .l-month-icon{border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;font-size:14px;display:flex;position:absolute;top:16px;right:16px}.landing .mi-1{color:#d97706;background:#fef3c7}.landing .mi-2{background:var(--primary-soft);color:var(--primary)}.landing .mi-3{background:var(--blue-soft);color:var(--blue)}.landing .mi-4{color:var(--green);background:#ecfdf5}.landing .l-history-row{grid-template-columns:340px 1fr;gap:18px;margin-bottom:18px;display:grid}.landing .l-summary-panel{border:1px solid var(--border-soft);background:#fff;border-radius:14px;padding:22px 24px}.landing .l-summary-header{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:12px;min-height:32px;margin-bottom:18px;display:flex}.landing .l-summary-panel h3{flex-shrink:0;margin:0;font-size:19px;font-weight:400;line-height:32px}.landing .l-summary-month-control{flex-shrink:0;align-items:center;display:flex}.landing .l-year-picker{gap:8px;margin-bottom:18px;font-size:14px;display:flex}.landing .l-picker{background:var(--bg);border-radius:8px;flex:1;justify-content:center;align-items:center;gap:6px;padding:6px 10px;display:inline-flex}.landing .l-picker-arrow{color:var(--text-400);font-size:10px}.landing .l-summary-stat{border-bottom:1px solid var(--border-soft);padding:12px 0}.landing .l-summary-stat:last-child{border-bottom:none}.landing .l-summary-stat .label{color:var(--text-500);margin-bottom:3px;font-size:13px}.landing .l-summary-stat .val{font-size:20px}.landing .l-summary-stat-h{justify-content:space-between;align-items:center;padding:8px 0;display:flex}.landing .l-summary-stat-h .label{color:var(--text-500);font-size:13px}.landing .l-summary-stat-h .val{font-size:14px}.landing .l-chart-panel{border:1px solid var(--border-soft);background:#fff;border-radius:14px;padding:22px 24px}.landing .l-chart-tabs{flex-wrap:wrap;gap:8px;margin:12px 0 18px;display:flex}.landing .l-chart-tab{color:var(--text-500);background:#f0abfc2e;border:1px solid #b794f62e;border-radius:999px;padding:6px 14px;font-size:14px}.landing .l-chart-tab.active{background:var(--primary);color:#fff}.landing .l-chart-tab:hover:not(.active){background:var(--border-soft)}.landing .l-month-picker{height:32px;color:var(--text-700,#334155);cursor:pointer;background:#faf5ff8c;border:1px solid #b794f633;border-radius:8px;outline:none;padding:0 10px;font-size:13px;line-height:32px}.landing .l-month-picker:focus{border-color:var(--primary,#7c3aed)}.landing .l-chart-area{height:260px;padding:10px 0 20px 50px;position:relative}.landing .l-chart-y-axis{width:50px;color:var(--text-400);flex-direction:column-reverse;justify-content:space-between;font-size:11px;display:flex;position:absolute;top:10px;bottom:30px;left:0}.landing .l-chart-bars{border-bottom:1px solid var(--border-soft);align-items:flex-end;gap:2%;height:100%;padding-bottom:18px;display:flex}.landing .l-chart-bar{background:linear-gradient(#f5d0fe 0%,#f0abfc 35%,#b794f6 72%,#7c3aed 100%);border-radius:3px 3px 0 0;flex:1;min-height:1px;transition:opacity .15s}.landing .l-chart-bar:hover{opacity:.8}.landing .l-chart-x-labels{color:var(--text-400);justify-content:space-between;padding:6px 0 0 50px;font-size:11px;display:flex}.landing .l-extra-row{grid-template-columns:1fr 1fr;gap:18px;margin:18px 0;display:grid}.landing .l-hour-chart{border-bottom:1px solid var(--border-soft);align-items:flex-end;gap:3px;height:160px;padding:10px 0;display:flex}.landing .l-hour-bar{background:linear-gradient(#f5d0fe 0%,#f0abfc 35%,#b794f6 72%,#7c3aed 100%);border-radius:2px 2px 0 0;flex:1;min-height:2px}.landing .l-hour-labels{color:var(--text-400);justify-content:space-between;padding:6px 0;font-size:11px;display:flex}.landing .l-activity-list{flex-direction:column;gap:10px;display:flex}.landing .l-activity-item{align-items:center;gap:10px;padding:8px 0;display:flex}.landing .l-activity-dot{background:var(--primary);border-radius:50%;flex-shrink:0;width:8px;height:8px}.landing .l-activity-item.live .l-activity-dot{background:var(--live);animation:1.5s infinite lPulse}.landing .l-activity-text{flex:1;font-size:14px}.landing .l-activity-text .who{color:var(--primary)}.landing .l-activity-time{color:var(--text-400);font-size:12px}.landing .l-fan-table{border-collapse:collapse;width:100%;font-size:14px}.landing .l-fan-table thead th{text-align:left;background:var(--bg);color:var(--text-500);padding:12px 14px;font-size:13px;font-weight:400}.landing .l-fan-table thead th:first-child{border-radius:8px 0 0 8px}.landing .l-fan-table thead th:last-child{border-radius:0 8px 8px 0}.landing .l-fan-table tbody tr{border-bottom:1px solid var(--border-soft);transition:background .15s}.landing .l-fan-table tbody tr:hover{background:var(--bg)}.landing .l-fan-table tbody td{padding:14px}.landing .l-fan-table .col-rank{color:var(--primary);width:50px}.landing .l-fan-table .col-fan{align-items:center;gap:10px;display:flex}.landing .l-fan-mini-avatar{color:#fff;background:linear-gradient(135deg,#cbd5e1,#94a3b8);border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:11px;display:flex;box-shadow:0 0 0 3px #b794f629}.landing .l-col-pct{color:var(--text-500);align-items:center;gap:8px;font-size:12px;display:inline-flex}.landing .l-col-pct-bar{background:var(--border-soft);border-radius:2px;width:90px;height:4px;position:relative;overflow:hidden}.landing .l-col-pct-fill{background:linear-gradient(90deg,#f0abfc,#b794f6,#7c3aed);border-radius:2px;position:absolute;top:0;bottom:0;left:0}.landing .l-session-list{flex-direction:column;gap:10px;display:flex}.landing .l-session-item{border:1px solid var(--border-soft);border-radius:10px;align-items:center;gap:18px;padding:14px;transition:border-color .15s;display:flex}.landing .l-session-item:hover{border-color:var(--primary)}.landing .l-session-thumb{width:96px;height:56px;color:var(--primary);background:linear-gradient(135deg,#c4b5fd,#ddd6fe);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;display:flex}.landing .l-session-meta{color:var(--text-500);gap:22px;font-size:13px;display:flex}.landing .l-session-meta span{align-items:center;gap:4px;display:inline-flex}.landing .l-whale-profile{color:#fff;background:linear-gradient(135deg,#1a1230 0%,#5a4f7a 48%,#b794f6 100%);border-radius:14px;margin-bottom:18px;padding:32px;position:relative;overflow:hidden}.landing .l-whale-profile:before{content:"💎";opacity:.08;font-size:130px;position:absolute;top:50%;right:32px;transform:translateY(-50%)}.landing .l-whale-head{z-index:1;align-items:center;gap:22px;margin-bottom:26px;display:flex;position:relative}.landing .l-whale-avatar-lg{color:#fff;background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:86px;height:86px;font-size:32px;display:flex;box-shadow:0 0 0 4px #fbbf2433}.landing .l-whale-name{letter-spacing:-.5px;align-items:center;gap:10px;margin-bottom:6px;font-size:30px;display:flex}.landing .l-whale-meta{color:#ffffffb3;gap:18px;font-size:14px;display:flex}.landing .l-whale-stats{z-index:1;grid-template-columns:repeat(4,1fr);gap:32px;display:grid;position:relative}.landing .l-whale-stat-label{color:#fff9;margin-bottom:4px;font-size:13px}.landing .l-whale-stat-val{letter-spacing:-.3px;font-size:24px}.landing .l-whale-stat-sub{color:#ffffff80;margin-top:2px;font-size:12px}.landing .l-tier-badge{color:#fff;border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:13px;display:inline-flex}.landing .l-tier-diamond{background:linear-gradient(135deg,#60a5fa,#2563eb)}.landing .l-tier-platinum{background:linear-gradient(135deg,#94a3b8,#475569)}.landing .l-tier-gold{background:linear-gradient(135deg,#fbbf24,#f59e0b)}.landing .l-rival-alert{background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #fecaca;border-radius:12px;align-items:center;gap:14px;margin-bottom:18px;padding:16px 20px;display:flex}.landing .l-rival-icon{background:var(--live);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:16px;display:flex}.landing .l-rival-text{flex:1}.landing .l-rival-text .t{color:#991b1b;margin-bottom:2px;font-size:15px}.landing .l-rival-text .s{color:#7f1d1d;font-size:13px}.landing .l-tag-rival{color:var(--live);background:#fef2f2}.landing .l-loyalty-cards{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px;display:grid}.landing .l-loyalty-card{text-align:center;background:#fff;border:1px solid #b794f633;border-radius:12px;padding:20px;box-shadow:0 10px 26px #8b5cf60e}.landing .l-loyalty-icon{background:var(--primary-soft);border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;margin:0 auto 10px;font-size:20px;display:flex}.landing .l-loyalty-val{margin-bottom:4px;font-size:24px}.landing .l-loyalty-label{color:var(--text-500);font-size:13px}.landing .l-whale-grid{grid-template-columns:1.4fr 1fr;gap:18px;margin-bottom:18px;display:grid}.landing .l-bj-distribution{flex-direction:column;gap:12px;display:flex}.landing .l-bj-bar-head{cursor:pointer;align-items:center;gap:10px;margin-bottom:6px;display:flex}.landing .l-bj-bar-head:hover .l-bj-bar-name{color:var(--primary)}.landing .l-bj-bar-avatar{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:11px;display:flex}.landing .l-bj-bar-name{flex:1;font-size:14px}.landing .l-bj-bar-amount{color:#7c3aed;font-size:14px}.landing .l-bj-bar-rail{background:var(--border-soft);border-radius:4px;height:8px;overflow:hidden}.landing .l-bj-bar-fill{background:linear-gradient(90deg,#f0abfc,#b794f6,#7c3aed);border-radius:4px;height:100%}.landing .l-bj-bar-sub{color:var(--text-400);justify-content:space-between;margin-top:4px;font-size:12px;display:flex}.landing .l-donut-wrap{flex-direction:column;align-items:center;padding:16px 0;display:flex}.landing .l-donut{width:180px;height:180px;position:relative}.landing .l-donut svg{transform:rotate(-90deg)}.landing .l-donut-center{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.landing .l-donut-center .big{font-size:24px}.landing .l-donut-center .small{color:var(--text-500);font-size:12px}.landing .l-donut-legend{width:100%;margin-top:18px}.landing .l-legend-item{align-items:center;gap:10px;padding:6px 0;font-size:13px;display:flex}.landing .l-legend-dot{border-radius:3px;flex-shrink:0;width:10px;height:10px}.landing .l-legend-name{flex:1}.landing .l-legend-val{color:var(--text-500)}.landing .l-heatmap{grid-template-columns:repeat(24,1fr);gap:3px;margin-top:14px;display:grid}.landing .l-heat-cell{aspect-ratio:1;background:var(--border-soft);border-radius:2px}.landing .l-heat-labels{color:var(--text-400);justify-content:space-between;margin-top:6px;font-size:11px;display:flex}.landing .l-heat-legend{color:var(--text-500);align-items:center;gap:6px;margin-top:14px;font-size:12px;display:flex}.landing .l-heat-legend-scale{gap:2px;display:flex}.landing .l-heat-legend-scale>div{border-radius:2px;width:14px;height:14px}.landing .l-timeline{padding-left:26px;position:relative}.landing .l-timeline:before{content:"";background:var(--border-soft);width:2px;position:absolute;top:8px;bottom:8px;left:9px}.landing .l-timeline-item{border-bottom:1px solid var(--border-soft);padding:12px 0;position:relative}.landing .l-timeline-item:last-child{border-bottom:none}.landing .l-timeline-item:before{content:"";background:var(--primary);width:12px;height:12px;box-shadow:0 0 0 1px var(--primary);border:2px solid #fff;border-radius:50%;position:absolute;top:18px;left:-22px}.landing .l-timeline-time{color:var(--text-400);margin-bottom:4px;font-size:12px}.landing .l-timeline-event{font-size:15px;line-height:1.5}.landing .l-timeline-event .who{color:var(--primary)}.landing .l-timeline-amount{color:var(--orange);margin-left:4px;font-size:15px}@media (max-width:1024px){.landing .l-month-row,.landing .l-loyalty-cards{grid-template-columns:repeat(2,1fr)}.landing .l-history-row,.landing .l-live-row,.landing .l-whale-grid,.landing .l-whale-stats,.landing .l-extra-row{grid-template-columns:1fr}.landing .l-bj-profile{flex-wrap:wrap}.landing .l-bj-stats-aside{border-left:none;border-top:1px solid var(--border-soft);width:100%;padding-top:16px;padding-left:0}}@media (max-width:768px){.landing .l-bj-profile{gap:14px;padding:20px}.landing .l-bj-avatar-lg{width:64px;height:64px;font-size:22px}.landing .l-bj-name{flex-wrap:wrap;gap:6px;font-size:22px}.landing .l-bj-desc{font-size:13px}.landing .l-bj-stats-aside{gap:20px}.landing .l-bj-aside-item .val{font-size:17px}.landing .l-live-card{padding:22px 18px}.landing .l-live-title{font-size:15px}.landing .l-live-stat{padding:14px 16px}.landing .l-live-stat .val{font-size:22px}.landing .l-month-card{padding:14px 16px}.landing .l-month-card .val{font-size:20px}.landing .l-month-card .label{font-size:12px}.landing .l-month-icon{width:26px;height:26px;font-size:12px}.landing .l-summary-panel{padding:18px 16px}.landing .l-summary-panel h3{font-size:16px}.landing .l-summary-stat .val{font-size:17px}.landing .l-chart-panel{padding:18px 16px}.landing .l-chart-area{height:200px;padding:10px 0 20px 40px}.landing .l-chart-y-axis{width:40px}.landing .l-chart-x-labels{padding-left:40px;font-size:10px}.landing .l-hour-chart{height:120px}.landing .l-session-item{gap:12px;padding:12px}.landing .l-session-thumb{width:72px;height:42px}.landing .l-session-meta{flex-wrap:wrap;gap:8px 16px}.landing .l-fan-table{font-size:13px}.landing .l-fan-table thead th{padding:10px 8px;font-size:12px}.landing .l-fan-table tbody td{padding:10px 8px}.landing .l-col-pct-bar{width:60px}.landing .l-whale-profile{padding:22px 18px}.landing .l-whale-profile:before{font-size:80px;right:16px}.landing .l-whale-head{gap:14px;margin-bottom:18px}.landing .l-whale-avatar-lg{width:64px;height:64px;font-size:24px}.landing .l-whale-name{flex-wrap:wrap;gap:8px;font-size:22px}.landing .l-whale-meta{flex-wrap:wrap;gap:8px 14px;font-size:13px}.landing .l-whale-stats{grid-template-columns:repeat(2,1fr);gap:16px}.landing .l-whale-stat-val{font-size:20px}.landing .l-whale-stat-label{font-size:12px}.landing .l-loyalty-cards{grid-template-columns:repeat(2,1fr)}.landing .l-loyalty-card{padding:16px 14px}.landing .l-loyalty-icon{width:38px;height:38px}.landing .l-loyalty-val{font-size:20px}.landing .l-loyalty-label{font-size:12px}.landing .l-rival-alert{flex-wrap:wrap;gap:10px;padding:14px 16px}.landing .l-rival-text .t{font-size:14px}.landing .l-rival-text .s{font-size:12px}.landing .l-bj-bar-name,.landing .l-bj-bar-amount{font-size:13px}.landing .l-bj-bar-avatar{width:26px;height:26px;font-size:10px}.landing .l-donut,.landing .l-donut svg{width:150px;height:150px}.landing .l-donut-center .big{font-size:20px}.landing .l-legend-item{font-size:12px}.landing .l-heatmap{gap:2px;min-width:0;overflow-x:auto}.landing .l-heat-legend{flex-wrap:wrap;gap:4px 8px;font-size:11px}.landing .l-timeline-event{font-size:14px}.landing .l-breadcrumb{gap:6px;padding:14px 0 2px;font-size:13px}.landing .l-panel{border-radius:16px;padding:18px 16px}.landing .l-panel-head{margin-bottom:12px}.landing .l-panel-title{gap:6px;font-size:16px}.landing .l-panel-title .icon{width:22px;height:22px;font-size:12px}.landing .l-panel-more{font-size:12px}}@media (max-width:640px){.landing .l-bj-profile{flex-direction:column;align-items:flex-start;padding:18px 16px}.landing .l-bj-avatar-lg{width:56px;height:56px;font-size:18px}.landing .l-bj-name{font-size:20px}.landing .l-bj-stats-aside{flex-direction:row;justify-content:space-around;gap:12px}.landing .l-live-card{padding:18px 16px}.landing .l-live-title{margin-bottom:14px;font-size:14px}.landing .l-btn-join{padding:10px 20px;font-size:14px}.landing .l-live-stat .val{font-size:20px}.landing .l-month-row{grid-template-columns:1fr 1fr;gap:10px}.landing .l-month-card .val{font-size:18px}.landing .l-chart-area{height:180px;padding:8px 0 18px 36px}.landing .l-chart-y-axis{width:36px;font-size:10px}.landing .l-chart-x-labels{padding-left:36px}.landing .l-session-item{flex-direction:column;align-items:flex-start;gap:8px}.landing .l-session-thumb{width:100%;height:48px}.landing .l-fan-table .col-rank{width:30px}.landing .l-fan-mini-avatar{width:24px;height:24px;font-size:10px}.landing .l-whale-profile{padding:18px 16px}.landing .l-whale-profile:before{display:none}.landing .l-whale-head{flex-direction:column;align-items:flex-start;gap:10px}.landing .l-whale-avatar-lg{width:52px;height:52px;font-size:20px}.landing .l-whale-name{font-size:20px}.landing .l-whale-stats{grid-template-columns:1fr 1fr;gap:12px}.landing .l-whale-stat-val{font-size:18px}.landing .l-loyalty-cards{grid-template-columns:1fr 1fr;gap:10px}.landing .l-loyalty-card{padding:14px 12px}.landing .l-loyalty-val{font-size:18px}.landing .l-rival-alert{flex-direction:column;align-items:flex-start}.landing .l-tag-rival{align-self:flex-start}.landing .l-donut,.landing .l-donut svg{width:130px;height:130px}.landing .l-donut-center .big{font-size:17px}.landing .l-donut-center .small{font-size:11px}.landing .l-heat-legend-scale>div{width:12px;height:12px}.landing .l-heat-legend{font-size:10px}.landing .l-heatmap{gap:1px}.landing .l-breadcrumb{font-size:12px}.landing .l-footer{margin-top:40px;padding:28px 0 36px}.landing .l-footer-copyright{font-size:13px}}.landing .login-page{align-items:center;gap:60px;max-width:1280px;min-height:calc(100vh - 190px);margin:0 auto;padding:40px 32px;display:flex}.landing .login-left{flex:1;justify-content:center;align-items:center;display:flex}.landing .login-left-content{text-align:center;max-width:400px}.landing .login-mascot-wrap{justify-content:center;align-items:center;margin-bottom:20px;margin-left:40px;display:flex;position:relative}.landing .login-mascot{object-fit:contain;filter:drop-shadow(0 20px 40px #8b5cf626);width:250px;height:250px;animation:3s ease-in-out infinite loginFloat}@keyframes loginFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.landing .login-welcome-title{font-family:var(--font-cute);color:#7c3aed;letter-spacing:-.5px;margin-bottom:10px;font-size:28px}.landing .login-welcome-desc{color:var(--text-500);margin-bottom:20px;font-size:16px;font-weight:500;line-height:1.7}.landing .login-feature-pills{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.landing .login-pill{color:#7c3aed;background:#8b5cf614;border:1px solid #8b5cf61f;border-radius:999px;align-items:center;gap:5px;padding:7px 14px;font-size:13px;font-weight:500;display:inline-flex}.landing .login-right{flex:1;justify-content:center;max-width:460px;display:flex}.landing .login-card{background:#fff;border:1px solid #b794f633;border-radius:20px;width:100%;padding:36px 32px;box-shadow:0 20px 50px #8b5cf614,0 0 0 1px #8b5cf60a}.landing .login-tabs{background:var(--bg);border-radius:12px;gap:4px;margin-bottom:28px;padding:4px;display:flex}.landing .login-tab{font-family:var(--font-label);color:var(--text-500);background:0 0;border:none;border-radius:10px;flex:1;padding:10px 0;font-size:15px;font-weight:600;transition:all .2s}.landing .login-tab.active{color:#7c3aed;background:#fff;box-shadow:0 2px 8px #8b5cf61a}.landing .login-tab:hover:not(.active){color:var(--text-700)}.landing .login-forgot-header{align-items:center;gap:10px;margin-bottom:24px;display:flex}.landing .login-back-btn{color:var(--text-500);background:0 0;border:none;border-radius:8px;align-items:center;padding:4px;display:flex}.landing .login-back-btn:hover{background:var(--bg);color:#7c3aed}.landing .login-forgot-title{font-family:var(--font-label);color:var(--text-900);font-size:18px;font-weight:700}.landing .login-forgot-desc{color:var(--text-500);margin-bottom:20px;font-size:14px;line-height:1.7}.landing .login-form{flex-direction:column;gap:14px;display:flex}.landing .login-input-wrap{background:#fff;border:1.5px solid #b794f633;border-radius:12px;align-items:center;gap:10px;padding:0 14px;transition:border-color .2s,box-shadow .2s;display:flex}.landing .login-input-wrap:focus-within{border-color:#b794f6;box-shadow:0 0 0 3px #b794f61f}.landing .login-input-icon{color:var(--text-400);flex-shrink:0}.landing .login-input{text-indent:10px;font-size:15px;font-family:var(--font-ui);color:var(--text-900);background:0 0;border:none;outline:none;flex:1;padding:13px 0}.landing .login-input::placeholder{color:var(--text-400)}.landing .login-eye-btn{color:var(--text-400);background:0 0;border:none;border-radius:6px;padding:4px;display:flex}.landing .login-eye-btn:hover{color:var(--text-700);background:var(--bg)}.landing .login-options{justify-content:flex-end;margin:-4px 0 4px;display:flex}.landing .login-forgot-link{color:var(--text-500);background:0 0;border:none;padding:2px 0;font-size:13px}.landing .login-forgot-link:hover{color:#7c3aed}.landing .login-submit{width:100%;font-family:var(--font-label);text-shadow:1px 1px 2px gray;color:#fff;background:linear-gradient(135deg,#f0abfc 0%,#b794f6 42%,#7c3aed 100%);border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;margin-top:6px;padding:14px 0;font-size:16px;font-weight:700;transition:filter .2s,box-shadow .2s;display:flex;box-shadow:0 12px 26px #7c3aed2e}.landing .login-submit:hover:not(:disabled){filter:brightness(1.06);box-shadow:0 16px 32px #7c3aed3d}.landing .login-submit:disabled{opacity:.6;cursor:not-allowed}.landing .login-spinner{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.landing .login-info-box{color:#7c3aed;background:#8b5cf60f;border:1px solid #8b5cf61f;border-radius:12px;align-items:flex-start;gap:10px;padding:14px 16px;display:flex}.landing .login-info-title{margin-bottom:2px;font-size:14px;font-weight:600}.landing .login-info-desc{color:var(--text-500);font-size:13px}@media (max-width:900px){.landing .login-page{flex-direction:column;gap:30px;padding:24px 20px}.landing .login-left{display:flex}.landing .login-mascot{width:200px;height:200px}.landing .login-welcome-title{font-size:24px}.landing .login-welcome-desc{font-size:14px}.landing .login-right{width:100%;max-width:100%}}@media (max-width:768px){.landing .login-left-content{text-align:center}.landing .login-feature-pills{justify-content:center}}@media (max-width:640px){.landing .login-page{gap:0;padding:16px}.landing .login-left{display:none}.landing .login-card{border-radius:16px;padding:24px 20px}.landing .login-tabs{margin-bottom:20px}.landing .login-tab{padding:9px 0;font-size:14px}.landing .login-input{font-size:16px}.landing .login-submit{padding:13px 0;font-size:15px}}
