@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700&display=swap";:root{--bg-color:#050811;--text-color:#f8fafc;--glass-bg:#ffffff08;--glass-border:#ffffff14;--primary:#3b82f6;--primary-glow:#3b82f680;--accent:#22c55e;--accent-glow:#22c55e80;--test-initial:#0f172a;--test-wait:#ef4444;--test-ready:#eab308;--test-action:#22c55e}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-color);flex-direction:column;min-height:100vh;font-family:Inter,sans-serif;display:flex}#root{flex-direction:column;width:100%;min-height:100vh;display:flex}.glass{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);box-shadow:0 8px 32px #0000005e}.btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:.5rem;padding:.5rem 1rem;font-family:Inter,sans-serif;font-weight:500;transition:all .2s}.btn:hover{background:var(--primary-hover);transform:translateY(-1px)}.nav{z-index:1000;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#05081199;border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;width:100%;padding:1rem 2rem;display:flex;position:fixed;top:0}.nav-left{align-items:center;display:flex}.nav-right{align-items:center;gap:1.5rem;display:flex}.watermark{color:#fbbf24;opacity:.9;cursor:pointer;-webkit-user-select:none;user-select:none;letter-spacing:.05em;text-shadow:0 0 10px #fbbf244d;border-radius:.4rem;padding:.3rem .6rem;font-size:.75rem;font-weight:700;transition:all .3s}.watermark:hover{opacity:1;color:#64748b;background:#ffffff0d}.nav-link{color:var(--text-color);opacity:.7;font-size:.9rem;font-weight:500;text-decoration:none;transition:all .2s}.nav-link:hover{opacity:1;color:var(--primary)}@media (width<=768px){.nav{padding:.8rem 1rem}.nav-right{gap:.8rem}.watermark{padding:.2rem .4rem;font-size:.7rem}}.user-header-info{background:#ffffff08;border:1px solid #ffffff0d;border-radius:999px;align-items:center;gap:.5rem;padding:.15rem .6rem;display:flex}.header-nickname{color:#e2e8f0;white-space:nowrap;text-overflow:ellipsis;max-width:80px;font-size:.8rem;font-weight:700;overflow:hidden}.logout-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:.3rem;padding:.2rem .4rem;font-size:.75rem;font-weight:600;transition:all .2s}.logout-btn:hover{color:#ef4444;background:#ef44440d}.test-container{text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:100vh;transition:background-color .1s;display:flex;position:relative}.test-container.dashboard-active{justify-content:flex-start;padding-top:85px}.test-container h1{margin-bottom:1rem;font-size:3rem;font-weight:700}.test-container p{opacity:.7;margin-top:1rem;font-size:1.1rem}.guide-text{opacity:.6;text-align:center;pointer-events:none;white-space:pre-wrap;max-width:80%;font-size:.9rem;position:absolute;bottom:2rem}.my-page-container{flex:1;width:100%;max-width:1000px;margin:0 auto;padding:80px 2rem 2rem}.stats-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2rem;display:grid}.stat-card{text-align:center;border-radius:1rem;padding:1.5rem}.stat-title{opacity:.7;margin-bottom:.5rem;font-size:.9rem}.stat-value{color:var(--primary);font-size:2rem;font-weight:700}.chart-container{border-radius:1rem;height:400px;margin-bottom:2rem;padding:1.5rem}.ad-container{background:var(--glass-bg);color:#ffffff4d;border-radius:.5rem;justify-content:center;align-items:center;width:100%;min-height:100px;margin-top:1rem;display:flex}.modal-overlay{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{text-align:center;border-radius:1rem;width:90%;max-width:400px;padding:2.5rem}.view-results-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:.5rem;margin-top:1.5rem;padding:1rem 2rem;font-size:1.2rem;font-weight:600;transition:transform .2s,background .2s}.view-results-btn:hover{background:#2563eb;transform:scale(1.05)}.leaderboard-overlay,.full-ranking-overlay{z-index:990;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000d9;justify-content:center;align-items:flex-start;padding:100px 1.5rem 2rem;display:flex;position:fixed;inset:0;overflow-y:auto}.leaderboard-content,.full-ranking-content{width:100%;max-width:600px;max-height:85vh;box-shadow:0 0 50px #00000080, 0 0 0 1px var(--glass-border);border-radius:1.5rem;flex-direction:column;margin-bottom:2rem;padding:2.5rem 2rem 2rem;display:flex;overflow:hidden}.my-summary{text-align:center;border-bottom:1px solid var(--glass-border);margin-bottom:1.5rem;padding-top:.5rem;padding-bottom:1.5rem}.rank-text{color:var(--secondary);margin-top:.5rem;font-size:1.2rem}.congrats-msg{color:#fbbf24;margin-top:.5rem;font-weight:700;animation:.5s infinite alternate bounce}.table-wrapper{border:1px solid var(--glass-border);background:#0003;border-radius:.5rem;flex:1;margin-top:1rem;margin-bottom:1.5rem;overflow-y:auto;box-shadow:inset 0 2px 10px #0000004d}.table-wrapper::-webkit-scrollbar{width:5px}.table-wrapper::-webkit-scrollbar-track{background:0 0}.table-wrapper::-webkit-scrollbar-thumb{background:#3b82f640;border-radius:999px;transition:background .2s}.table-wrapper::-webkit-scrollbar-thumb:hover{background:#3b82f680}.ranking-table{border-collapse:collapse;table-layout:fixed;width:100%}.ranking-table:not(.full-ranking-table) .rank-col{text-align:center;width:14%}.ranking-table:not(.full-ranking-table) .name-col{text-align:left;width:54%}.ranking-table:not(.full-ranking-table) .score-col{text-align:right;width:32%}.full-ranking-table .rank-col{text-align:center;white-space:nowrap;width:70px}.full-ranking-table .name-col{width:auto;text-align:center!important}.full-ranking-table .device-col{text-align:center;width:90px}.full-ranking-table .score-col{text-align:center;width:110px}.full-ranking-table td.device-col{color:#94a3b8;font-size:.9em}.ranking-table th{color:var(--secondary);z-index:5;white-space:nowrap;background:#1e293b;border-bottom:1px solid #ffffff1a;padding:14px 10px;font-weight:600;position:sticky;top:0}.ranking-table td{vertical-align:middle;padding:5px 10px}.name-wrapper{white-space:nowrap;justify-content:space-between;align-items:center;gap:4px;width:100%;display:flex}.player-name{text-overflow:ellipsis;text-align:left;flex:1;min-width:0;font-weight:500;overflow:hidden}.ranking-table tr.highlight-best{background:#fbbf241f;border-left:4px solid #fbbf24}.ranking-table tr.highlight-current{background:#22c55e33;border-left:4px solid #22c55e;animation:2s ease-in-out infinite row-pulse}.rank-badge{white-space:nowrap;border-radius:4px;flex-shrink:0;align-items:center;margin-left:4px;padding:1px 4px;font-size:.55rem;font-weight:800;display:inline-flex}.badge-best{color:#0f172a;background:#fbbf24}.badge-current{color:#fff;background:#22c55e}.current-arrow{color:#22c55e;text-align:center;flex-shrink:0;min-width:14px;margin-right:8px;font-weight:700;animation:.8s ease-in-out infinite alternate arrow-bounce}@keyframes row-pulse{0%{background:#22c55e26}50%{background:#22c55e4d}to{background:#22c55e26}}@keyframes row-pulse-gold{0%{background:#fbbf2433}50%{background:#fbbf2466}to{background:#fbbf2433}}@keyframes arrow-bounce{0%{transform:translate(0)}to{transform:translate(2px)}}.retry-btn{color:#fff;border:1px solid var(--glass-border);cursor:pointer;background:0 0;border-radius:.5rem;margin-top:1.5rem;padding:.75rem;font-weight:600;transition:all .2s}.retry-btn:hover{background:#ffffff1a}@keyframes bounce{0%{transform:translateY(0)}to{transform:translateY(-5px)}}.flash-green{animation:.3s ease-out forwards flash-green}@keyframes flash-green{0%{border-color:#22c55e;box-shadow:inset 0 0 100px #22c55e80}to{border-color:var(--glass-border);box-shadow:inset 0 0 #22c55e00}}.flash-yellow{animation:.4s ease-out forwards flash-yellow}@keyframes flash-yellow{0%{background:#eab3084d}to{background:0 0}}.flash-multi{animation:.6s step-end infinite flash-multi}@keyframes flash-multi{0%,to{background:#ef444433}33%{background:#f9731633}66%{background:#eab30833}}.divine-distortion-overlay{pointer-events:none;z-index:200;-webkit-backdrop-filter:contrast(1.5)brightness(1.2);backdrop-filter:contrast(1.5)brightness(1.2);background:0 0;animation:.4s cubic-bezier(.19,1,.22,1) forwards divine-reality-shatter;position:fixed;inset:0}@keyframes divine-reality-shatter{0%{-webkit-backdrop-filter:contrast(5)brightness(3)saturate(2)blur(10px);backdrop-filter:contrast(5)brightness(3)saturate(2)blur(10px);transform:scale(1.2)}5%{-webkit-backdrop-filter:contrast(10)brightness(5)saturate(5)blur();backdrop-filter:contrast(10)brightness(5)saturate(5)blur();opacity:1;transform:scale(.95)}10%{filter:hue-rotate(90deg);opacity:.8;transform:scale(1.5)skew(10deg)}15%{filter:hue-rotate(180deg);transform:scale(1)skew(-5deg)}to{-webkit-backdrop-filter:contrast()brightness()saturate()blur();backdrop-filter:contrast()brightness()saturate()blur();opacity:0;transform:scale(1)}}.divine-glitch-layer{z-index:199;pointer-events:none;background:repeating-linear-gradient(0deg,#ffffff08 0 1px,#0000 1px 2px);animation:.3s steps(2,end) forwards chromatic-glitch;position:fixed;inset:0}@keyframes chromatic-glitch{0%{clip-path:inset(10% 0 30%);filter:hue-rotate();transform:translate(5px,-5px)}50%{clip-path:inset(40% 0 10%);filter:hue-rotate(180deg);transform:translate(-5px,5px)}to{clip-path:inset(0);opacity:0;transform:translate(0)}}.shake{animation:.4s cubic-bezier(.36,.07,.19,.97) both shake}@keyframes shake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-6px)}40%,60%{transform:translate(6px)}}.shake-t5{animation:.5s cubic-bezier(.36,.07,.19,.97) both shake-t5}@keyframes shake-t5{10%,90%{transform:translate(-1.2rem,-.6rem)}20%,80%{transform:translate(2.4rem,1.2rem)}30%,50%,70%{transform:translate(-3.6rem,-1.8rem)}40%,60%{transform:translate(3.6rem,1.8rem)}}.shake-t4{animation:.5s cubic-bezier(.36,.07,.19,.97) both shake-t4}@keyframes shake-t4{10%,90%{transform:translate(-.9rem,-.4rem)}20%,80%{transform:translate(1.8rem,.8rem)}30%,50%,70%{transform:translate(-2.7rem,-1.2rem)}40%,60%{transform:translate(2.7rem,1.2rem)}}.ripple{pointer-events:none;z-index:5;background:#3b82f666;border-radius:50%;animation:.6s ease-out ripple;position:absolute;transform:scale(0)}@keyframes ripple{to{opacity:0;transform:scale(4)}}.tier-message{text-transform:uppercase;letter-spacing:-.04em;text-shadow:0 0 20px #ffffff1a;margin-bottom:.8rem;font-size:2.2rem;font-weight:900}.tier-text-0{color:#64748b;opacity:.8}.tier-text-1{color:#10b981;text-shadow:0 0 10px #10b98166;animation:.4s cubic-bezier(.175,.885,.32,1.275) scale-bounce}.tier-text-2{color:#3b82f6;text-shadow:0 0 15px #3b82f699;animation:.5s cubic-bezier(.175,.885,.32,1.275) scale-bounce}.tier-text-3{color:#fbbf24;text-shadow:0 0 20px #fbbf24cc;animation:.15s infinite alternate lightning-flicker,.4s cubic-bezier(.175,.885,.32,1.275) scale-bounce}@keyframes lightning-flicker{0%{opacity:.8;text-shadow:0 0 10px #fbbf2466}to{opacity:1;text-shadow:0 0 30px #fbbf24,0 0 50px #fbbf2499}}.tier-text-4{color:#fbbf24;text-shadow:0 0 30px #fbbf24,0 0 60px #fbbf2480;font-weight:900;animation:1s infinite alternate gold-glow-pulse,.6s cubic-bezier(.34,1.56,.64,1) scale-impact}@keyframes gold-glow-pulse{0%{text-shadow:0 0 20px #fbbf24cc}to{text-shadow:0 0 40px #fbbf24,0 0 10px #fff}}@keyframes scale-impact{0%{filter:brightness(3);transform:scale(.5)}50%{filter:brightness(2);transform:scale(1.3)}to{filter:brightness();transform:scale(1)}}.tier-text-5{color:#fff;text-transform:uppercase;letter-spacing:.1em;background:linear-gradient(90deg,red,#ff7f00,#ff0,#0f0,#00f,indigo,#9400d3) 0 0/400% 400%;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 10px #fffc);-webkit-background-clip:text;background-clip:text;font-weight:900;animation:2s linear infinite prismatic-wave,.15s infinite divine-glitch-text,.5s cubic-bezier(.17,.89,.32,1.49) scale-divine-impact;position:relative}@keyframes prismatic-wave{0%{background-position:0%}to{background-position:100%}}@keyframes divine-glitch-text{0%{text-shadow:2px 2px red,-2px -2px #00f;transform:translate(0)}25%{text-shadow:-2px 2px #0f0,2px -2px #f0f;transform:translate(2px,-2px)}50%{text-shadow:2px -2px #ff0,-2px 2px #0ff;transform:translate(-2px,2px)}75%{text-shadow:-2px -2px #fff,2px 2px #000;transform:translate(2px,2px)}to{transform:translate(0)}}@keyframes scale-divine-impact{0%{filter:brightness(5)blur(10px);transform:scale(.2)rotate(-10deg)}40%{filter:brightness(2)blur();transform:scale(1.5)rotate(5deg)}to{filter:brightness();transform:scale(1)rotate(0)}}@keyframes scale-bounce{0%{opacity:0;transform:scale(.5)}70%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@keyframes scale-bounce-intense{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.3)}to{opacity:1;transform:scale(1)}}@keyframes glitch{0%{transform:translate(0)}20%{transform:translate(-2px,2px)}40%{transform:translate(-2px,-2px)}60%{transform:translate(2px,2px)}80%{transform:translate(2px,-2px)}to{transform:translate(0)}}@keyframes rainbow-text{0%{background-position:0%}to{background-position:200%}}.particle-canvas{pointer-events:none;z-index:99;width:100vw;height:100vh;position:fixed;top:0;left:0}.graph-controls{justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;display:flex}.pagination-nav{align-items:center;gap:1.5rem;display:flex}.scroll-track{background:var(--glass-border);border-radius:2px;flex:1;height:4px;position:relative;overflow:hidden}.scroll-thumb{background:var(--primary);border-radius:2px;height:100%;transition:all .3s;position:absolute}.range-text{opacity:.6;white-space:nowrap;font-size:.9rem}.mode-toggle{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:.5rem;padding:.25rem;display:flex}.mode-btn{color:#fff;cursor:pointer;opacity:.6;background:0 0;border:none;border-radius:.4rem;padding:.5rem 1rem;font-size:.85rem;transition:all .2s}.mode-btn.active{background:var(--primary);opacity:1}.dashboard-layout{z-index:10;grid-template-columns:1fr 1fr;gap:.5rem 2rem;width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem 2rem;display:grid}@media (width<=900px){.dashboard-layout{grid-template-columns:1fr;padding-top:0}}.dashboard-panel{border-radius:1.5rem;flex-direction:column;padding:1.75rem;display:flex}.panel-title{color:#fff;justify-content:space-between;align-items:center;margin-bottom:1.5rem;font-size:1.25rem;font-weight:700;display:flex}.honor-list{flex-direction:column;gap:.75rem;display:flex}.honor-item{background:#ffffff08;border:1px solid #ffffff0d;border-radius:1rem;align-items:center;padding:.75rem 1.25rem;transition:all .2s;display:flex}.honor-item:hover{background:#3b82f60d;border-color:#3b82f633;transform:translate(5px)}.honor-rank{width:32px;color:var(--primary);font-size:1.1rem;font-weight:800}.honor-name{color:#e2e8f0;flex:1;font-weight:600}.honor-score{color:var(--accent);font-family:Inter,monospace;font-weight:700}.context-stats{grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:.25rem;display:grid}.context-stat-card{text-align:center;background:#ffffff08;border-radius:1rem;padding:1.25rem}.context-stat-label{color:#94a3b8;margin-bottom:.5rem;font-size:.85rem}.context-stat-value{color:var(--accent);font-size:1.75rem;font-weight:800}.context-chart-area{flex:1;min-height:200px;position:relative}.skeleton{background:linear-gradient(90deg,#ffffff08 25%,#ffffff14 50%,#ffffff08 75%) 0 0/200% 100%;border-radius:.5rem;animation:1.5s infinite skeleton-loading}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.neon-portal{cursor:pointer;border:4px solid var(--accent);width:240px;height:240px;box-shadow:0 0 20px var(--accent-glow), inset 0 0 20px var(--accent-glow);background:0 0;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;transition:all .3s cubic-bezier(.175,.885,.32,1.275);animation:2s infinite pulse-portal;display:flex;position:relative}@keyframes pulse-portal{0%{box-shadow:0 0 20px var(--accent-glow), inset 0 0 20px var(--accent-glow);transform:scale(1)}50%{box-shadow:0 0 50px var(--accent-glow), inset 0 0 40px var(--accent-glow);transform:scale(1.05)}to{box-shadow:0 0 20px var(--accent-glow), inset 0 0 20px var(--accent-glow);transform:scale(1)}}.neon-portal:hover{background:#22c55e1a;border-color:#fff;transform:scale(1.1)}.portal-label{letter-spacing:.2em;color:#fff;opacity:.8;margin-bottom:.5rem;font-size:.85rem}.portal-text{color:#fff;text-shadow:0 0 10px #ffffff80;font-size:2rem;font-weight:900}.portal-subtext{color:var(--accent);margin-top:.25rem;font-size:.8rem;font-weight:700}.debug-panel{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:2000;background:#000c;border-top:1px solid #ffffff1a;align-items:center;gap:2rem;padding:1rem 2rem;display:flex;position:fixed;bottom:0;left:0;right:0}.debug-title{color:var(--accent);white-space:nowrap;font-size:.75rem;font-weight:900}.debug-btn-grid{flex:1;gap:.5rem;display:flex}.debug-btn{color:#fff;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:.4rem;flex:1;padding:.5rem;font-size:.8rem;font-weight:700;transition:all .2s}.debug-btn:hover{background:var(--primary);border-color:#fff}.full-ranking-overlay{z-index:990;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000e0;justify-content:center;align-items:flex-start;padding:90px 1.5rem 2rem;animation:.2s fadeInOverlay;display:flex;position:fixed;inset:0;overflow-y:auto}.full-ranking-content{border-radius:1.75rem;flex-direction:column;width:100%;max-width:640px;max-height:80vh;padding:2rem;animation:.3s cubic-bezier(.34,1.56,.64,1) slideUpModal;display:flex;box-shadow:0 30px 80px #0009,0 0 0 1px #3b82f61a;background:#0f172af2!important;border:1px solid #ffffff1f!important}.full-ranking-header{justify-content:space-between;align-items:flex-start;margin-bottom:1rem;display:flex}.full-ranking-header h2{color:#f8fafc;margin:0 0 .3rem;font-size:1.6rem;font-weight:800}.full-ranking-subtitle{color:#64748b;white-space:nowrap;letter-spacing:-.02em;margin:0;font-size:clamp(.65rem,3vw,.85rem)}.full-ranking-close-btn{color:#94a3b8;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;margin-left:1rem;font-size:1rem;transition:all .2s;display:flex}.full-ranking-close-btn:hover{color:#f87171;background:#ef444433;border-color:#ef444466;transform:rotate(90deg)}.full-ranking-stats{flex-wrap:wrap;gap:.6rem;margin-bottom:.3rem;display:flex}.full-ranking-stat-badge{color:#60a5fa;background:#3b82f61f;border:1px solid #3b82f640;border-radius:999px;padding:.35rem .85rem;font-size:.78rem;font-weight:600}.full-ranking-table-wrapper{border-radius:.75rem;flex:1;margin-bottom:0;overflow-y:auto;background:#00000040!important}.full-ranking-table-wrapper::-webkit-scrollbar{width:5px}.full-ranking-table-wrapper::-webkit-scrollbar-track{background:0 0}.full-ranking-table-wrapper::-webkit-scrollbar-thumb{background:#3b82f640;border-radius:999px;transition:background .2s}.full-ranking-table-wrapper::-webkit-scrollbar-thumb:hover{background:#3b82f680}.full-ranking-table td,.full-ranking-table th{vertical-align:middle}.full-ranking-row.rank-gold{background:linear-gradient(90deg,#eab3081f,#0000)!important}.full-ranking-row.rank-silver{background:linear-gradient(90deg,#cbd5e11a,#0000)!important}.full-ranking-row.rank-bronze{background:linear-gradient(90deg,#92400e1a,#0000)!important}.full-rank-badge{justify-content:center;align-items:center;width:32px;height:32px;font-size:1.1rem;display:inline-flex}.full-rank-name{color:#e2e8f0;font-size:.95rem;font-weight:600;text-align:center!important}.full-rank-score{color:#60a5fa;font-family:Inter,monospace;font-size:.95rem;font-weight:700;text-align:center!important}.full-ranking-loading{color:#64748b;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:4rem 2rem;font-size:.9rem;display:flex}.loading-spinner{border:3px solid #3b82f626;border-top-color:#3b82f6;border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}.page-container{min-height:calc(100vh - 200px);padding-top:100px!important}.article-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:1rem;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.article-card:hover{border-color:var(--primary);box-shadow:0 20px 40px #0006, 0 0 20px var(--primary-glow);transform:translateY(-8px)}.pill-btn{background:var(--primary);color:#fff;cursor:pointer;border:1px solid #ffffff1a;border-radius:999px;padding:.6rem 1.2rem;font-weight:600;transition:all .3s}.pill-btn:hover{box-shadow:0 0 15px var(--primary-glow);background:#2563eb;transform:scale(1.05)}.floating-bubble{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;background:#3b82f626;border:1px solid #3b82f666;border-radius:20px 20px 20px 5px;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.9rem;font-weight:700;animation:3s ease-in-out infinite bubble-float;display:flex;box-shadow:0 0 15px #3b82f64d}@keyframes bubble-float{0%,to{transform:translateY(0)rotate(2deg)}50%{transform:translateY(-10px)rotate(-2deg)}}.neon-glow{text-shadow:0 0 5px #fff, 0 0 10px var(--primary), 0 0 15px var(--primary)}.neon-text{background:linear-gradient(90deg,#fff,#3b82f6);-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 8px var(--primary-glow));-webkit-background-clip:text;font-weight:800}@keyframes spin{to{transform:rotate(360deg)}}.full-ranking-bottom-close{color:#64748b;cursor:pointer;background:0 0;border:1px solid #ffffff14;border-radius:.75rem;width:100%;margin-top:1rem;padding:.7rem;font-size:.9rem;font-weight:600;transition:all .2s}.full-ranking-bottom-close:hover{color:#e2e8f0;background:#ffffff0f;border-color:#ffffff2e}@media (width<=480px){.full-ranking-content{border-radius:1.25rem;padding:1.5rem 1rem}.full-ranking-header h2{font-size:1.3rem}}.home-rank-container::-webkit-scrollbar{width:4px}.home-rank-container::-webkit-scrollbar-thumb{background:#fff3;border-radius:2px}.home-rank-list{flex-direction:column;gap:.5rem;display:flex}.dashboard-layout{flex-direction:column;gap:2rem;width:95%;max-width:600px;margin:0 auto;padding-bottom:2rem;display:flex}.dashboard-section{width:100%}.section-header{justify-content:space-between;align-items:center;margin-bottom:1rem;padding:0 .5rem;display:flex}.section-title{color:#fff;text-shadow:0 0 10px #fff3;margin:0;font-size:1.25rem;font-weight:800}.honor-hall-container{flex-direction:column;gap:1.5rem;display:flex}.medal-cards-row{grid-template-columns:repeat(3,1fr);gap:.75rem;display:grid}.medal-card{text-align:center;background:#ffffff08;border:1px solid #ffffff14;border-radius:1rem;flex-direction:column;align-items:center;padding:1rem .5rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.medal-card:hover{background:#ffffff0f;transform:translateY(-5px)}.medal-card.top-1{background:linear-gradient(#eab3081a,#eab30805);border-color:#eab30880;box-shadow:0 0 20px #eab3081a}.medal-card.top-2{background:linear-gradient(#94a3b81a,#94a3b805);border-color:#94a3b880}.medal-card.top-3{background:linear-gradient(#cd7f321a,#cd7f3205);border-color:#cd7f3280}.medal-icon{filter:drop-shadow(0 0 10px #00000080);margin-bottom:.5rem;font-size:1.8rem}.medal-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;width:100%;margin-bottom:.5rem;font-size:clamp(.85rem,4vw,1.1rem);font-weight:700;overflow:hidden}.medal-score-info{opacity:.9;white-space:nowrap;align-items:center;gap:.25rem;font-size:clamp(.8rem,4vw,1.1rem);display:flex}.medal-score{color:#60a5fa;font-family:Inter,monospace;font-weight:800}.medal-card.top-1 .medal-score{color:#fde047}.micro-rank-list{background:#ffffff05;border:1px solid #ffffff0d;border-radius:.75rem;max-height:180px;padding:.5rem;overflow-y:auto}.micro-rank-list::-webkit-scrollbar{width:4px}.micro-rank-list::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px}.micro-rank-item{border-bottom:1px solid #ffffff08;align-items:center;gap:1rem;padding:.6rem .75rem;font-size:.85rem;display:flex}.micro-rank-item:last-child{border-bottom:none}.micro-rank-num{color:#64748b;min-width:15px;font-weight:800}.micro-rank-name{color:#94a3b8;white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.micro-rank-device{opacity:.6}.micro-rank-score{color:#60a5fa;font-family:Inter,monospace;font-weight:700}.portal-section{flex-direction:column;align-items:center;gap:1rem;margin-top:0;padding:1rem 0;display:flex}.neon-portal{cursor:pointer;border:4px solid var(--primary);background:radial-gradient(circle,#22c55e1a 0%,#0000 70%);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:220px;height:220px;transition:all .3s cubic-bezier(.175,.885,.32,1.275);animation:2s ease-in-out infinite portal-pulse;display:flex;position:relative;box-shadow:0 0 30px #22c55e4d,inset 0 0 30px #22c55e4d}.neon-portal:hover{transform:scale(1.05);box-shadow:0 0 50px #22c55e80,inset 0 0 50px #22c55e80}@keyframes portal-pulse{0%{transform:scale(1);box-shadow:0 0 30px #22c55e4d}50%{transform:scale(1.02);box-shadow:0 0 60px #22c55e99}to{transform:scale(1);box-shadow:0 0 30px #22c55e4d}}.portal-label{color:#fff;text-shadow:0 0 5px #fff,0 0 10px #fb923c,0 0 20px #fb923c,0 0 40px #f97316;letter-spacing:-.02em;margin-bottom:.8rem;font-size:1.05rem;font-weight:800}.portal-text{color:#fff;letter-spacing:.1em;text-shadow:0 0 20px #ffffff80;font-size:2.8rem;font-weight:950;line-height:1}.portal-subtext{color:#fff;opacity:.7;margin-top:.5rem;font-size:1rem;font-weight:700}.portal-guide{color:#64748b;text-align:center;max-width:80%;font-size:.85rem}.context-bar{width:100%}.pill-btn{color:#fff;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;background:linear-gradient(135deg,#f97316 0%,#a855f7 100%);border:none;border-radius:999px;padding:.6rem 1.5rem;font-size:.85rem;font-weight:800;transition:all .3s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 4px 15px #f973164d}.pill-btn:hover{filter:brightness(1.1);transform:translateY(-2px)scale(1.05);box-shadow:0 6px 20px #f9731680}.pill-btn:active{transform:translateY(0)scale(.98)}.context-bar-inner{background:#ffffff03;border:1.5px solid #f9731633;border-radius:1rem;justify-content:space-around;align-items:center;width:100%;padding:1rem;display:flex;box-shadow:inset 0 0 15px #f9731608}.context-item{flex-direction:column;align-items:center;gap:.25rem;display:flex}.context-label{color:#64748b;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;font-size:clamp(.75rem,3.5vw,1rem);font-weight:700}.context-value{color:#fb923c;text-shadow:0 0 10px #fb923c4d;white-space:nowrap;font-size:clamp(1.2rem,5.5vw,1.6rem);font-weight:800}.level-highlight{background:linear-gradient(135deg,#fb923c 0%,#a855f7 100%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 5px #a855f766);-webkit-background-clip:text;font-weight:900}.divider{background:#ffffff14;width:1px;height:25px}.skeleton{background:linear-gradient(90deg,#ffffff08 0%,#ffffff0f 50%,#ffffff08 100%) 0 0/200% 100%;animation:1.5s linear infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (width<=600px){.medal-cards-row{gap:.5rem}.portal-text{font-size:2.2rem}.section-header{gap:.5rem}.section-title{white-space:nowrap;font-size:1rem}.pill-btn{white-space:nowrap;padding:.4rem .8rem;font-size:.75rem}}.save-btn:disabled{opacity:.5;cursor:not-allowed}.profile-section{border-radius:1.5rem;flex-direction:column;gap:1rem;margin-bottom:1.25rem;padding:1.25rem 1.75rem;display:flex}.user-info-row{align-items:center;gap:1.5rem;display:flex}.avatar{border:3px solid var(--primary);object-fit:cover;border-radius:50%;width:70px;height:70px}.user-name-wrapper{align-items:center;gap:.8rem;display:flex}.user-meta h2{margin:0;font-size:1.5rem}.edit-nickname-group{align-items:center;gap:.75rem;display:flex}.nickname-edit-input{color:#fff;background:#ffffff1a;border:1px solid #fff3;border-radius:.5rem;outline:none;width:160px;padding:.4rem .8rem;font-size:1.1rem;transition:border-color .2s}.nickname-edit-input:focus{border-color:var(--primary)}.edit-actions{gap:.4rem;display:flex}.btn-icon{color:#cbd5e1;cursor:pointer;white-space:nowrap;background:#ffffff14;border:1px solid #ffffff1a;border-radius:.5rem;padding:.3rem .7rem;font-size:.8rem;transition:all .2s}.btn-icon:hover{color:#fff;background:#fff3}.btn-save{background:var(--primary);color:#fff;border-color:#0000;font-weight:600}.btn-save:hover{background:#2563eb}.user-label{color:#94a3b8;margin-top:.25rem;font-size:.9rem}.glass-light{background:#ffffff08;border:1px solid #ffffff0d}.guest-alert{border-radius:1rem;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.5rem;display:flex}.guest-alert p{opacity:.8;font-size:.9rem}.link-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#22c55e;border:none;border-radius:.5rem;padding:.6rem 1.2rem;font-weight:600;transition:transform .2s}.link-btn:hover{background:#16a34a;transform:scale(1.05)}@media (width<=640px){.guest-alert{text-align:center;flex-direction:column}.stats-grid{gap:.5rem}.stat-card{padding:1rem .25rem}.stat-title{white-space:nowrap;letter-spacing:-.5px;font-size:.75rem}.stat-value{font-size:1.2rem}}.merge-modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:1rem;animation:.2s fadeInOverlay;display:flex;position:fixed;inset:0}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}.merge-modal{background:#0f172af2;border:1px solid #ffffff1f;border-radius:1.5rem;width:100%;max-width:560px;padding:2rem;animation:.3s cubic-bezier(.34,1.56,.64,1) slideUpModal;box-shadow:0 25px 60px #00000080,0 0 0 1px #ffffff0d}@keyframes slideUpModal{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.merge-modal-title{color:#f8fafc;text-align:center;margin:0 0 .5rem;font-size:1.3rem;font-weight:700}.merge-modal-desc{color:#94a3b8;text-align:center;margin:0 0 1.75rem;font-size:.9rem;line-height:1.5}.merge-cards{grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;margin-bottom:1.75rem;display:grid}.merge-vs{color:#475569;text-align:center;font-size:1rem;font-weight:800}.merge-card{text-align:center;background:#ffffff0a;border:1px solid #ffffff14;border-radius:1rem;padding:1.25rem 1rem;transition:all .2s}.merge-card.winner{background:#3b82f61f;border-color:#3b82f666;box-shadow:0 0 20px #3b82f626}.merge-card-label{color:#64748b;letter-spacing:.05em;text-transform:uppercase;margin-bottom:.75rem;font-size:.75rem;font-weight:600}.merge-card.winner .merge-card-label{color:#60a5fa}.merge-card-icon{margin-bottom:.5rem;font-size:2rem}.merge-card-score{color:#f8fafc;margin-bottom:.25rem;font-family:Inter,monospace;font-size:1.6rem;font-weight:800}.merge-card.winner .merge-card-score{color:#60a5fa}.merge-card-name{color:#64748b;font-size:.8rem}.merge-winner-badge{color:#60a5fa;letter-spacing:.04em;background:#3b82f633;border-radius:999px;margin-top:.4rem;padding:.2rem .6rem;font-size:.65rem;font-weight:700;display:inline-block}.merge-actions{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.merge-btn{cursor:pointer;border:1px solid #0000;border-radius:.75rem;padding:.75rem 1rem;font-size:.9rem;font-weight:600;transition:all .2s}.merge-btn-guest{background:var(--primary);color:#fff}.merge-btn-guest:hover{background:#2563eb;transform:translateY(-2px);box-shadow:0 6px 20px #3b82f659}.merge-btn-google{color:#cbd5e1;background:#ffffff0f;border-color:#ffffff1a}.merge-btn-google:hover{color:#fff;background:#ffffff1f;transform:translateY(-2px)}.merge-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}@media (width<=480px){.merge-cards{grid-template-rows:auto auto auto;grid-template-columns:1fr}.merge-vs{margin:-.25rem 0}.merge-actions{grid-template-columns:1fr}}.ranking-tabs{background:#ffffff08;border:1px solid #ffffff0d;border-radius:.75rem;gap:.5rem;margin-bottom:1rem;padding:.3rem;display:flex}.tab-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:.5rem;flex:1;padding:.6rem;font-size:.85rem;font-weight:600;transition:all .2s}.tab-btn:hover{color:#f8fafc;background:#ffffff0d}.tab-btn.active{background:var(--primary);color:#fff;box-shadow:0 4px 12px #3b82f64d}.share-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#059669,#10b981);border:none;border-radius:.5rem;justify-content:center;align-items:center;gap:.5rem;width:100%;margin-top:1rem;padding:.8rem 1.5rem;font-size:1rem;font-weight:700;transition:all .2s;display:flex;box-shadow:0 4px 14px #10b9814d}.share-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}.share-btn:active{transform:translateY(0)}.share-btn svg{width:1.2rem;height:1.2rem}.skeleton-row{background:linear-gradient(90deg,#ffffff08 25%,#ffffff14 50%,#ffffff08 75%) 0 0/200% 100%;border-radius:4px;height:48px;margin:8px 0;animation:1.5s infinite skeleton-loading}.debug-panel{z-index:1000;border-radius:1.2rem;flex-direction:column;gap:.8rem;max-width:200px;padding:1.2rem;animation:.4s cubic-bezier(.175,.885,.32,1.275) slide-up;display:flex;position:fixed;bottom:2rem;right:2rem}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.debug-title{color:var(--primary);text-transform:uppercase;letter-spacing:.1em;justify-content:space-between;align-items:center;margin-bottom:.2rem;font-size:.75rem;font-weight:700;display:flex}.debug-btn-grid{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.debug-btn{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffff1a;border:1px solid #ffffff26;border-radius:.6rem;padding:.5rem;font-size:.7rem;font-weight:600;transition:all .2s}.debug-btn:hover{background:#fff3;transform:scale(1.05)}.debug-btn.t5{color:#10b981;border-color:#10b981}.debug-btn.t4,.debug-btn.t3{color:#fbbf24;border-color:#fbbf24}.debug-btn.t2{color:#3b82f6;border-color:#3b82f6}.debug-btn.t1{color:#10b981;border-color:#10b981}.debug-btn.t0{color:#64748b;border-color:#64748b}.debug-close{cursor:pointer;opacity:.5}.debug-close:hover{opacity:1}.nickname-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000d9!important}.nickname-content.glass{background:#1e293bb3;border:1px solid #ffffff1a;width:90%;max-width:400px;box-shadow:0 25px 50px -12px #00000080;padding:2.5rem!important}.nickname-content h2{background:linear-gradient(90deg,#fff,#94a3b8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.5rem;font-size:1.5rem}.nickname-input{color:#fff;text-align:center;background:#0f172a99;border:2px solid #ffffff0d;border-radius:12px;outline:none;width:100%;margin-bottom:1.5rem;padding:1rem;font-size:1.1rem;transition:all .3s}.nickname-input::placeholder{color:#475569}.nickname-input:focus{background:#0f172acc;border-color:#3b82f6;box-shadow:0 0 20px #3b82f633}.nickname-input:hover{border-color:#fff3}.save-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#3b82f6 0%,#2563eb 100%);border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;padding:1rem;font-size:1.1rem;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.save-btn:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 10px 15px -3px #3b82f666}.save-btn:active:not(:disabled){transform:translateY(0)}.save-btn:disabled{color:#64748b;cursor:not-allowed;opacity:.7;background:#334155}.modal-actions{width:100%}.loading-spinner-tiny{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}
