@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:100 700;font-display:block;src:url(/fonts/material-symbols-outlined-subset.woff2) format("woff2")}.material-symbols-outlined{font-family:Material Symbols Outlined;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:"liga";font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/Manrope-Regular.woff2) format("woff2")}@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/Manrope-Medium.woff2) format("woff2")}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/Manrope-SemiBold.woff2) format("woff2")}@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/Manrope-Bold.woff2) format("woff2")}@font-face{font-family:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/Manrope-ExtraBold.woff2) format("woff2")}@font-face{font-family:Newsreader;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/Newsreader-Regular.woff2) format("woff2")}@font-face{font-family:Newsreader;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/Newsreader-SemiBold.woff2) format("woff2")}@font-face{font-family:Newsreader;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/Newsreader-Bold.woff2) format("woff2")}@font-face{font-family:Newsreader;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/Newsreader-Italic.woff2) format("woff2")}@font-face{font-family:Newsreader;font-style:italic;font-weight:600;font-display:swap;src:url(/fonts/Newsreader-SemiBoldItalic.woff2) format("woff2")}:root{--bg: #0b0f0e;--bg-nav: rgba(7,11,10,.93);--bg-card: #121918;--bg-sidebar: #0e1514;--bg-input: rgba(255,255,255,.06);--border: rgba(255,255,255,.07);--border-hover: rgba(20,184,166,.45);--purple: #0f766e;--purple-light: #2dd4bf;--cyan: #f59e0b;--gold: #f59e0b;--red: #ef4444;--text-1: #eefaf8;--text-2: #8fb3ae;--text-3: #455a58;--font-serif: "Newsreader", Georgia, serif;--font-sans: "Manrope", "Segoe UI", "PingFang SC", sans-serif;--r-sm: 8px;--r-md: 12px;--r-lg: 16px;--r-xl: 24px;--color-on-emphasis: #0b0f0e}html.light{--bg: #f0f5f4;--bg-nav: rgba(255,255,255,.92);--bg-card: #ffffff;--bg-sidebar: #e6efed;--bg-input: rgba(0,0,0,.04);--border: rgba(0,0,0,.09);--border-hover: rgba(15,118,110,.4);--text-1: #0d1f1d;--text-2: #475569;--text-3: #94a3b8;--color-on-emphasis: #ffffff}html.light body{color:var(--text-1);background:var(--bg)}html.light ::-webkit-scrollbar-track{background:#dceae8}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--bg);color:var(--text-1);min-height:100vh;line-height:1.6}#app{min-height:100vh}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}img{display:block}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;font-size:20px;line-height:1;vertical-align:middle}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--purple);border-radius:3px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 20px;border-radius:var(--r-sm);border:none;font-size:14px;font-weight:700;transition:all .2s;white-space:nowrap;font-family:var(--font-sans);letter-spacing:.01em}.btn-primary{background:var(--text-1);color:var(--color-on-emphasis)}.btn-primary:hover{opacity:.88;transform:translateY(-1px)}.btn-outline{background:transparent;color:var(--text-1);border:1px solid var(--border)}.btn-outline:hover{border-color:#ffffff4d;background:#ffffff0d}.btn-ghost{background:transparent;color:var(--text-2);border:none;padding:8px 12px;border-radius:var(--r-sm)}.btn-ghost:hover{background:#ffffff0f;color:var(--text-1)}.btn-sm{padding:5px 14px;font-size:12px}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.input{width:100%;padding:10px 14px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-1);font-size:14px;outline:none;transition:border-color .2s,box-shadow .2s;font-family:var(--font-sans)}.input::placeholder{color:var(--text-3)}.input:focus{border-color:var(--purple);box-shadow:0 0 0 3px #0f766e2e}textarea.input{resize:vertical;min-height:100px}select.input{appearance:none;cursor:pointer}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);padding:20px}.tag{display:inline-block;padding:2px 10px;background:#0f766e2e;color:#5eead4;border:1px solid rgba(15,118,110,.3);border-radius:20px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;font-family:var(--font-sans)}.page-container{max-width:800px;margin:0 auto;padding:28px 20px}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.page-title{font-size:24px;font-weight:800;color:var(--text-1);font-family:var(--font-sans)}.pagination{display:flex;gap:6px;justify-content:center;margin-top:32px;flex-wrap:wrap}.pagination button{padding:6px 14px;background:var(--bg-card);border:1px solid var(--border);color:var(--text-2);border-radius:var(--r-sm);font-size:13px;font-family:var(--font-sans);transition:all .2s}.pagination button.active{background:var(--text-1);border-color:var(--text-1);color:var(--color-on-emphasis);font-weight:700}.pagination button:hover:not(.active):not(:disabled){border-color:#ffffff4d;color:var(--text-1)}.pagination button:disabled{opacity:.3;cursor:not-allowed}.page-ellipsis{padding:6px 4px;color:var(--text-3);font-size:13px;line-height:1;align-self:center}.loading{text-align:center;padding:60px 20px;color:var(--text-3);font-size:14px}.loading:before{content:"";display:block;width:32px;height:32px;margin:0 auto 16px;border:2px solid rgba(15,118,110,.2);border-top-color:var(--purple-light);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty{text-align:center;padding:60px 20px;color:var(--text-3);font-size:14px}.empty:before{content:"🎮";display:block;font-size:32px;margin-bottom:12px;opacity:.4}@media(max-width:768px){.page-container{padding:20px 16px 96px}}.page-enter-active{transition:opacity .22s ease,transform .22s ease}.page-leave-active{transition:opacity .15s ease,transform .15s ease}.page-enter-from{opacity:0;transform:translateY(10px)}.page-leave-to{opacity:0;transform:translateY(-6px)}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.anim-item{animation:fadeSlideUp .35s ease both}.anim-item:nth-child(1){animation-delay:.03s}.anim-item:nth-child(2){animation-delay:.07s}.anim-item:nth-child(3){animation-delay:.11s}.anim-item:nth-child(4){animation-delay:.15s}.anim-item:nth-child(5){animation-delay:.19s}.anim-item:nth-child(6){animation-delay:.22s}.anim-item:nth-child(7){animation-delay:.25s}.anim-item:nth-child(8){animation-delay:.28s}.anim-item:nth-child(n+9){animation-delay:.3s}.btn:active:not(:disabled){transform:scale(.96) translateY(0)!important}.btn-primary:hover{box-shadow:0 4px 16px #00000040}.card{transition:border-color .2s,box-shadow .2s,transform .2s}.card:hover{border-color:#2dd4bf33;box-shadow:0 8px 32px #00000040;transform:translateY(-2px)}::view-transition-old(root){animation:none;z-index:1}::view-transition-new(root){z-index:2;clip-path:circle(0px at var(--vt-x, 50%) var(--vt-y, 50%));animation:vt-circle-reveal .65s cubic-bezier(.4,0,.2,1) forwards}@keyframes vt-circle-reveal{to{clip-path:circle(200vmax at var(--vt-x, 50%) var(--vt-y, 50%))}}.navbar[data-v-bb2ac4d8]{background:var(--bg-nav);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}.nav-inner[data-v-bb2ac4d8]{max-width:1400px;margin:0 auto;padding:0 24px;height:64px;display:flex;align-items:center;gap:24px}.logo[data-v-bb2ac4d8]{display:flex;align-items:center;flex-shrink:0}.logo-img[data-v-bb2ac4d8]{height:72px;width:auto;display:block;object-fit:contain}.nav-center[data-v-bb2ac4d8]{display:flex;align-items:center;gap:4px}.nav-link[data-v-bb2ac4d8]{padding:6px 14px;font-size:14px;font-weight:500;color:var(--text-2);border-radius:var(--r-sm);transition:all .15s;border-bottom:2px solid transparent}.nav-link[data-v-bb2ac4d8]:hover{color:var(--text-1)}.nav-link.active[data-v-bb2ac4d8]{color:var(--text-1);font-weight:700;border-bottom-color:var(--text-1);border-radius:0}.nav-search[data-v-bb2ac4d8]{flex:1;max-width:340px;display:flex;align-items:center;background:#ffffff0d;border:1px solid var(--border);border-radius:var(--r-xl);padding:0 14px;gap:8px;transition:all .2s}.nav-search[data-v-bb2ac4d8]:focus-within{border-color:#fff3;background:#ffffff14}.search-icon[data-v-bb2ac4d8]{color:var(--text-3);font-size:18px;flex-shrink:0}.search-input[data-v-bb2ac4d8]{flex:1;background:none;border:none;outline:none;color:var(--text-1);font-size:13px;padding:8px 0;font-family:var(--font-sans)}.search-input[data-v-bb2ac4d8]::placeholder{color:var(--text-3)}.nav-actions[data-v-bb2ac4d8]{display:flex;align-items:center;gap:8px;margin-left:auto}.icon-btn[data-v-bb2ac4d8]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--r-sm);color:var(--text-2);transition:all .15s}.icon-btn[data-v-bb2ac4d8]:hover{background:#ffffff12;color:var(--text-1)}.noti-btn[data-v-bb2ac4d8]{position:relative}.noti-badge[data-v-bb2ac4d8]{position:absolute;top:2px;right:2px;min-width:16px;height:16px;padding:0 4px;border-radius:99px;background:#ef4444;color:#fff;font-size:9px;font-weight:800;font-family:var(--font-sans);display:flex;align-items:center;justify-content:center;border:2px solid var(--bg-nav);line-height:1}.avatar-wrap[data-v-bb2ac4d8]{position:relative;cursor:pointer}.avatar[data-v-bb2ac4d8]{width:36px;height:36px;border-radius:50%;object-fit:cover;border:2px solid var(--border);transition:border-color .2s}.avatar-wrap:hover .avatar[data-v-bb2ac4d8]{border-color:#ffffff4d}.online-dot[data-v-bb2ac4d8]{position:absolute;bottom:1px;right:1px;width:10px;height:10px;border-radius:50%;background:var(--text-3);border:2px solid var(--bg-nav);transition:background .3s}.online-dot.online[data-v-bb2ac4d8]{background:#22c55e;box-shadow:0 0 0 2px #22c55e4d}.dropdown[data-v-bb2ac4d8]{position:absolute;top:calc(100% + 10px);right:0;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);min-width:160px;padding:6px;box-shadow:0 16px 48px #0009;animation:dropIn-bb2ac4d8 .15s ease}@keyframes dropIn-bb2ac4d8{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.dropdown-item[data-v-bb2ac4d8]{display:flex;align-items:center;gap:8px;width:100%;padding:9px 12px;font-size:13px;color:var(--text-2);border-radius:var(--r-sm);background:none;border:none;font-family:var(--font-sans);transition:all .15s;text-align:left;cursor:pointer}.dropdown-item[data-v-bb2ac4d8]:hover{background:#ffffff12;color:var(--text-1)}.dropdown-item.danger[data-v-bb2ac4d8]:hover{background:#ef44441a;color:#f87171}.drop-divider[data-v-bb2ac4d8]{height:1px;background:var(--border);margin:4px 0}.mobile-search-btn[data-v-bb2ac4d8]{display:none}@media(max-width:768px){.nav-inner[data-v-bb2ac4d8]{padding:0 16px;gap:12px}.nav-center[data-v-bb2ac4d8]{display:none}.nav-search[data-v-bb2ac4d8]{display:none;position:absolute;top:64px;left:0;right:0;background:var(--bg-nav);border-bottom:1px solid var(--border);padding:10px 16px;max-width:100%;border-radius:0}.nav-search.search-open[data-v-bb2ac4d8],.mobile-search-btn[data-v-bb2ac4d8]{display:flex}.nav-actions .btn-primary[data-v-bb2ac4d8]{display:none}}.theme-toggle[data-v-bb2ac4d8]{background:none;border:none;padding:0;cursor:pointer;flex-shrink:0}.toggle-track[data-v-bb2ac4d8]{position:relative;width:52px;height:28px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:14px;display:flex;align-items:center;transition:background .3s,border-color .3s;overflow:hidden}.theme-toggle.light .toggle-track[data-v-bb2ac4d8]{background:#fde04726;border-color:#eab30859}.toggle-thumb[data-v-bb2ac4d8]{position:absolute;left:3px;width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#2dd4bf);box-shadow:0 2px 8px #6366f180;transition:transform .3s cubic-bezier(.34,1.56,.64,1),background .3s,box-shadow .3s;z-index:2}.theme-toggle.light .toggle-thumb[data-v-bb2ac4d8]{transform:translate(24px);background:linear-gradient(135deg,#f59e0b,#fbbf24);box-shadow:0 2px 8px #f59e0b80}.toggle-icon[data-v-bb2ac4d8]{position:absolute;font-size:13px!important;transition:opacity .25s,transform .3s;z-index:1;line-height:1}.toggle-icon.moon[data-v-bb2ac4d8]{right:6px;color:#a5b4fc;opacity:1;transform:rotate(0)}.toggle-icon.sun[data-v-bb2ac4d8]{left:6px;color:#fbbf24;opacity:0;transform:rotate(-30deg) scale(.7)}.theme-toggle.light .toggle-icon.moon[data-v-bb2ac4d8]{opacity:0;transform:rotate(30deg) scale(.7)}.theme-toggle.light .toggle-icon.sun[data-v-bb2ac4d8]{opacity:1;transform:rotate(0) scale(1)}.notify-toast{position:fixed;bottom:40px;left:50%;transform:translate(-50%);z-index:9999;display:flex;align-items:center;gap:12px;padding:16px 20px 20px;background:var(--bg-card);border:1px solid rgba(168,85,247,.5);border-radius:16px;box-shadow:0 0 0 1px #2dd4bf26,0 16px 48px #0009;min-width:320px;max-width:440px;cursor:pointer;overflow:hidden}.notify-toast:hover{border-color:#a855f7cc}.toast-icon{width:36px;height:36px;border-radius:50%;background:#2dd4bf33;border:1px solid rgba(45,212,191,.4);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#5eead4}.toast-type-like .toast-icon,.toast-type-liked .toast-icon,.toast-type-upvote .toast-icon{background:#ef444426;border-color:#ef444459;color:#f87171}.toast-type-like,.toast-type-liked,.toast-type-upvote{border-color:#ef444466}.toast-type-like .toast-label,.toast-type-liked .toast-label,.toast-type-upvote .toast-label{color:#f87171}.toast-type-like .toast-progress,.toast-type-liked .toast-progress,.toast-type-upvote .toast-progress{background:linear-gradient(90deg,#ef4444,#f87171)}.toast-type-comment .toast-icon{background:#3b82f626;border-color:#3b82f659;color:#60a5fa}.toast-type-comment{border-color:#3b82f666}.toast-type-comment .toast-label{color:#60a5fa}.toast-type-comment .toast-progress{background:linear-gradient(90deg,#3b82f6,#60a5fa)}.toast-type-admin_message .toast-icon{background:#a855f726;border-color:#a855f759;color:#c084fc}.toast-type-admin_message{border-color:#a855f780}.toast-type-admin_message .toast-label{color:#c084fc}.toast-type-admin_message .toast-progress{background:linear-gradient(90deg,#7c3aed,#c084fc)}.toast-icon .material-symbols-outlined{font-size:18px}.toast-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;flex-shrink:0;border:2px solid rgba(45,212,191,.4)}.toast-body{flex:1;min-width:0}.toast-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:#5eead4;margin:0 0 4px;font-family:Manrope,sans-serif}.toast-title{font-size:14px;color:var(--text-1);line-height:1.5;margin:0;font-family:Manrope,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.toast-title strong{color:var(--text-1)}.toast-close{background:none;border:none;color:#ffffff59;cursor:pointer;padding:4px;display:flex;align-items:center;flex-shrink:0;transition:color .15s;align-self:flex-start}.toast-close:hover{color:#fffc}.toast-close .material-symbols-outlined{font-size:16px}.toast-progress{position:absolute;bottom:0;left:0;height:3px;background:linear-gradient(90deg,#0f766e,#5eead4);border-radius:0 0 16px 16px;animation:toast-countdown 5s linear forwards}@keyframes toast-countdown{0%{width:100%}to{width:0%}}.toast-enter-active{transition:all .35s cubic-bezier(.34,1.56,.64,1)}.toast-leave-active{transition:all .2s ease-in}.toast-enter-from,.toast-leave-to{opacity:0;transform:translate(-50%) translateY(80px)}@media(max-width:768px){.has-bottom-nav{padding-bottom:72px}}.bottom-nav{display:none}@media(max-width:768px){.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:9000;background:var(--bg-nav);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--border);padding:8px 0 max(12px,env(safe-area-inset-bottom));justify-content:space-around;align-items:center}.bottom-item{display:flex;flex-direction:column;align-items:center;gap:3px;padding:4px 16px;border-radius:8px;color:var(--text-3);text-decoration:none;transition:color .15s;min-width:56px}.bottom-item.active{color:var(--purple-light)}.bottom-icon{font-size:22px;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.bottom-item.active .bottom-icon{font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.bottom-label{font-size:10px;font-weight:700;font-family:Manrope,sans-serif;letter-spacing:.04em}.bottom-avatar{width:22px;height:22px;border-radius:50%;object-fit:cover;border:2px solid var(--border)}.bottom-item.active .bottom-avatar{border-color:var(--purple-light)}}.checkin-toast{position:fixed;bottom:40px;left:50%;transform:translate(-50%);z-index:9998;display:flex;align-items:center;gap:12px;padding:14px 20px 18px;background:var(--bg-card);border:1px solid rgba(245,158,11,.5);border-radius:16px;box-shadow:0 0 0 1px #f59e0b1a,0 16px 48px #0009;min-width:260px;cursor:pointer;overflow:hidden}.checkin-toast:hover{border-color:#f59e0bcc}.checkin-icon{width:36px;height:36px;border-radius:50%;background:#f59e0b26;border:1px solid rgba(245,158,11,.4);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#f59e0b}.checkin-icon .material-symbols-outlined{font-size:20px}.checkin-body{flex:1}.checkin-label{font-size:12px;font-weight:700;color:#f59e0b;font-family:var(--font-sans);margin-bottom:2px}.checkin-exp{font-size:14px;font-weight:700;color:var(--text-1);font-family:var(--font-sans)}.checkin-streak{font-size:12px;color:var(--text-3);font-weight:500;margin-left:4px}.checkin-progress{position:absolute;bottom:0;left:0;height:3px;width:100%;background:linear-gradient(90deg,#f59e0b,#fbbf24);animation:toast-countdown 4.5s linear forwards}
