.glass-dialog-overlay{position:fixed;inset:0;z-index:var(--z-modal, 1000);display:flex;align-items:center;justify-content:center;padding:20px;background:var(--ui-scrim);animation:glass-dialog-overlay-in .2s ease-out both}@keyframes glass-dialog-overlay-in{0%{opacity:0}to{opacity:1}}.glass-dialog-card{position:relative;width:min(420px,100%);max-height:calc(100dvh - 40px);overflow-y:auto;padding:28px 24px 24px;border-radius:20px;text-align:left;background:var(--ui-chrome);box-shadow:var(--ui-chrome-ring),var(--ui-shadow-pop);animation:glass-dialog-card-in .22s var(--ui-ease-out) both}@keyframes glass-dialog-card-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.glass-dialog-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:14px;background:var(--ui-fill);font-size:1.5rem;margin-bottom:16px}.glass-dialog-title{margin:0 0 8px;font-size:1.2857rem;font-weight:700;line-height:1.3;color:var(--text-strong)}.glass-dialog-msg{margin:0 0 24px;font-size:1rem;line-height:1.6;color:var(--text-muted)}.glass-dialog-msg p{margin:0 0 10px}.glass-dialog-msg p:last-child{margin-bottom:0}.glass-dialog-msg strong{color:var(--text-strong);font-weight:700}.glass-dialog-actions{display:flex;gap:8px}.glass-dialog-btn{-webkit-tap-highlight-color:transparent;flex:1;min-height:44px;padding:0 16px;border:0;border-radius:var(--ui-radius-control);font:inherit;font-size:1rem;font-weight:600;line-height:1.25;cursor:pointer;text-decoration:none;text-align:center;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--ui-fill);color:var(--text);transition:background-color .16s ease,color .16s ease,transform var(--ui-dur-press) ease-out}.glass-dialog-btn:active{transform:scale(.97)}@media (hover: hover){.glass-dialog-btn:hover{background:var(--ui-fill-hover);color:var(--text-strong)}}.glass-dialog-btn-primary{background:var(--accent);color:var(--on-accent);font-weight:700}@media (hover: hover){.glass-dialog-btn-primary:hover{background:var(--accent-2);color:var(--on-accent)}}.glass-dialog-btn-danger{background:rgba(var(--negative-rgb),.14);color:var(--negative)}@media (hover: hover){.glass-dialog-btn-danger:hover{background:var(--danger);color:#fff}}.glass-dialog-actions--inline{margin-top:4px}.login-required-inline{display:flex;justify-content:center;padding:56px 20px 72px}.login-required-inline-card{animation:none;background:var(--ui-surface);box-shadow:var(--ui-ring);border-radius:var(--ui-radius-card)}.login-required-hint{color:var(--text-muted);font-size:var(--ui-fs-meta)}.glass-dialog-card:focus{outline:none}@media (max-width: 420px){.glass-dialog-card{padding:24px 20px 20px}.glass-dialog-card .glass-dialog-actions{flex-wrap:wrap}.glass-dialog-card .glass-dialog-btn{flex:1 1 120px;padding:0 12px}}@media (prefers-reduced-motion: reduce){.glass-dialog-overlay,.glass-dialog-card{animation:none}.glass-dialog-btn{transition:none}.glass-dialog-btn:active{transform:none}}@media (prefers-contrast: more){.glass-dialog-overlay{background:#000c}.glass-dialog-btn:not(.glass-dialog-btn-primary){box-shadow:inset 0 0 0 1px var(--border-strong)}}@media (forced-colors: active){.glass-dialog-card{border:1px solid CanvasText}.glass-dialog-btn{border:1px solid ButtonText}}.glass-dialog-overlay.is-closing{animation:glass-dialog-overlay-out .16s ease-in forwards;pointer-events:none}.glass-dialog-overlay.is-closing .glass-dialog-card{animation:glass-dialog-card-out .16s ease-in forwards}@keyframes glass-dialog-overlay-out{0%{opacity:1}to{opacity:0}}@keyframes glass-dialog-card-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.96)}}@media (prefers-reduced-motion: reduce){.glass-dialog-overlay.is-closing,.glass-dialog-overlay.is-closing .glass-dialog-card{animation:none}}.loading-spinner{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;vertical-align:middle}.loading-spinner--sm{width:20px;height:20px}.loading-spinner--md{width:32px;height:32px}.loading-spinner--lg{width:40px;height:40px}.loading-spinner-svg{width:100%;height:100%;animation:loading-spinner-rotate 1s linear infinite}.loading-spinner-track{fill:none;stroke:var(--ui-fill);stroke-width:3}.loading-spinner-arc{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round;stroke-dasharray:72 128;stroke-dashoffset:0}@keyframes loading-spinner-rotate{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.loading-spinner-svg{animation:none}.loading-spinner-arc{stroke-dasharray:100 100}}html.pref-reduce-motion .loading-spinner-svg{animation:none}html.pref-reduce-motion .loading-spinner-arc{stroke-dasharray:100 100}.page-loader{text-align:center;padding:80px 20px;color:var(--text-muted);display:flex;flex-direction:column;align-items:center;gap:12px}.page-loader--compact{padding:48px 20px}.page-loader--inline{flex-direction:row;justify-content:center;padding:20px 16px;gap:10px}.page-loader--inline .page-loader-msg{margin:0}.page-loader-err{display:inline-block;font-size:2.5rem;color:var(--negative);margin-bottom:4px;font-weight:800;letter-spacing:-.02em}.page-loader-msg{font-size:1rem;font-weight:600;color:var(--text);margin:0}.page-loader-sub{font-size:var(--ui-fs-meta);color:var(--text-muted);margin:4px 0 0;max-width:520px;word-break:break-word}.page-loader-retry{-webkit-tap-highlight-color:transparent;display:inline-flex;align-items:center;justify-content:center;min-height:40px;margin-top:8px;padding:0 18px;background:var(--ui-fill);border:0;border-radius:var(--ui-radius-control);color:var(--text);cursor:pointer;font:inherit;font-size:var(--fs-md);font-weight:600;text-decoration:none;transition:background-color .16s ease,transform var(--ui-dur-press) ease-out}.page-loader-retry:active{transform:scale(.97)}@media (hover: hover){.page-loader-retry:hover{background:var(--ui-fill-hover);color:var(--text-strong)}}.page-loader-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.page-loader-retry--primary{background:var(--accent);color:var(--on-accent);font-weight:700}@media (hover: hover){.page-loader-retry--primary:hover{background:var(--accent-2);color:var(--on-accent)}}@media (prefers-reduced-motion: reduce){.page-loader-retry{transition:none}.page-loader-retry:active{transform:none}}.top-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:var(--z-top, 3000);pointer-events:none;overflow:hidden}.top-progress-bar{width:100%;height:100%;transform-origin:left center;transform:scaleX(0);background:var(--accent)}.top-progress-active .top-progress-bar{animation:top-progress-fill 1.1s cubic-bezier(.22,.61,.36,1) forwards}.top-progress-done{opacity:0;transition:opacity .2s ease-out}.top-progress-done .top-progress-bar{animation:none;transform:scaleX(1);opacity:0;transition:transform .2s ease-out,opacity .2s ease-out}@keyframes top-progress-fill{0%{transform:scaleX(0)}70%{transform:scaleX(.82)}to{transform:scaleX(.9)}}@media (prefers-reduced-motion: reduce){.top-progress-active .top-progress-bar{animation:none;transform:scaleX(.6)}}.mbn-dock{display:none}@media (max-width: 1000px){.mbn-dock{position:fixed;left:12px;right:12px;bottom:calc(8px + env(safe-area-inset-bottom,0px));z-index:var(--z-nav, 90);display:flex;align-items:flex-end;gap:10px;pointer-events:none}.mbn-dock>*{pointer-events:auto}.mobile-bottom-nav,.mbn-fab{background:#1e2220f5;box-shadow:inset 0 0 0 .5px #ffffff29,inset 0 1px #ffffff1a,0 10px 30px #0000006b,0 2px 6px #00000040}@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))){.mobile-bottom-nav,.mbn-fab{background:#1e2220e0;-webkit-backdrop-filter:blur(28px) saturate(180%);backdrop-filter:blur(28px) saturate(180%)}}@media (prefers-reduced-transparency: reduce),(prefers-contrast: more){.mobile-bottom-nav,.mbn-fab{background:var(--ui-bar-solid);-webkit-backdrop-filter:none;backdrop-filter:none}}.mobile-bottom-nav{flex:1 1 auto;display:flex;align-items:stretch;height:60px;padding:4px;border-radius:30px;transition:height .26s var(--ui-ease-out),border-radius .26s var(--ui-ease-out)}.mbn-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;border-radius:26px;color:#ebebf599;text-decoration:none;-webkit-tap-highlight-color:transparent;transition:background-color .22s ease,color .22s ease}.mbn-item.active{color:var(--accent);background:#ffffff1a}.mbn-item:active{background:#ffffff24}.mbn-icon{display:flex;align-items:center;justify-content:center;width:26px;height:26px;transition:transform .16s ease-out}.mbn-icon svg{display:block;width:24px;height:24px}.mbn-item:active .mbn-icon{transform:scale(.9)}.mbn-label{display:block;max-height:14px;overflow:hidden;font-size:var(--ui-fs-meta);font-weight:600;line-height:14px;letter-spacing:-.01em;white-space:nowrap;transition:max-height .22s var(--ui-ease-out),opacity .18s ease}.mbn-fab{flex:none;display:flex;align-items:center;justify-content:center;width:60px;height:60px;border:0;border-radius:50%;color:#ebebf5d9;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:width .26s var(--ui-ease-out),height .26s var(--ui-ease-out),transform .16s ease-out,color .2s ease}.mbn-fab:active{transform:scale(.92)}.mbn-fab.is-open{color:var(--accent)}.mbn-dock.is-compact .mobile-bottom-nav{height:48px;border-radius:24px}.mbn-dock.is-compact .mbn-item{border-radius:20px}.mbn-dock.is-compact .mbn-label{max-height:0;opacity:0}.mbn-dock.is-compact .mbn-fab{width:48px;height:48px}.mbn-drawer-backdrop{position:fixed;inset:0;z-index:var(--z-overlay, 500);background:var(--ui-scrim);animation:mbn-fade-in .2s ease-out;touch-action:none;overscroll-behavior:none}.mbn-drawer{position:fixed;left:0;right:0;top:calc(env(safe-area-inset-top,0px) + 8px);bottom:0;z-index:calc(var(--z-overlay, 500) + 1);padding-bottom:env(safe-area-inset-bottom,0);max-height:100dvh;display:flex;flex-direction:column;overflow:hidden;overscroll-behavior:contain;background:var(--ui-chrome);border-radius:20px 20px 0 0;box-shadow:var(--ui-chrome-ring),var(--ui-shadow-pop);animation:mbn-slide-up .32s var(--ui-ease-out)}.mbn-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 10px;box-shadow:0 1px 0 var(--ui-hairline);flex-shrink:0}.mbn-drawer-title{font-size:var(--ui-fs-section);font-weight:700;color:var(--text-strong)}.mbn-drawer-close{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;font-size:1.1rem;color:var(--text-muted);border-radius:var(--ui-radius-control)}.mbn-drawer-close:active{background:var(--ui-fill)}.mbn-drawer-nav{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:4px 12px 16px;display:flex;flex-direction:column;gap:6px;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y}.mbn-drawer-heading{margin:0;padding:12px 4px 6px;font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted)}.mbn-drawer-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mbn-drawer:focus{outline:none}.mbn-drawer-grabber{order:-1;flex-shrink:0;width:40px;height:5px;margin:8px auto 0;border-radius:999px;background:var(--ui-hairline-strong, rgba(255, 255, 255, .22))}.mbn-drawer-head{touch-action:none}html.mbn-drawer-open,body.mbn-drawer-open{overflow:hidden!important;overscroll-behavior:none}button.mbn-drawer-link{width:100%;margin:0;font:inherit;cursor:pointer;text-align:left}.mbn-drawer-link{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:44px;padding:10px 14px;border-radius:var(--ui-radius-control);font-size:1rem;font-weight:600;color:var(--text);background:var(--ui-surface-hover);transition:background-color .16s ease,transform var(--ui-dur-press) ease-out}.mbn-drawer-link:active{transform:scale(.97)}.mbn-drawer-link.active{color:var(--accent);background:rgba(var(--accent-rgb),.14)}@keyframes mbn-fade-in{0%{opacity:0}to{opacity:1}}@keyframes mbn-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.mbn-drawer,.mbn-drawer-backdrop{animation:none}.mbn-icon,.mbn-drawer-link,.mobile-bottom-nav,.mbn-item,.mbn-label,.mbn-fab{transition:none}.mbn-item:active .mbn-icon,.mbn-drawer-link:active,.mbn-fab:active{transform:none}}@media (forced-colors: active){.mobile-bottom-nav,.mbn-fab{border:1px solid CanvasText}.mbn-item.active,.mbn-drawer-link.active{outline:2px solid Highlight;outline-offset:-2px}}}.mbn-lang{margin-left:auto;margin-right:4px}@media (max-width: 1000px){body.mbn-hidden .page-wrap--app{padding-bottom:0}body.mbn-hidden .site-footer{margin-bottom:0}}.lang-switcher{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 10px;font-size:var(--ui-fs-meta);font-weight:700;letter-spacing:.04em;color:var(--text-muted);background:var(--ui-fill);border:0;border-radius:var(--ui-radius-control);transition:color .16s ease,background-color .16s ease,transform var(--ui-dur-press) ease-out}@media (hover: hover){.lang-switcher:hover{color:var(--text-strong);background:var(--ui-fill-hover)}}.lang-switcher:active{transform:scale(.97)}@media (prefers-reduced-motion: reduce){.lang-switcher{transition:none}.lang-switcher:active{transform:none}}.support-panel{position:fixed;right:16px;bottom:16px;z-index:var(--z-modal);display:flex;flex-direction:column;width:min(380px,calc(100vw - 24px));height:min(560px,72dvh);background:var(--ui-chrome);border-radius:var(--ui-radius-card);box-shadow:inset 0 0 0 1px var(--ui-hairline),0 18px 48px #00000080;overflow:hidden}@media (max-width: 768px){.support-panel{right:12px;bottom:calc(84px + env(safe-area-inset-bottom,0px));height:min(560px,66dvh)}}.support-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 10px 10px 16px;box-shadow:inset 0 -1px 0 var(--ui-hairline)}.support-head-title{display:flex;align-items:center;gap:8px;min-width:0;color:var(--text-strong)}.support-chip{padding:3px 9px;border:0;border-radius:999px;background:var(--surface-2);color:var(--text-muted);font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}.support-chip:hover{color:var(--text)}.support-body{flex:1;overflow-y:auto;padding:14px}.support-thread{display:flex;flex-direction:column;gap:8px}.support-msg{max-width:86%;padding:8px 12px;border-radius:14px;font-size:14px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.support-msg--assistant{align-self:flex-start;background:var(--surface-2);color:var(--text)}.support-msg--user{align-self:flex-end;background:var(--accent);color:var(--on-accent)}.support-card{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.support-choices{display:flex;flex-direction:column;gap:6px;align-self:flex-start}.support-choice{padding:8px 14px;border:1px solid var(--border-strong);border-radius:var(--ui-radius-control);background:transparent;color:var(--text-strong);font-size:14px;font-weight:700;text-align:left;cursor:pointer}.support-choice:hover{border-color:var(--accent)}.support-typing{display:flex;gap:4px;padding:12px 14px}.support-typing span{width:6px;height:6px;border-radius:50%;background:var(--text-muted);animation:support-dot 1s infinite ease-in-out}.support-typing span:nth-child(2){animation-delay:.15s}.support-typing span:nth-child(3){animation-delay:.3s}@keyframes support-dot{0%,80%,to{opacity:.3}40%{opacity:1}}@media (prefers-reduced-motion: reduce){.support-typing span{animation:none}}.support-proposal{margin-top:4px;padding:12px;border-radius:12px;box-shadow:inset 0 0 0 1px var(--border-strong)}.support-proposal-label{color:var(--accent);font-size:12px;font-weight:700}.support-proposal-subject{color:var(--text-strong);font-weight:700}.support-proposal-body{color:var(--text-muted);font-size:13px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.support-attach{position:relative;display:inline-flex;max-width:100%;padding:6px 10px;border:1px dashed var(--border-strong);border-radius:var(--ui-radius-control);color:var(--text-muted);font-size:13px;cursor:pointer}.support-attach span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.support-attach input{position:absolute;inset:0;opacity:0;cursor:pointer}.support-attach-clear{font-size:12px;background:none;border:0;padding:0;cursor:pointer}.support-proposal-actions,.support-done-actions{display:flex;flex-wrap:wrap;gap:8px}.support-done{display:flex;flex-direction:column;gap:10px;color:var(--text);font-size:14px;line-height:1.6}.support-done-title{color:var(--text-strong);font-size:16px;font-weight:800}.support-input{display:flex;align-items:flex-end;gap:8px;padding:10px;box-shadow:inset 0 1px 0 var(--ui-hairline)}.support-input textarea{flex:1;min-height:40px;max-height:120px;resize:none}.support-proposal-page{color:var(--text-muted);font-size:12px;overflow-wrap:anywhere}.support-proposal-page code{color:var(--text)}.support-fab{position:fixed;right:16px;bottom:16px;z-index:var(--z-sticky);display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:50%;background:var(--ui-chrome);color:var(--text-strong);box-shadow:inset 0 0 0 1px var(--ui-hairline),0 6px 18px #00000073;cursor:pointer;transition:transform var(--ui-dur-press, .1s) ease-out,color .16s ease}.support-fab svg{width:22px;height:22px}.support-fab:active{transform:scale(.95)}@media (hover: hover){.support-fab:hover{color:var(--accent)}}@media (max-width: 768px){.support-fab{right:14px;bottom:calc(84px + env(safe-area-inset-bottom,0px));width:40px;height:40px}}@media print{.support-fab,.support-panel{display:none}}.support-check{display:flex;align-items:center;gap:6px;color:var(--text);font-size:13px;cursor:pointer}.support-check input{accent-color:var(--accent)}.site-footer{box-shadow:0 -1px 0 var(--ui-hairline);padding:40px 0 28px;position:relative}.site-footer-inner{display:flex;flex-direction:column;align-items:center;text-align:center;gap:24px}.footer-brand-block{display:flex;flex-direction:column;align-items:center;gap:8px}.footer-brand{font-size:1.5rem;letter-spacing:2px;color:var(--text-strong);line-height:1.1;font-weight:700}.footer-brand-mark{color:var(--accent);font-size:1.35rem;margin:0 4px}.footer-tag{font-size:var(--ui-fs-meta);line-height:1.5;color:var(--text-muted)}.footer-nav{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;padding-top:4px}.footer-link{color:var(--text);text-decoration:none;font-size:.9rem;font-weight:500;padding:6px 10px;border-radius:8px;transition:color .16s ease,background-color .16s ease}@media (hover: hover){.footer-link:hover{color:var(--text-strong);background:var(--ui-surface-hover)}}.footer-dot{color:var(--text-muted);opacity:.5;font-size:.85rem;-webkit-user-select:none;user-select:none}.footer-contact{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.footer-support{border:0;font-family:inherit;cursor:pointer}.footer-discord{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 16px;border-radius:999px;background:var(--ui-fill);color:var(--text);font-size:.9rem;font-weight:600;text-decoration:none;transition:color .16s ease,background-color .16s ease,transform var(--ui-dur-press) ease-out}.footer-discord svg{color:#8c96ff}.footer-discord:active{transform:scale(.97)}@media (hover: hover){.footer-discord:hover{color:var(--text-strong);background:var(--ui-fill-hover)}}.footer-credits{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px;font-size:var(--ui-fs-meta);line-height:1.7;margin-top:4px;color:var(--text-muted)}.footer-credits .mono{color:var(--text)}.footer-cdot{color:var(--text-muted);opacity:.5;margin:0 4px}.footer-cdivider{width:1px;height:10px;background:var(--ui-hairline);margin:0 10px;display:inline-block}.footer-legal{width:100%;max-width:720px;padding-top:20px;box-shadow:0 -1px 0 var(--ui-hairline);display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px;font-size:var(--ui-fs-meta);color:var(--text-muted)}.footer-tm{font-weight:500;color:var(--text-muted)}.footer-legal-sep{margin:0 8px;color:var(--text-muted);opacity:.5}.footer-legal-link{color:var(--text-muted);text-decoration:none;display:inline-flex;align-items:center;min-height:24px;padding:2px 4px}@media (hover: hover){.footer-legal-link:hover{color:var(--text-strong);text-decoration:underline}}@media (max-width: 600px){.site-footer{margin-top:16px;padding:32px 0 24px}.site-footer-inner{gap:20px}.footer-brand{font-size:1.3rem;letter-spacing:1.5px}.footer-brand-mark{font-size:1.2rem}.footer-tag{font-size:var(--ui-fs-meta)}.footer-nav{gap:4px}.footer-link{padding:6px 8px;font-size:.857rem}.footer-credits{flex-direction:row;justify-content:center;gap:2px;font-size:var(--ui-fs-meta);line-height:1.5}.footer-cdivider{width:1px;height:10px;margin:0 6px}.footer-cdot{margin:0 2px}.footer-legal{flex-direction:column;gap:2px;font-size:var(--ui-fs-meta);line-height:1.6;margin-top:8px;padding-top:16px}.footer-legal-sep{display:none}}@media (max-width: 360px){.footer-nav{gap:2px}.footer-link{padding:6px;font-size:.857rem}.footer-dot{font-size:.8rem}}@media (pointer: coarse){.footer-legal-link{display:inline-flex;align-items:center;min-height:44px;padding-inline:6px}}@media (pointer: coarse){.footer-tm .footer-legal-link{padding-inline:0}}.gs{position:relative;min-width:0}.gs-disabled{opacity:.72}.gs-disabled .gs-input-wrap{background:var(--ui-surface)}.gs-disabled .gs-icon{color:var(--text-muted)}.gs-input-wrap{display:flex;align-items:center;background:#00000038;border:1px solid var(--border-strong);border-radius:var(--ui-radius-control);height:40px;padding:0 10px 0 12px;transition:border-color .16s ease}.gs-input-wrap:focus-within{border-color:var(--accent)}.gs-icon{font-size:.95rem;color:var(--text-muted);flex-shrink:0;margin-right:6px}.gs-input{flex:1;min-width:0;background:transparent;border:none;outline:none;color:var(--text-strong);font-size:var(--fs-md);padding:0}.gs-input::placeholder{color:var(--text-muted);font-size:var(--ui-fs-meta)}.gs-input:disabled{color:var(--text-muted);cursor:not-allowed}.gs-clear{background:transparent;border:none;color:var(--text-muted);font-size:1.1rem;cursor:pointer;padding:0 4px;min-width:32px;min-height:32px;line-height:1}.gs-clear:hover{color:var(--text-strong)}.gs-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--ui-chrome);box-shadow:var(--ui-chrome-ring),var(--ui-shadow-pop);border-radius:var(--ui-radius-card-sm);z-index:var(--z-dropdown, 200);max-height:60vh;overflow-y:auto;transform-origin:top center;animation:gs-pop .16s var(--ui-ease-out)}@keyframes gs-pop{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.gs-loading,.gs-empty{padding:16px;text-align:center;font-size:var(--fs-md);color:var(--text-muted)}.gs-loading{display:flex;align-items:center;justify-content:center;gap:8px}.gs-error{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--negative)}.gs-retry{min-height:32px;padding:0 14px;border:0;border-radius:var(--ui-radius-control);background:var(--ui-fill);color:var(--text);font-size:var(--ui-fs-meta);font-weight:600;cursor:pointer}.gs-retry:hover{background:var(--ui-fill-hover)}.gs-retry:active{transform:scale(.97)}.gs-note{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:2px 8px 6px;padding:8px 10px;border-radius:8px;background:var(--ui-fill);font-size:var(--ui-fs-meta);line-height:1.45;color:var(--text-muted)}.gs-note-error{color:var(--negative)}.gs-login-btn{flex-shrink:0;display:inline-flex;align-items:center;min-height:32px;padding:0 14px;border-radius:var(--ui-radius-control);background:var(--accent);color:var(--on-accent);font-size:var(--ui-fs-meta);font-weight:700;text-decoration:none}.gs-login-btn:hover{background:var(--accent-2)}.gs-login-btn:active{transform:scale(.97)}.gs-group{padding:6px 4px}.gs-group+.gs-group{box-shadow:0 -1px 0 var(--ui-hairline)}.gs-group-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 12px 6px}.gs-group-label{padding:0;font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted)}.gs-group-more{flex-shrink:0;padding:2px 0;border:none;background:transparent;font-size:var(--ui-fs-meta);font-weight:600;color:var(--accent);cursor:pointer}.gs-group-more:hover{text-decoration:underline}.gs-group-more:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.gs-item{display:flex;align-items:center;gap:10px;width:100%;padding:6px 12px;background:transparent;border:none;border-radius:8px;cursor:pointer;text-align:left;color:var(--text)}.gs-item-on,.gs-item:hover{background:var(--ui-fill)}.gs-item-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--ui-fill);border-radius:6px;flex-shrink:0;font-size:.95rem;color:var(--text-muted)}.gs-item-jacket{width:28px;height:28px;flex-shrink:0;border-radius:6px;object-fit:cover;background:var(--ui-fill)}.gs-item-text{display:flex;flex-direction:column;min-width:0;flex:1}.gs-item-title{font-size:var(--fs-md);color:var(--text-strong);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gs-item-sub{font-size:var(--ui-fs-meta);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width: 1000px){.header-lead .gs{flex:1 1 auto;max-width:none}}@media (max-width: 600px){.gs:not(.gs-mobile-overlay){display:none}}.gs-mobile-overlay{display:flex;flex-direction:column;flex:1;min-height:0}.gs-mobile-overlay .gs-input-wrap{flex-shrink:0;border:none!important;outline:none!important;box-shadow:none!important}.gs-mobile-overlay .gs-input-wrap:focus-within{border:none!important;outline:none!important;box-shadow:none!important}.gs-mobile-overlay .gs-input:focus,.gs-mobile-overlay .gs-input:focus-visible{outline:none!important;box-shadow:none!important}.gs-mobile-overlay .gs-dropdown{position:static;flex:1;margin-top:8px;max-height:none;overflow:visible;border:none;border-radius:0;background:transparent;box-shadow:none;animation:none}.gs-mobile-overlay .gs-group{padding:0}.gs-mobile-overlay .gs-group+.gs-group{border-top:none;margin-top:12px;padding-top:0}.gs-mobile-overlay .gs-group-head{padding:8px 0 6px}.gs-mobile-overlay .gs-group-label,.gs-mobile-overlay .gs-group-more{font-size:var(--ui-fs-meta)}.gs-mobile-overlay .gs-item{padding:10px 6px;border-radius:12px}.gs-mobile-overlay .gs-item-jacket{width:44px;height:44px;border-radius:8px}.gs-mobile-overlay .gs-item-icon{width:44px;height:44px;border-radius:8px;font-size:1.2rem}.gs-mobile-overlay .gs-loading,.gs-mobile-overlay .gs-empty{padding:16px 4px;text-align:left}@media (prefers-reduced-motion: reduce){.gs-dropdown{animation:none}}@media (forced-colors: active){.gs-dropdown{border:1px solid CanvasText}.gs-item-on{outline:2px solid Highlight;outline-offset:-2px}}.home-hub{display:none;margin-bottom:20px;width:100%;max-width:100%;min-width:0}@media (max-width: 1000px){.home-hub{display:block;padding:18px 8px 24px;box-sizing:border-box}.home-hub .hm-icon{width:20px;height:20px}}.home-banner{position:relative;margin-bottom:12px;padding:16px;border-radius:var(--ui-radius-panel);background:var(--ui-surface);box-shadow:var(--ui-ring);overflow:hidden}.home-banner-kicker{font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted)}.home-banner-title{margin:4px 0 0;font-size:1.286rem;font-weight:800;line-height:1.3;letter-spacing:-.022em;color:var(--text-strong)}.home-banner-title .text-accent{color:inherit}.home-banner-sub{margin:6px 0 0;font-size:1rem;line-height:1.55;color:var(--text-muted)}.home-banner-cta{display:flex;gap:8px;margin-top:14px}.home-banner-cta .ui-btn{flex:1 1 0}.home-banner-stats{display:flex;flex-wrap:wrap;gap:10px 8px;margin-top:14px;padding-top:14px;box-shadow:0 -1px 0 var(--ui-hairline)}.home-banner-stat{flex:1 1 calc(25% - 8px);min-width:64px;display:flex;flex-direction:column;gap:2px}.home-banner-stat-val{font-size:1.0714rem;font-weight:700;line-height:1.2;font-variant-numeric:tabular-nums;color:var(--text-strong)}.home-banner-stat-lbl{font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted)}.home-tabs{margin-bottom:12px}.home-bento{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);grid-template-rows:1fr 1fr;gap:10px;width:100%;min-height:200px;margin-bottom:16px}.home-bento-cell{display:flex;text-decoration:none;border-radius:var(--ui-radius-card);overflow:hidden;min-width:0;background:var(--ui-surface);box-shadow:var(--ui-ring);color:var(--text);-webkit-tap-highlight-color:transparent;transition:transform var(--ui-dur-press) ease-out,background-color .16s ease}.home-bento-cell:active{transform:scale(.97)}@media (hover: hover){.home-bento-cell:hover{background:var(--ui-surface-hover)}}.home-bento-cell--tall{grid-column:1;grid-row:1 / -1;flex-direction:column;justify-content:space-between;padding:16px 14px}.home-bento-cell--tall .home-bento-title{font-size:var(--ui-fs-section);font-weight:700;color:var(--text-strong);line-height:1.35;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.home-bento-cell--tall .home-bento-desc{font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted);margin-top:6px}.home-bento-emoji{display:inline-flex;color:var(--text-muted)}.home-bento-cell--tall .home-bento-emoji{align-self:flex-end;margin-top:10px}.home-hub .home-bento-cell--tall .hm-icon{width:28px;height:28px}.home-bento-cell--wide{grid-column:2;grid-row:1;flex-direction:row;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;min-height:84px}.home-bento-cell--wide .home-bento-title{color:var(--text-strong);font-size:var(--ui-fs-section);font-weight:700}.home-bento-cell--wide .home-bento-desc{color:var(--text-muted);font-size:var(--ui-fs-meta);font-weight:600;margin-top:4px}.home-bento-pair{grid-column:2;grid-row:2;display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:0}.home-bento-cell--sq{flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;padding:12px 8px;min-height:88px}.home-bento-cell--sq .home-bento-title{color:var(--text-strong);font-size:1rem;font-weight:600}.home-bento-search{grid-column:2;grid-row:1;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:6px;padding:12px 14px;min-height:84px;border-radius:var(--ui-radius-card);background:var(--ui-surface);box-shadow:var(--ui-ring);color:var(--text);cursor:text}.home-bento-search-inline{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1}.home-bento-search-field{display:flex;align-items:center;gap:8px;min-width:0;min-height:44px;padding:0 8px 0 12px;background:#00000038;border:1px solid var(--border-strong);border-radius:var(--ui-radius-control);transition:border-color .16s ease}.home-bento-search:focus-within .home-bento-search-field{border-color:var(--accent)}.home-bento-search-icon{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.home-hub .home-bento-search-icon .hm-icon{width:18px;height:18px}.home-bento-search-input{display:block;flex:1;min-width:0;padding:0;margin:0;font-size:1rem;font-weight:500;font-family:inherit;color:var(--text)!important;background:transparent!important;border:none!important;box-shadow:none!important;-webkit-text-fill-color:var(--text)}.home-bento-search-input::placeholder{color:var(--text-dim);font-weight:400}.home-bento-search-input:focus,.home-bento-search-input:focus-visible{box-shadow:none!important}.home-bento-search-clear{flex-shrink:0;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;font-size:1.15rem;line-height:1;color:var(--text-muted);border-radius:8px}@media (hover: hover){.home-bento-search-clear:hover{color:var(--text);background:var(--ui-fill)}}.home-bento-search-hint{font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted);line-height:1.3}.home-bento-search--locked{cursor:pointer;justify-content:center}.home-bento-search-lock-btn{display:flex;align-items:center;gap:10px;width:100%;padding:0;margin:0;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent}.home-bento-search-lock-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.home-bento-search-lock-label{font-size:var(--ui-fs-section);font-weight:700;color:var(--text-strong)}.home-bento-search-open{display:none;width:100%;align-items:center;gap:10px;padding:0;margin:0;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent}.home-bento-search-open-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.home-bento-search-open-label{font-size:var(--ui-fs-section);font-weight:700;color:var(--text-strong)}@media (max-width: 1000px){.home-bento-search:has(.home-bento-search-open) .home-bento-search-inline{display:none}.home-bento-search:has(.home-bento-search-open) .home-bento-search-open{display:flex}.home-bento-search:has(.home-bento-search-open){cursor:pointer}}.home-bento-text{display:flex;flex-direction:column;min-width:0;flex:1}.home-bento--msg{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;padding:24px 16px;text-align:center;background:var(--ui-surface);box-shadow:var(--ui-ring);border-radius:var(--ui-radius-card);color:var(--text);min-height:140px}.home-hub-link-btn{margin-top:12px;padding:10px 20px;border-radius:var(--ui-radius-control);background:var(--ui-fill);color:var(--accent);font-weight:600;font-size:1rem;text-decoration:none;border:none}button.home-quick-item{margin:0;padding:0;border:none;background:transparent;font:inherit;color:inherit;cursor:pointer;text-align:inherit;width:100%}button.home-bento-cell{margin:0;border:none;font:inherit;cursor:pointer;appearance:none;-webkit-appearance:none;box-sizing:border-box;width:100%;text-align:inherit;background:var(--ui-surface);box-shadow:var(--ui-ring)}.home-quick{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;padding:4px 2px}.home-quick-item{display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none;color:var(--text-muted);min-width:0;-webkit-tap-highlight-color:transparent}.home-quick-icon{width:100%;max-width:52px;aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:var(--ui-fill);color:var(--text);border-radius:var(--ui-radius-card-sm);transition:transform var(--ui-dur-press) ease-out,background-color .16s ease}.home-hub .home-quick-icon .hm-icon{width:22px;height:22px}.home-quick-item:active .home-quick-icon{transform:scale(.97);background:var(--ui-fill-hover)}.home-quick-label{font-size:var(--ui-fs-meta);font-weight:600;text-align:center;color:var(--text-muted);line-height:1.2;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 1000px){.home-quick{margin-top:16px;padding:4px 2px 8px}.home-bento{grid-template-columns:1fr;grid-template-rows:auto;gap:10px;min-height:auto}.home-bento-cell--tall{grid-column:1;grid-row:auto;min-height:112px}.home-bento-search,.home-bento-cell--wide{grid-column:1;grid-row:auto;width:100%;min-height:72px}.home-bento-pair{grid-column:1;grid-row:auto}.home-bento-cell--sq{min-height:96px}.home-bento--msg{grid-column:1}}@media (max-width: 400px){.home-banner-stat{flex:1 1 calc(50% - 8px)}}@media (prefers-reduced-motion: reduce){.home-bento-cell,.home-quick-icon{transition:none}.home-bento-cell:active,.home-quick-item:active .home-quick-icon{transform:none}}@media (max-width: 360px){.home-quick{grid-template-columns:repeat(3,1fr);row-gap:12px}.home-quick-icon{max-width:56px}}.home-hub.home-hub--member{display:flex;flex-direction:column;gap:12px;padding:0;margin:0}.home-tabs .ui-seg__btn{padding-inline:4px;white-space:nowrap}.mobile-search-overlay{position:fixed;inset:0;z-index:var(--z-overlay, 500);display:flex;flex-direction:column;background:var(--bg);padding-top:env(safe-area-inset-top,0);opacity:0;transform:translateY(16px);transition:opacity .26s var(--ui-ease-out),transform .3s var(--ui-ease-out);pointer-events:none}.mobile-search-overlay--open{opacity:1;transform:translateY(0);pointer-events:auto}.mobile-search-overlay-bar{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:8px 12px 8px 16px;flex-shrink:0;border-bottom:none}.mobile-search-overlay-title{font-size:var(--ui-fs-section);font-weight:700;color:var(--text-strong)}.mobile-search-overlay-close{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;font-size:1.1rem;color:var(--text-muted);border-radius:var(--ui-radius-control);border:none;background:transparent}.mobile-search-overlay-close:active{background:var(--ui-fill)}.mobile-search-overlay-body{flex:1;display:flex;flex-direction:column;min-height:0;overflow-y:auto;padding:8px 16px 24px;-webkit-overflow-scrolling:touch}.mobile-search-overlay-body .gs{display:flex!important;flex-direction:column;flex:1;min-height:0;width:100%;max-width:none}.mobile-search-overlay-body .gs-mobile-overlay .gs-input-wrap{height:48px;padding:0 14px;border:none!important;outline:none!important;box-shadow:none!important;background:var(--ui-fill);border-radius:var(--ui-radius-card-sm);transition:background-color .16s ease}.mobile-search-overlay-body .gs-mobile-overlay .gs-input-wrap:focus-within{border:none!important;outline:none!important;box-shadow:none!important;background:var(--ui-fill-hover)}.mobile-search-overlay-body .gs-mobile-overlay .gs-input{font-size:1rem;color:var(--text);box-shadow:none!important}@media (min-width: 1001px){.mobile-search-overlay{display:none!important}}@media (prefers-reduced-motion: reduce){.mobile-search-overlay{transition:opacity .15s ease;transform:none}}.notification-bell{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;color:var(--text-muted);border-radius:var(--ui-radius-control);transition:color .16s ease,background-color .16s ease,transform var(--ui-dur-press) ease-out}.notification-bell:active{transform:scale(.97)}@media (hover: hover){.notification-bell:hover{color:var(--text-strong);background:var(--ui-fill)}}.notification-bell-badge{position:absolute;top:3px;right:3px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--danger);color:#fff;font-size:var(--ui-fs-meta);font-weight:700;line-height:18px;font-variant-numeric:tabular-nums;text-align:center}@media (prefers-reduced-motion: reduce){.notification-bell{transition:none}.notification-bell:active{transform:none}}.user-menu{position:relative;display:flex;align-items:center}.user-menu-trigger{display:flex;align-items:center;gap:8px;padding:4px 10px 4px 4px;border:0;border-radius:999px;background:var(--ui-fill);color:var(--text-strong);cursor:pointer;transition:background-color .16s ease,transform var(--ui-dur-press) ease-out}.user-menu-trigger:active{transform:scale(.97)}@media (hover: hover){.user-menu-trigger:hover{background:var(--ui-fill-hover)}}.user-menu-avatar{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--accent);color:var(--on-accent);font-weight:700;font-size:var(--fs-md);background-size:cover;background-position:center}.user-menu-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:600}.user-menu-panel{position:absolute;top:calc(100% + 8px);right:0;z-index:var(--z-dropdown, 200);min-width:220px;max-width:calc(100vw - 16px);padding:8px;background:var(--ui-chrome);box-shadow:var(--ui-chrome-ring),var(--ui-shadow-pop);border-radius:var(--ui-radius-card-sm);transform-origin:top right;animation:user-menu-pop .16s var(--ui-ease-out)}@keyframes user-menu-pop{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.user-menu-head{display:flex;gap:12px;align-items:center;min-width:240px;max-width:320px;padding:10px 10px 10px 8px;border-radius:10px;color:inherit;text-decoration:none;transition:background-color .12s ease,transform var(--ui-dur-press) ease-out}.user-menu-head:hover,.user-menu-head:focus-visible{background:var(--ui-fill)}.user-menu-head:focus-visible{outline-offset:-2px}.user-menu-head:active{transform:scale(.98)}.user-menu-head-avatar{flex:none;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--accent);color:var(--on-accent);font-weight:700;background-size:cover;background-position:center}.user-menu-head-text{display:grid;gap:1px;min-width:0;flex:1}.user-menu-head-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700;font-size:var(--fs-md);color:var(--text-strong)}.user-menu-head-code{font-size:var(--ui-fs-meta);font-variant-numeric:tabular-nums;color:var(--text-muted)}.user-menu-head-hint{font-size:var(--ui-fs-meta);color:var(--text-muted)}.user-menu-head-go{margin-top:2px;font-size:var(--ui-fs-meta);font-weight:700;color:var(--accent)}.user-menu-head-chev{flex:none;color:var(--text-muted)}.user-menu-label{padding:6px 12px 2px;font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted)}.user-menu-divider{height:1px;margin:6px 0;background:var(--ui-hairline)}.user-menu-item{display:block;width:100%;padding:9px 12px;text-align:left;font-size:var(--ui-fs-body);font-weight:500;color:var(--text);background:transparent;border:none;border-radius:8px;cursor:pointer;text-decoration:none;transition:background-color .12s ease,color .12s ease}.user-menu-item:hover,.user-menu-item:focus-visible{background:var(--ui-fill);color:var(--text-strong)}.user-menu-item:focus-visible{outline-offset:-2px;border-radius:8px}.user-menu-logout{color:var(--negative)}.user-menu-logout:hover{background:rgba(var(--negative-rgb),.12);color:var(--negative)}@media (max-width: 640px){.user-menu-name{display:none}.user-menu-trigger{padding:0;background:transparent;gap:0}.user-menu-trigger:hover{background:transparent}}@media (prefers-reduced-motion: reduce){.user-menu-panel{animation:none}.user-menu-trigger{transition:none}.user-menu-trigger:active{transform:none}}@media (forced-colors: active){.user-menu-panel{border:1px solid CanvasText}.user-menu-trigger{border:1px solid ButtonText}}.site-header{background:var(--ui-bar-solid);padding-top:env(safe-area-inset-top,0px);box-shadow:0 1px 0 var(--ui-hairline);position:sticky;top:0;z-index:var(--z-header, 100);overflow-x:clip;overflow-y:visible}@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))){.site-header{background:transparent}.site-header:before{content:"";position:absolute;inset:0;z-index:-1;background:var(--ui-bar);-webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%);pointer-events:none}}@media (prefers-reduced-transparency: reduce){.site-header{background:var(--ui-bar-solid)}.site-header:before{display:none}}.site-header .site-header-inner.container{max-width:1180px;width:100%;padding-inline:20px}.site-header-inner{display:flex;flex-direction:column;padding:0 0 14px;overflow:visible;min-width:0;max-width:100%}.header-top{display:flex;align-items:center;flex-wrap:nowrap;width:100%;min-height:56px;padding:14px 0 10px;gap:16px}.header-top-mobile{display:none}.header-mobile-actions{display:flex;align-items:center;gap:4px;margin-left:auto;flex-shrink:0}.header-mobile-icon-btn,.header-mobile-login{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;color:var(--text-muted);border-radius:var(--ui-radius-control);transition:color .16s ease,background-color .16s ease,transform var(--ui-dur-press) ease-out}.header-mobile-icon-btn:active{transform:scale(.97)}@media (hover: hover){.header-mobile-icon-btn:hover,.header-mobile-login:hover{color:var(--text-strong);background:var(--ui-fill)}}.header-mobile-login{min-width:0;padding:0 14px;border:0;border-radius:999px;background:var(--ui-fill);color:var(--text-strong);font-size:var(--fs-md);font-weight:600;white-space:nowrap}.header-mobile-login:active{transform:scale(.97)}.header-mobile-user .user-menu-trigger{min-width:44px;min-height:44px}.brand-mobile{flex:1;min-width:0;justify-content:flex-start}.brand-mobile .brand-image{height:34px;max-width:min(200px,52vw)}.header-lead{display:flex;align-items:center;flex:1 1 0;min-width:0;gap:20px}.header-search-wrap{flex:1 1 auto;display:flex;justify-content:center;min-width:0;padding:0 12px}.header-search-wrap .gs{width:100%;max-width:560px}.brand{display:inline-flex;align-items:center;flex-shrink:0;text-decoration:none}.brand-image{display:block;height:42px;width:auto;max-width:min(300px,33vw);object-fit:contain}.header-lead .gs{display:none}.header-auth{display:flex;align-items:center;flex:1 1 0;justify-content:flex-end;gap:8px;margin-left:auto}.header-auth-link{padding:10px 14px;font-size:.88rem;font-weight:600;color:var(--text-muted);border-radius:var(--ui-radius-control);transition:color .16s ease,background-color .16s ease,transform var(--ui-dur-press) ease-out}.header-auth-link:active{transform:scale(.97)}@media (hover: hover){.header-auth-link:hover{color:var(--text-strong);background:var(--ui-fill)}}.header-auth-btn{padding:10px 16px;font-size:.88rem;font-weight:700;color:var(--on-accent);background:var(--accent);border-radius:var(--ui-radius-control);transition:background-color .16s ease,transform var(--ui-dur-press) ease-out}@media (hover: hover){.header-auth-btn:hover{background:var(--accent-2)}}.header-auth-btn:active{transform:scale(.97)}.nav-toggle{display:none;flex-shrink:0;width:44px;height:44px;background:transparent;border:0;border-radius:var(--ui-radius-control);cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0;position:relative;z-index:calc(var(--z-header, 100) + 1);transition:background .15s}.nav-toggle:active{background:var(--ui-fill)}.nav-toggle span{display:block;width:18px;height:2px;background:var(--text);border-radius:2px;transition:transform .25s cubic-bezier(.4,0,.2,1),opacity .25s}.nav-toggle-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle-open span:nth-child(2){opacity:0}.nav-toggle-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.site-nav{display:flex;gap:6px;padding:12px 0 10px;box-shadow:0 -1px 0 var(--ui-hairline);flex-wrap:nowrap;justify-content:center;align-items:center;min-height:44px;width:100%;max-width:100%;min-width:0;overflow:visible}.site-nav-drawer{display:none}button.nav-link{margin:0;border:none;background:transparent;font-family:inherit;cursor:pointer;text-decoration:none}.nav-link{display:inline-flex;align-items:center;box-sizing:border-box;min-height:36px;padding:8px 12px;border-radius:var(--ui-radius-control);font-size:.86rem;font-weight:600;line-height:1.4;color:var(--text-muted);transition:color .16s ease,background-color .16s ease,transform var(--ui-dur-press) ease-out;white-space:nowrap;flex-shrink:0}.nav-link:active{transform:scale(.97)}@media (hover: hover){.nav-link:hover{color:var(--text-strong);background:var(--ui-surface-hover)}}.nav-link.active{color:var(--accent);background:var(--ui-surface-hover)}@media (min-width: 1001px){.site-nav{flex-wrap:nowrap;overflow:visible;gap:6px;justify-content:center}.nav-link{min-height:36px;padding:8px 14px;font-size:.9rem;letter-spacing:0}}.nav-group{position:relative;display:inline-flex;flex-shrink:0}.nav-group-trigger{gap:6px}.nav-group-caret{flex-shrink:0;opacity:.7;transition:transform .15s}.nav-group.is-open>.nav-group-trigger{color:var(--text-strong);background:var(--ui-surface-hover)}.nav-group.is-open>.nav-group-trigger.active{color:var(--accent)}.nav-group.is-open .nav-group-caret{transform:rotate(180deg)}.nav-group-panel{position:absolute;top:100%;left:0;z-index:var(--z-dropdown, 200);padding-top:8px}@keyframes nav-pop{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.nav-group-list{list-style:none;display:flex;flex-direction:column;gap:2px;min-width:190px;padding:6px;background:var(--ui-chrome);box-shadow:var(--ui-chrome-ring),var(--ui-shadow-pop);border-radius:var(--ui-radius-card-sm);transform-origin:top left;animation:nav-pop .16s var(--ui-ease-out)}.nav-group-item{display:flex;align-items:center;gap:8px;min-height:38px;padding:9px 12px;border-radius:8px;font-size:.9rem;font-weight:500;color:var(--text);white-space:nowrap;text-decoration:none;transition:color .12s ease,background-color .12s ease}.nav-group-item:hover,.nav-group-item:focus-visible{color:var(--text-strong);background:var(--ui-fill)}.nav-group-item:focus-visible{outline-offset:-2px;border-radius:8px}.nav-group-item.active{color:var(--accent);background:var(--ui-fill)}.nav-lock{flex-shrink:0;margin-left:6px;color:var(--text-muted)}.nav-group-item .nav-lock{margin-left:auto}.gated-nav-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (prefers-reduced-motion: reduce){.nav-group-caret,.nav-group-item,.nav-link,.header-auth-btn,.header-auth-link{transition:none}.nav-group-list{animation:none}.nav-link:active,.header-auth-btn:active,.header-auth-link:active,.header-mobile-icon-btn:active,.header-mobile-login:active{transform:none}}.nav-backdrop{display:none}@media (max-width: 900px){.header-top{gap:12px;padding:12px 0 8px}.header-lead{gap:14px}.brand-image{height:36px;max-width:240px}.header-lead .gs{max-width:none;min-width:120px}}@media (max-width: 1000px){.site-header{--mobile-header-h: 52px}.site-header-inner{padding:0}.header-top-desktop,.site-nav-desktop{display:none!important}.header-top-mobile{display:flex;min-height:var(--mobile-header-h, 52px);padding:4px 0;gap:8px;align-items:center}.nav-toggle{display:none}}@media (max-width: 600px){.header-lead .gs{min-width:0;flex:1 1 0}.header-auth-btn{display:none}.header-auth-link{display:block;padding:8px 12px;font-size:.85rem}}@media (min-width: 1001px){.site-header .site-header-inner.container{padding-bottom:0}.header-top{min-height:48px;padding:10px 0 8px;gap:14px}.brand-image{height:34px}.header-search-wrap .gs{max-width:480px}.header-search-wrap .gs-input-wrap{height:36px}.site-header .lang-switcher,.site-header .notification-bell{min-width:36px;min-height:36px}.site-header .user-menu-avatar{width:28px;height:28px}.site-header .site-nav-desktop{gap:4px;padding:7px 0}.nav-link{min-height:32px;padding:6px 10px;font-size:var(--ui-fs-meta)}}@media (forced-colors: active){.site-header{border-bottom:1px solid CanvasText}.nav-link.active,.nav-group-item.active{outline:2px solid Highlight;outline-offset:-2px}.nav-group-list{border:1px solid CanvasText}}@media (prefers-contrast: more){.site-header{background:var(--ui-bar-solid)}.site-header:before{display:none}}.site-banner{position:relative;z-index:1;box-shadow:0 1px 0 var(--ui-hairline)}.site-banner--info{background:#ffffff0d;color:var(--text-strong)}.site-banner--warn{background:#fbbf241f;color:#fcd34d}.site-banner--success{background:rgba(var(--accent-rgb),.12);color:var(--accent)}.site-banner-inner{display:flex;align-items:center;gap:12px;min-height:40px;padding-block:8px}.site-banner-text{font-size:var(--fs-md);font-weight:600;line-height:1.45}.site-banner-link{flex:1;min-width:0;color:inherit;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.site-banner-inner>.site-banner-text{flex:1;min-width:0}.site-banner-close{flex:none;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:0;border-radius:8px;background:transparent;color:inherit;opacity:.75;cursor:pointer}.site-banner-close:active{background:#ffffff14}@media (pointer: coarse){.site-banner-close{width:44px;height:44px}}@media (hover: hover){.site-banner-close:hover{opacity:1;background:#ffffff0f}}.site-select{position:relative;min-width:120px}.site-select--compact{min-width:56px}.site-select--disabled{opacity:.6;pointer-events:none}.site-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:40px;padding:0 12px;font-size:var(--fs-md);font-family:inherit;color:var(--text);background:#00000038;border:1px solid var(--border-strong);border-radius:var(--ui-radius-control);cursor:pointer;transition:border-color .16s ease,color .16s ease,transform var(--ui-dur-press) ease-out}.site-select-trigger:active{transform:scale(.98)}@media (hover: hover){.site-select-trigger:hover:not(:disabled){border-color:var(--text-dim);color:var(--text-strong)}}.site-select--open .site-select-trigger,.site-select-trigger:focus-visible{border-color:var(--accent)}.site-select-value{flex:1;min-width:0;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-select--compact .site-select-value{text-align:center}.site-select-value.is-placeholder{color:var(--text-muted)}.site-select-chevron{display:inline-flex;flex-shrink:0;font-size:var(--ui-fs-meta);color:var(--text-muted);transition:transform .16s var(--ui-ease-out)}.site-select--open .site-select-chevron{transform:rotate(180deg)}.site-select-panel{position:fixed;z-index:var(--z-popover, 1100);width:max-content;max-width:min(360px,calc(100vw - 16px));margin:0;padding:4px;list-style:none;background:var(--ui-chrome);box-shadow:var(--ui-chrome-ring),var(--ui-shadow-pop);border-radius:var(--ui-radius-card-sm);overflow-y:auto;overscroll-behavior:contain;transform-origin:top center;animation:site-select-pop .16s var(--ui-ease-out)}.site-select-panel--up{transform-origin:bottom center}.site-select-group{padding:8px 12px 4px;font-size:var(--ui-fs-meta);font-weight:700;color:var(--text-muted)}@keyframes site-select-pop{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.site-select-option{display:block;width:100%;min-height:36px;padding:8px 12px;font-size:var(--fs-md);font-family:inherit;text-align:left;color:var(--text);background:transparent;border:none;border-radius:8px;cursor:pointer;transition:background-color .12s ease,color .12s ease}.site-select-panel--compact .site-select-option{text-align:center}.site-select-option.is-active{background:var(--ui-fill);color:var(--text-strong)}@media (hover: hover){.site-select-option:hover{background:var(--ui-fill);color:var(--text-strong)}}.site-select-option.is-selected{color:var(--accent);font-weight:700}@media (prefers-reduced-motion: reduce){.site-select-panel{animation:none}.site-select-chevron,.site-select-trigger{transition:none}}@media (forced-colors: active){.site-select-panel{border:1px solid CanvasText}.site-select-option.is-selected{outline:2px solid Highlight;outline-offset:-2px}}.song-art{flex-shrink:0;border-radius:6px;overflow:hidden;background:var(--surface-2);border:1px solid var(--border-soft);display:flex;align-items:center;justify-content:center}.song-art-sm{width:44px;height:44px}.song-art-md{width:52px;height:52px}.song-art img{width:100%;height:100%;object-fit:cover;display:block}.song-art-ph{font-size:1.1rem;color:var(--text-muted);line-height:1}.diff-badge{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:4px;font-family:var(--font-display);font-size:var(--fs-xs);font-weight:700;letter-spacing:1px;min-width:38px;justify-content:center;white-space:nowrap}.diff-level{white-space:nowrap;font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:500;opacity:1;letter-spacing:0}.diff-nov{background:rgba(var(--diff-nov-rgb),.12);color:var(--diff-nov);border:1px solid rgba(var(--diff-nov-rgb),.32)}.diff-adv{background:rgba(var(--diff-adv-rgb),.12);color:var(--diff-adv);border:1px solid rgba(var(--diff-adv-rgb),.32)}.diff-exh{background:rgba(var(--diff-exh-rgb),.12);color:var(--diff-exh);border:1px solid rgba(var(--diff-exh-rgb),.32)}.diff-mxm{background:rgba(var(--diff-mxm-rgb),.1);color:var(--diff-mxm);border:1px solid rgba(229,231,235,.35)}.diff-inf{background:rgba(var(--diff-inf-rgb),.12);color:var(--diff-inf);border:1px solid rgba(var(--diff-inf-rgb),.4)}.diff-grv{background:rgba(var(--diff-grv-rgb),.12);color:var(--diff-grv);border:1px solid rgba(var(--diff-grv-rgb),.32)}.diff-hvn{background:rgba(var(--diff-hvn-rgb),.12);color:var(--diff-hvn);border:1px solid rgba(var(--diff-hvn-rgb),.32)}.diff-vvd{background:rgba(var(--diff-vvd-rgb),.12);color:var(--diff-vvd);border:1px solid rgba(var(--diff-vvd-rgb),.32)}.diff-xcd{background:rgba(var(--diff-xcd-rgb),.12);color:var(--diff-xcd);border:1px solid rgba(var(--diff-xcd-rgb),.32)}.diff-nbl,.diff-nabla{background:rgba(var(--diff-nbl-rgb),.12);color:var(--diff-nbl);border:1px solid rgba(var(--diff-nbl-rgb),.32)}.diff-ult{background:rgba(var(--diff-ult-rgb),.15);color:var(--diff-ult);border:1px solid rgba(var(--diff-ult-rgb),.4)}.lamp-badge{display:inline-block;padding:2px 9px;border-radius:4px;font-family:var(--font-display);font-size:var(--fs-xs);font-weight:700;letter-spacing:1px;text-align:center;min-width:70px;white-space:nowrap}.lamp-played{background:#4b556340;color:#9ca3af;border:1px solid #374151}.lamp-clear{background:#22c55e2e;color:#86efac;border:1px solid #22c55e}.lamp-ex{background:#f9731638;color:#fdba74;border:1px solid #f97316}.lamp-mxv{background:#e5e7eb2e;color:#f9fafb;border:1px solid #e5e7eb}.lamp-uc{background:#a855f738;color:#d8b4fe;border:1px solid #a855f7}.lamp-puc{background:#eab30840;color:#fde047;border:1px solid #eab308}.lamp-none{background:transparent;color:var(--text-dim)}.grade-text{font-family:var(--font-display);font-weight:700;letter-spacing:.5px;font-size:.92rem}.grade-img{height:20px;width:auto;object-fit:contain;vertical-align:middle;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}.grade-img-sm{height:16px;opacity:.9}.grade-s{color:#fde047;text-shadow:0 0 6px rgba(253,224,71,.45);font-weight:800}.grade-aaap{color:#f9a8d4}.grade-aaa{color:#c4f181}.grade-aap{color:#93c5fd}.grade-aa{color:#6ee7b7}.grade-ap{color:#fb923c}.grade-a{color:#facc15}.grade-b{color:#84cc16}.grade-c{color:#818cf8}.grade-d{color:#a8a29e}.grade-other{color:#fbbf24}.grade-dim{color:var(--text-dim)}.ex-text{font-family:var(--font-mono);font-size:.85rem}.ex-pct{margin-left:4px;color:var(--text-dim);font-size:var(--fs-xs)}.ex-dim{color:var(--text-dim)}.pattern-badge{display:inline-flex;align-items:center;justify-content:center;padding:0 7px;border-radius:3px;font-family:var(--font-display);font-size:var(--fs-xs);font-weight:700;letter-spacing:.5px;white-space:nowrap;line-height:1.2}.pat-peak{background:rgba(var(--pat-peak-rgb),.15);color:var(--pat-peak);border:1px solid rgba(var(--pat-peak-rgb),.35)}.pat-tsumami{background:rgba(var(--pat-tsumami-rgb),.15);color:var(--pat-tsumami);border:1px solid rgba(var(--pat-tsumami-rgb),.35)}.pat-tricky{background:rgba(var(--pat-tricky-rgb),.15);color:var(--pat-tricky);border:1px solid rgba(var(--pat-tricky-rgb),.35)}.pat-onehand{background:rgba(var(--pat-onehand-rgb),.15);color:var(--pat-onehand);border:1px solid rgba(var(--pat-onehand-rgb),.35)}.pat-handtrip{background:rgba(var(--pat-handtrip-rgb),.15);color:var(--pat-handtrip);border:1px solid rgba(var(--pat-handtrip-rgb),.35)}.pat-notes{background:rgba(var(--pat-notes-rgb),.15);color:var(--pat-notes);border:1px solid rgba(var(--pat-notes-rgb),.35)}.pat-default{background:#6b728026;color:#9ca3af;border:1px solid rgba(107,114,128,.35)}.glyph-text{display:block;flex-shrink:0;margin:.28em auto;overflow:visible}.vflive-card .pv-d .glyph-text{margin:calc((1.05em - .643em) / 2) auto}.vflive-card .pv-card-diff-inline .glyph-text{margin:calc((1.1em - .643em) / 2) auto}.vflive-card .pv2-card-diff .glyph-text{margin:calc((1.15em - .643em) / 2) auto}:where(:has(>.glyph-text)){display:inline-flex;align-items:center;justify-content:center}.diff-badge:not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card,.pv-content-area) *),.lamp-badge:not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card,.pv-content-area) *),.pattern-badge:not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card,.pv-content-area) *){--dc-bg: transparent;min-width:0;padding:0;border:0;border-radius:0;background:transparent;font-family:var(--font-sans);font-size:var(--ui-fs-meta);font-weight:600;letter-spacing:.01em;font-variant-numeric:tabular-nums}.lamp-badge:not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card,.pv-content-area) *),.pattern-badge:not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card,.pv-content-area) *){display:inline-flex;align-items:center;gap:5px;color:var(--text-muted)}.lamp-badge:not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card,.pv-content-area) *):before,.pattern-badge:not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card,.pv-content-area) *):before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:var(--badge-dot, var(--text-muted))}.pattern-badge:not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card,.pv-content-area) *):before{border-radius:2px}.lamp-badge:not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card,.pv-content-area) *) .glyph-text,.pattern-badge:not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card,.pv-content-area) *) .glyph-text{margin:0}.lamp-none:before{display:none}.lamp-played{--badge-dot: var(--lamp-played)}.lamp-clear{--badge-dot: var(--lamp-clear)}.lamp-ex{--badge-dot: var(--lamp-hard)}.lamp-mxv{--badge-dot: var(--lamp-exhd)}.lamp-uc{--badge-dot: var(--lamp-uc)}.lamp-puc{--badge-dot: var(--lamp-puc)}.pat-peak{--badge-dot: var(--pat-peak)}.pat-tsumami{--badge-dot: var(--pat-tsumami)}.pat-tricky{--badge-dot: var(--pat-tricky)}.pat-onehand{--badge-dot: var(--pat-onehand)}.pat-handtrip{--badge-dot: var(--pat-handtrip)}.pat-notes{--badge-dot: var(--pat-notes)}.lamp-none:not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card,.pv-content-area) *){background:transparent;color:var(--text-muted)}.pat-default:not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card,.pv-content-area) *){color:var(--text-muted)}.grade-s:not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card,.pv-content-area) *){text-shadow:none}.ex-pct:not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card,.pv-content-area) *),.ex-dim:not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card,.pv-content-area) *),.grade-dim:not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card,.pv-content-area) *){color:var(--text-muted)}.ex-pct:not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card,.pv-content-area) *){font-size:var(--ui-fs-meta)}.ex-text:not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card,.pv-content-area) *){font-size:max(var(--ui-fs-meta),1em)}.diff-badge:not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card,.pv-content-area) *) .diff-level{font-family:inherit;font-size:inherit;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:0}.dt-diff{color:var(--c, var(--text-muted));font-size:var(--ui-fs-meta);font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.01em;white-space:nowrap}.social-link-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:7px;color:#fff;text-decoration:none;flex-shrink:0;transition:transform .12s ease,filter .12s ease,box-shadow .12s ease}.social-link-btn-sm{width:26px;height:26px;border-radius:6px}.social-link-btn:hover{transform:translateY(-1px);filter:brightness(1.08)}.social-link-btn:focus-visible{outline:2px solid rgba(174,243,89,.55);outline-offset:2px}.social-link-btn-discord{background:#5865f2}.social-link-btn-twitter{background:#0f0f0f;border:1px solid #2a2a2a}.social-link-btn-youtube{background:red}.social-link-btn-twitch{background:#9146ff}.social-link-icon{display:inline-flex;align-items:center;justify-content:center}.upc{width:300px;max-width:90vw;background:var(--ui-chrome);box-shadow:var(--ui-chrome-ring),var(--ui-shadow-pop);border-radius:var(--ui-radius-card);overflow:hidden;position:relative;color:var(--text)}.upc-banner{position:relative;width:100%;aspect-ratio:17 / 6;background-color:var(--ui-fill);background-size:cover;background-position:center;background-repeat:no-repeat}.upc-banner-shade{position:absolute;inset:0;background:#0000002e}.upc-close{position:absolute;top:6px;right:6px;z-index:2;width:28px;height:28px;border-radius:50%;background:#0009;color:var(--text-strong);border:0;cursor:pointer;font-size:1.1rem;line-height:1;display:flex;align-items:center;justify-content:center;transition:background-color .16s ease,transform var(--ui-dur-press) ease-out}.upc-close:active{transform:scale(.97)}@media (hover: hover){.upc-close:hover{background:#000000d1}}@media (pointer: coarse){.upc-close{width:36px;height:36px;font-size:1.3rem}}.upc-head{position:relative;display:flex;align-items:flex-end;gap:12px;padding:0 16px 10px;margin-top:-28px}.upc-avatar{width:80px;height:80px;border-radius:50%;background-color:var(--ui-fill-strong);display:flex;align-items:center;justify-content:center;font-size:1.65rem;font-weight:800;color:var(--text-strong);flex-shrink:0;background-size:cover;background-position:center;box-shadow:0 0 0 4px var(--ui-chrome)}.upc-id{flex:1 1 auto;min-width:0;padding-bottom:4px}.upc-name{font-weight:800;font-size:1.1429rem;letter-spacing:-.01em;color:var(--text-strong);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upc-code{font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted);margin-top:2px}.upc-bio{margin:4px 16px 0;font-size:1rem;line-height:1.45;color:var(--text-muted);white-space:pre-wrap;word-break:break-word;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.upc-stats{display:grid;grid-template-columns:repeat(3,1fr);margin:12px 16px 0;padding-top:12px;box-shadow:0 -1px 0 var(--ui-hairline)}.upc-stat{padding:0 8px;text-align:left;min-width:0}.upc-stat+.upc-stat{box-shadow:-1px 0 0 var(--ui-hairline)}.upc-stat:first-child{padding-left:0}.upc-stat-label{font-size:var(--ui-fs-meta);color:var(--text-muted);font-weight:600}.upc-stat-val{font-size:1.0714rem;font-weight:700;color:var(--text-strong);margin-top:2px;font-variant-numeric:tabular-nums}.upc-stat-accent{color:var(--text-strong)}.upc-stat-sub{font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upc-top-chart{display:block;margin:12px 16px 0;padding-top:12px;box-shadow:0 -1px 0 var(--ui-hairline);text-decoration:none;color:inherit}@media (hover: hover){.upc-top-chart:hover .upc-top-title{color:var(--text-strong);text-decoration:underline;text-underline-offset:3px}}.upc-top-label{font-size:var(--ui-fs-meta);color:var(--text-muted);font-weight:600;margin-bottom:4px}.upc-top-row{display:flex;align-items:center;gap:8px;font-size:1rem;min-width:0}.upc-d{flex-shrink:0}.upc-top-title{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.upc-top-vf{flex-shrink:0;color:var(--text-strong);font-weight:700;font-size:var(--ui-fs-meta);font-variant-numeric:tabular-nums}.upc-socials{display:flex;flex-wrap:wrap;gap:4px;margin:12px 16px 0}.upc-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:12px 16px 16px;padding-top:12px;box-shadow:0 -1px 0 var(--ui-hairline)}.upc-joined{font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}.upc-go{display:inline-flex;align-items:center;justify-content:center;min-height:32px;font-size:var(--ui-fs-meta);font-weight:700;padding:0 14px;border-radius:var(--ui-radius-control);background:var(--accent);color:var(--on-accent);text-decoration:none;flex-shrink:0;transition:background-color .16s ease,transform var(--ui-dur-press) ease-out}.upc-go:active{transform:scale(.97)}@media (hover: hover){.upc-go:hover{background:var(--accent-2)}}@media (pointer: coarse){.upc-go{min-height:36px}}@media (max-width: 480px){.upc{width:92vw;max-width:360px}}@media (prefers-reduced-motion: reduce){.upc-close,.upc-go{transition:none}.upc-close:active,.upc-go:active{transform:none}}.um{cursor:pointer;display:inline;color:inherit;text-decoration:inherit;transition:color .16s ease;border-bottom:1px dotted transparent;border-radius:2px}@media (hover: hover){.um-text:hover{color:var(--accent-2);border-bottom-color:var(--text-dim)}}@media (hover: none){.um-text:not(.um-disabled){border-bottom-color:var(--text-dim)}}.um-chip{padding:2px 10px;background:var(--ui-fill);border-radius:999px;font-size:var(--ui-fs-meta);font-weight:600}@media (hover: hover){.um-chip:hover{background:var(--ui-fill-hover);color:var(--text-strong)}}.um-disabled{cursor:default;border-bottom-color:transparent}@media (hover: hover){.um-disabled:hover{color:inherit;border-bottom-color:transparent;background:var(--ui-fill)}}.um-no-underline,.um-no-underline:focus-visible{border-bottom-color:transparent!important;text-decoration:none!important}@media (hover: hover){.um-no-underline:hover{border-bottom-color:transparent!important;text-decoration:none!important}}.um-portal{position:fixed;z-index:var(--z-popover, 1100);animation:umIn .12s ease-out both}@keyframes umIn{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.um-loading,.um-error{width:240px;padding:16px;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--ui-chrome);box-shadow:var(--ui-chrome-ring),var(--ui-shadow-pop);border-radius:var(--ui-radius-card-sm);color:var(--text-muted);font-size:1rem;text-align:center}.um-error{color:var(--negative)}.um-login{flex-direction:column;color:var(--text)}.um-mobile-backdrop{position:fixed;inset:0;z-index:var(--z-popover, 1100);background:var(--ui-scrim);display:flex;align-items:center;justify-content:center;padding:16px;animation:umBdIn .14s ease-out both;touch-action:none}.um-mobile-wrap{max-width:92vw}@keyframes umBdIn{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion: reduce){.um-portal,.um-mobile-backdrop{animation:none!important}}.seg{--seg-pad: 3px;position:relative;display:inline-grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);padding:var(--seg-pad);border-radius:11px;background:#ffffff0f;box-shadow:inset 0 0 0 1px #ffffff0d;isolation:isolate}.seg-thumb{position:absolute;z-index:-1;top:var(--seg-pad);bottom:var(--seg-pad);left:var(--seg-pad);width:calc((100% - var(--seg-pad) * 2) / var(--seg-n));border-radius:8px;background:#ffffff24;box-shadow:0 1px 2px #00000059,inset 0 1px #ffffff14;transform:translate(calc(100% * var(--seg-i)));transition:transform .32s cubic-bezier(.22,1,.36,1)}.seg-opt{min-height:32px;padding:0 14px;border:0;border-radius:8px;background:none;color:var(--text-muted);font:inherit;font-size:var(--ui-fs-meta);font-weight:600;letter-spacing:.005em;white-space:nowrap;cursor:pointer;transition:color .16s ease}.seg-opt.is-on{color:var(--text-strong)}.seg-opt:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.seg-opt:active:not(:disabled){transform:scale(.96);transition:transform .1s ease-out}.seg-opt:not(.is-on):active:not(:disabled){background:#ffffff0f}@media (hover: hover){.seg-opt:not(.is-on):not(:disabled):hover{color:var(--text)}}.seg--sm .seg-opt{min-height:28px;padding:0 11px;font-size:var(--ui-fs-meta)}.seg.is-disabled{opacity:.5}.seg.is-disabled .seg-opt{cursor:not-allowed}@media (prefers-reduced-motion: reduce){.seg-thumb{transition:none}.seg-opt:active:not(:disabled){transform:none}}@media (prefers-contrast: more){.seg{box-shadow:inset 0 0 0 1px var(--border-strong)}.seg-thumb{background:#ffffff3d;box-shadow:inset 0 0 0 1px var(--text)}}@media (forced-colors: active){.seg{border:1px solid CanvasText}.seg-thumb{display:none}.seg-opt.is-on{outline:2px solid Highlight;outline-offset:-3px}}.home.container{padding-top:28px;padding-bottom:64px}@media (min-width: 1001px){.home-legacy{display:grid}}@media (max-width: 1000px){.home.container{padding-top:0;padding-bottom:0}.home-legacy{display:none}}.home-legacy{grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}.home-main,.home-side{display:flex;flex-direction:column;gap:24px;min-width:0}.home-legacy p{margin:0}.home-legacy ul,.home-legacy ol{margin:0;padding:0;list-style:none}.hm-head{margin:0 0 16px}.ui-section-title small{margin-left:8px;font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted)}.hm-more{display:inline-flex;flex-shrink:0;align-items:center;gap:2px;font-size:var(--ui-fs-meta)}.hm-more .hm-icon{width:14px;height:14px}.hm-icon{width:18px;height:18px;flex-shrink:0}.home-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.home-block-btn{margin-top:16px}.home-legacy .home-hero{position:relative;overflow:hidden;padding:0}.home-hero-art{position:absolute;top:0;bottom:0;right:0;width:300px;overflow:hidden;pointer-events:none;clip-path:polygon(77px 0,100% 0,100% 100%,0 100%)}.home-hero-flows{position:absolute;top:-100px;left:50px;right:-40px;height:488px;display:flex;gap:12px;transform:rotate(15deg);opacity:0;transition:opacity .6s ease}.home-hero-flows.is-ready{opacity:1}.home-hero-flowcol{position:relative;flex:1;overflow:hidden}.home-hero-flow{will-change:transform;animation:home-jacket-flow 70s linear infinite}.home-hero-flowcol:nth-child(2) .home-hero-flow{animation-duration:85s;animation-delay:-9s}.home-hero-flowcol:nth-child(3) .home-hero-flow{animation-duration:62s;animation-delay:-23s}.home-hero-flow img{display:block;width:100%;aspect-ratio:1;margin-bottom:12px;border-radius:10px;object-fit:cover;background:var(--ui-fill)}@keyframes home-jacket-flow{0%{transform:translateY(-50%)}to{transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.home-hero-flow{animation:none}}.home-hero-body{position:relative;display:flex;flex-direction:column;justify-content:center;gap:20px;min-height:288px;padding:32px 332px 32px 32px}.home-hero-title{margin:0;line-height:1.2}.home-legacy .home-hero-sub{margin-top:12px;max-width:34em;font-size:var(--ui-fs-body);line-height:1.65;color:var(--text-muted)}.home-legacy .home-hero-meta{margin-top:8px;min-height:1.55em;font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted);font-variant-numeric:tabular-nums}.home-how-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.home-how-card{display:flex;flex-direction:column}.home-how-card h3{margin:0}.home-how-body{flex:1;margin-top:8px;font-size:1rem;line-height:1.65;color:var(--text-muted)}.home-how-card .hm-more{margin-top:16px;align-self:flex-start}.home-steps{display:flex;flex-direction:column;gap:8px}.home-steps li{display:flex;gap:10px}.home-steps span{flex-shrink:0;display:grid;place-items:center;width:20px;height:20px;margin-top:1px;border-radius:50%;background:var(--ui-fill);color:var(--text-strong);font-size:var(--ui-fs-meta);font-weight:700;font-variant-numeric:tabular-nums}.home-song-row{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:12px}.home-song-row>li{min-width:0}.home-song{display:block;color:inherit;text-decoration:none}.home-song .home-song-art.song-art{position:relative;width:100%;height:auto;aspect-ratio:1;border:0;border-radius:10px}.home-song-art img{transition:opacity .5s ease,transform .3s ease}.home-legacy .home-song-title{margin-top:8px;font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-strong)}.home-legacy .home-song-artist{font-size:var(--ui-fs-meta);color:var(--text-muted)}.home-song-title,.home-song-artist{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (hover: hover){.home-song:hover .home-song-art img{transform:scale(1.04)}}.home-song--skel{aspect-ratio:1;border-radius:10px}@keyframes home-pulse{0%,to{opacity:1}50%{opacity:.55}}.home-song--skel,.home-song-art:after{background:var(--ui-fill);animation:home-pulse 1.4s ease-in-out infinite}.home-song-art:after{content:"";position:absolute;inset:0;transition:opacity .5s ease;pointer-events:none}.home-song-row:not(.is-ready) .home-song-art img{opacity:0}.is-ready .home-song-art:after{opacity:0;animation:none}@media (prefers-reduced-motion: reduce){.home-song--skel,.home-song-art:after{animation:none}}.hm-search{position:relative;display:block;color:var(--text-muted)}.hm-search .hm-icon{position:absolute;left:14px;top:50%;width:16px;height:16px;transform:translateY(-50%);pointer-events:none}.hm-search input.ui-input{min-height:44px;padding-left:40px}.home-legacy .hm-label{margin:16px 0 8px;font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted)}.hm-chips{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.hm-chip{width:100%;padding:0;font-variant-numeric:tabular-nums}.home-roll-seg{margin-bottom:0}.home-roll-sub{margin-top:8px;font-variant-numeric:tabular-nums}.home-roll-sub .site-select-trigger{min-height:36px}.home-roll-seg .ui-seg__btn{padding:0 2px;font-variant-numeric:tabular-nums}.home-roll{display:flex;align-items:center;gap:12px;min-height:60px;box-sizing:border-box;margin-top:16px;padding-top:16px;box-shadow:0 -1px 0 var(--ui-hairline)}.home-legacy .home-roll-hint{flex:1;font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted)}.home-roll-pick{flex:1;min-width:0;display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none}.home-roll-pick .song-art{width:36px;height:36px;border:0;border-radius:8px}.home-roll-text{min-width:0;display:flex;flex-direction:column}.home-roll-title,.home-roll-artist{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-roll-title{font-size:1rem;font-weight:600;color:var(--text-strong)}.home-roll-artist{font-size:var(--ui-fs-meta);color:var(--text-muted)}.shortcut-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.shortcut-tile{display:flex;height:100%;min-height:64px;box-sizing:border-box;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:10px 4px;border-radius:var(--ui-radius-control);background:var(--ui-fill);color:var(--text);font-size:var(--ui-fs-meta);font-weight:600;line-height:1.25;text-align:center;text-decoration:none;transition:background-color .16s ease,transform var(--ui-dur-press) ease-out}.shortcut-tile:active{transform:scale(.97)}.shortcut-tile .hm-icon{width:20px;height:20px;color:var(--text-muted)}@media (hover: hover){.shortcut-tile:hover{background:var(--ui-fill-hover);color:var(--text-strong)}}.home-perks{display:flex;flex-direction:column;gap:8px}.home-perks li{display:flex;gap:8px;align-items:center;font-size:1rem;color:var(--text)}.home-perks .hm-icon{width:16px;height:16px;color:var(--text-muted)}.home-notices{display:flex;flex-direction:column;gap:12px}.home-notices a{display:block;color:inherit;text-decoration:none}.home-legacy .home-notice-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:1rem;font-weight:600;color:var(--text-strong)}.home-legacy .home-notice-date{margin-top:2px;font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted);font-variant-numeric:tabular-nums}@media (hover: hover){.home-notices a:hover .home-notice-title{text-decoration:underline;text-underline-offset:3px}}@media (min-width: 1536px){.home-hero-art{width:340px}.home-hero-body{padding-right:372px}}@media (max-width: 1200px){.home-hero-art{width:250px}.home-hero-body{padding-right:270px}.home-how-grid{gap:12px}.home-song-row{grid-template-columns:repeat(6,minmax(0,1fr))}.home-song-row>:nth-child(n+7){display:none}}.activity-section{margin-top:32px}@media (max-width: 1000px){.activity-section{margin:16px 0 64px}}.activity-list{padding:4px 16px}.activity-row{display:grid!important;grid-template-columns:44px 68px 120px minmax(0,1fr) 84px 96px 36px 76px;gap:12px;align-items:center;padding:8px 10px;margin:0 -10px;border-radius:var(--ui-radius-control, 8px);font-size:var(--fs-md);transition:background-color .16s ease}.activity-row+.activity-row{box-shadow:0 -1px 0 var(--ui-hairline)}@media (hover: hover){.activity-row:hover{background:var(--ui-surface-hover)}}.activity-art.song-art-sm{align-self:center}.activity-art-link{display:inline-flex;align-self:center;border-radius:6px;transition:opacity .16s ease}@media (hover: hover){.activity-art-link:hover{opacity:.85}}.activity-time{color:var(--text-muted);font-size:var(--ui-fs-meta);font-weight:600;line-height:1.3;font-variant-numeric:tabular-nums}.activity-date,.activity-hm{white-space:nowrap}.activity-player{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-strong);font-weight:600;text-decoration:none!important}.activity-song{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-strong);font-weight:600;text-decoration:none;transition:color .16s ease}@media (hover: hover){.activity-song:hover{color:var(--accent);text-decoration:underline;text-underline-offset:3px}}.activity-row .dt-diff{white-space:nowrap;font-variant-numeric:tabular-nums}.activity-score{text-align:right;color:var(--text-strong);font-weight:600;font-variant-numeric:tabular-nums}.activity-row .grade-img{justify-self:center;display:block}.activity-row .ui-dot{white-space:nowrap}@media (max-width: 900px){.activity-list{padding:4px 12px}.activity-row{grid-template-columns:44px minmax(0,1fr) auto;grid-template-rows:auto auto;gap:4px 12px;padding:10px}.activity-art-link{grid-column:1;grid-row:1 / span 2}.activity-player{grid-column:2;grid-row:1}.activity-time{grid-column:3;grid-row:1;text-align:right}.activity-song{grid-column:2 / -1;grid-row:2;color:var(--text-muted)}.activity-row>:nth-child(n+5){display:none}}.activity-users{display:grid;gap:8px}.activity-users .activity-user.ui-card{padding:0;overflow:hidden}.activity-user-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;padding:12px 16px;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background-color .16s ease}@media (hover: hover){.activity-user-head:hover{background:var(--ui-surface-hover)}}.activity-user-head:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.activity-user-arts{display:inline-flex;width:122px}.activity-user-arts .activity-user-art{box-shadow:0 0 0 2px var(--ui-surface, #0d140d);border-radius:6px}.activity-user-arts .activity-user-art+.activity-user-art{margin-left:-18px}.activity-user-text{display:grid;gap:2px;min-width:0}.activity-user-name{color:var(--text-strong);font-weight:700;font-size:var(--fs-md);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-user-meta{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted);font-size:var(--ui-fs-meta);font-weight:600;font-variant-numeric:tabular-nums}.activity-user-chev{color:var(--text-muted);display:inline-flex;transition:transform .2s ease}.activity-user.is-open .activity-user-chev{transform:rotate(180deg)}.activity-user-body{padding:0 16px 8px;box-shadow:inset 0 1px 0 var(--ui-hairline)}.activity-user-profile{display:flex;justify-content:flex-end;padding:8px 0 2px;font-size:var(--ui-fs-meta)}.activity-user-profile .activity-player{color:var(--accent)}.activity-row.activity-row--user{grid-template-columns:44px 68px minmax(0,1fr) 84px 96px 36px 76px}@media (max-width: 900px){.activity-user-head{padding:12px;gap:12px}.activity-user-body{padding:0 12px 6px}.activity-user-arts{width:96px}.activity-user-arts .activity-user-art:nth-child(n+4){display:none}.activity-row.activity-row--user{grid-template-columns:44px minmax(0,1fr) auto;grid-template-rows:auto auto}.activity-row--user .activity-art-link{grid-column:1;grid-row:1 / span 2}.activity-row--user .activity-song{grid-column:2;grid-row:1;color:var(--text-strong)}.activity-row--user .activity-time{grid-column:3;grid-row:1;text-align:right}.activity-row--user .activity-date{display:none}.activity-row--user .dt-diff{grid-column:2;grid-row:2;display:inline!important;font-size:var(--ui-fs-meta)}.activity-row--user .activity-score{grid-column:3;grid-row:2;display:block!important;font-size:var(--ui-fs-meta)}.activity-row--user>:nth-child(n+6){display:none}}.hmm-hero{--hmm-art-w: 280px;position:relative;display:grid;grid-template-columns:minmax(0,1fr) var(--hmm-art-w);overflow:hidden}.hmm-hero.ui-panel{padding:0}.hmm-hero-art{position:relative;grid-column:2;grid-row:1;overflow:hidden;pointer-events:none;-webkit-mask-image:linear-gradient(to right,transparent,#000 56px);mask-image:linear-gradient(to right,transparent,#000 56px)}.hmm-crew{position:absolute;right:-40px;bottom:0;height:86%;width:auto;max-width:none;object-fit:contain;object-position:right bottom;-webkit-user-select:none;user-select:none}.hmm-vfmark{position:absolute;right:14px;bottom:10px;display:flex;flex-direction:column;align-items:center;filter:drop-shadow(0 4px 12px rgba(0,0,0,.6))}.hmm-emblem{width:88px;height:auto;display:block}.hmm-stars{display:flex;margin-top:-2px}.hmm-stars img{width:15px;height:15px;display:block}.hmm-hero-body{position:relative;grid-column:1;grid-row:1;display:flex;flex-direction:column;justify-content:space-between;gap:24px;min-width:0;min-height:248px;padding:28px 0 24px 28px}.hmm-hero-tags{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;min-height:1.55em}.hmm-tag{padding:2px 10px;border-radius:var(--r-pill);background:var(--ui-fill);font-size:var(--ui-fs-meta);font-weight:700;color:var(--text-strong)}.hmm-tag-muted{font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted)}.hmm-name{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.15}.home-legacy .hmm-sub{margin-top:6px;min-height:1.55em;font-size:1rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.hmm-sep{margin:0 8px;color:var(--text-dim)}.hmm-hero-row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px 32px}.hmm-vf-wrap{display:flex;align-items:flex-end;gap:24px}.home-legacy .hmm-label{font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted)}.home-legacy .hmm-vf{margin-top:4px;font-size:clamp(2.75rem,2rem + 2vw,3.5rem);font-weight:800;line-height:.95;letter-spacing:-.035em;font-variant-numeric:tabular-nums;color:var(--text-strong)}.hmm-vf-skel{width:160px;height:48px;margin-top:4px;border-radius:8px;background:var(--ui-fill)}.hmm-spark{display:block;width:168px;height:48px}.hmm-stats{position:relative;grid-column:1 / -1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px 0;padding:16px 28px 18px;background:var(--ui-surface);box-shadow:0 -1px 0 var(--ui-hairline)}.hmm-stat{min-width:0;padding:0 16px 0 20px;box-shadow:-1px 0 0 var(--ui-hairline)}.hmm-stat:first-child{padding-left:0;box-shadow:none}.home-legacy .hmm-stat-val{margin-top:2px;font-size:1.286rem;font-weight:700;line-height:1.2;font-variant-numeric:tabular-nums;color:var(--text-strong)}.hmm-recent{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 32px}.hmm-recent>li,.hmm-target{display:flex;align-items:center;gap:12px;min-width:0}.hmm-recent-art .song-art,.hmm-target .song-art{width:48px;height:48px;border:0;border-radius:10px}.hmm-target .song-art{width:40px;height:40px}.hmm-recent-text{flex:1;min-width:0}.hmm-recent-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem;font-weight:600;color:var(--text-strong);text-decoration:none}.home-legacy .hmm-recent-sub{display:flex;align-items:center;gap:6px;margin-top:2px;white-space:nowrap;overflow:hidden;font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted);font-variant-numeric:tabular-nums}.hmm-recent-score{font-size:1rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-strong)}.hmm-diff{font-size:var(--ui-fs-meta);font-weight:700}.home-legacy .hmm-card-desc{margin:-8px 0 12px;font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted)}.hmm-targets{display:flex;flex-direction:column;gap:4px}.hmm-target{padding:6px;margin:0 -6px;border-radius:var(--ui-radius-control);color:inherit;text-decoration:none;transition:background-color .16s ease}@media (hover: hover){.hmm-target:hover{background:var(--ui-surface-hover)}}.hmm-top{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:12px 8px}.hmm-top-item{display:block;color:inherit;text-decoration:none}.hmm-top-art{position:relative;aspect-ratio:1;overflow:hidden;border-radius:10px}.hmm-top-art .song-art{width:100%;height:100%;border:0;border-radius:0}.hmm-top-art img{transition:transform .2s ease}@media (hover: hover){.hmm-top-item:hover .hmm-top-art img{transform:scale(1.04)}}.hmm-top-bar{position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 3px currentColor;pointer-events:none}.hmm-top-rank,.hmm-top-lv{position:absolute;padding:0 5px;border-radius:6px;background:#0000009e;color:#fff;font-size:var(--ui-fs-meta);font-weight:700;line-height:18px;font-variant-numeric:tabular-nums}.hmm-top-rank{left:4px;top:4px}.hmm-top-lv{right:4px;bottom:4px}.hmm-top-meta{display:flex;align-items:baseline;justify-content:space-between;gap:4px;margin-top:6px;font-variant-numeric:tabular-nums}.hmm-top-vf{font-size:1rem;font-weight:700;color:var(--text-strong)}.hmm-top-grade{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted)}.hmm-top-empty{aspect-ratio:1;border-radius:10px;background:transparent;box-shadow:inset 0 0 0 1.5px var(--ui-fill-hover, rgba(255, 255, 255, .14))}.hmm-top-skel{aspect-ratio:1;border-radius:10px;background:var(--ui-fill-hover, rgba(255, 255, 255, .1));animation:hmm-skel-pulse 1.4s ease-in-out infinite}@keyframes hmm-skel-pulse{50%{opacity:.5}}@media (prefers-reduced-motion: reduce){.hmm-top-skel{animation:none}}.hmm-dist{display:flex;flex-direction:column;gap:24px}.home-legacy .hmm-dist-title{margin-bottom:8px;font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted)}.hmm-dist-bar{display:flex;height:10px;overflow:hidden;border-radius:999px;background:var(--ui-fill)}.hmm-dist-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:10px}.hmm-dist-legend li{display:flex;align-items:center;gap:6px;font-size:var(--ui-fs-meta);font-variant-numeric:tabular-nums}.hmm-dist-legend li.is-zero{opacity:.7}.hmm-dot{width:8px;height:8px;border-radius:50%}.hmm-dist-l{color:var(--text-muted);font-weight:600}.hmm-dist-n{font-weight:700;color:var(--text-strong)}.hmm-rivals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 24px}.hmm-rivals>li{display:flex;align-items:center;gap:12px;padding:8px;border-radius:var(--ui-radius-control)}.hmm-rivals>li.is-me{background:var(--ui-fill)}.hmm-rival-rank{width:20px;text-align:right;font-size:var(--ui-fs-meta);font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-muted)}.hmm-rival-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem;font-weight:600;color:var(--text-strong);text-decoration:none}.hmm-rival-name b{margin-left:6px;font-size:var(--ui-fs-meta);font-weight:700;color:var(--text-muted)}.hmm-rival-vf{font-size:1rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-strong)}.hmm-rival-add{display:flex;flex:1;align-items:center;gap:10px;padding:0;font-size:1rem;font-weight:600;color:var(--accent);text-decoration:none}.hmm-rival-add .hm-icon{width:16px;height:16px}@media (hover: hover){.hmm-rival-add:hover{color:var(--accent-2)}}.hmm-empty{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:4px 0}.home-legacy .hmm-empty p{font-size:1rem;color:var(--text-muted)}.hmm-skel-block{height:128px;border-radius:var(--ui-radius-card-sm);background:var(--ui-fill)}@media (min-width: 1536px){.hmm-hero{--hmm-art-w: 320px}}@media (max-width: 1200px){.hmm-top{grid-template-columns:repeat(8,minmax(0,1fr))}}@media (max-width: 1000px){.home-legacy.home-member-m{display:block;margin:12px 0 16px}.home-member-m .home-main{gap:16px}.hmm-hero{grid-template-columns:minmax(0,1fr)}.hmm-hero-art{grid-column:1;grid-row:1;height:176px;-webkit-mask-image:linear-gradient(to bottom,#000 72%,transparent);mask-image:linear-gradient(to bottom,#000 72%,transparent)}.hmm-hero-body{grid-column:1;grid-row:2;min-height:0;gap:16px;padding:0 16px 16px}.hmm-vf-wrap{gap:12px}.hmm-spark{width:96px;height:36px}.hmm-crew{inset:0;width:100%;height:100%;object-fit:cover;object-position:center 22%}.hmm-vfmark{right:12px;bottom:6px}.hmm-emblem{width:60px}.hmm-stars img{width:10px;height:10px}.hmm-stats{grid-template-columns:1.4fr 1fr 1fr;padding:14px 16px}.home-legacy .hmm-stat-val{font-size:1.05rem}.hmm-stat{padding:0 10px 0 12px}.hmm-stat:nth-child(3n+1){padding-left:0;box-shadow:none}.hmm-recent{grid-template-columns:minmax(0,1fr);gap:10px}.hmm-top{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px 8px}}.home-start{margin:12px 0 16px;padding:18px 16px;border-radius:var(--ui-radius-card);background:var(--ui-surface);box-shadow:var(--ui-ring)}.home-start-title{margin:0 0 14px;font-size:var(--ui-fs-section);font-weight:700;color:var(--text-strong)}.home-start-steps{display:flex;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none}.home-start-steps li{display:flex;gap:12px;align-items:flex-start}.home-start-n{flex-shrink:0;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--ui-fill);font-size:var(--ui-fs-meta);font-weight:700;color:var(--text-strong);font-variant-numeric:tabular-nums}.home-start-steps li.is-done .home-start-n{background:rgba(var(--accent-rgb),.16);color:var(--accent)}.home-start-steps li.is-done .home-start-step{color:var(--text-muted);text-decoration:line-through}.home-start-step{margin:0;font-weight:700;color:var(--text-strong)}.home-start-desc{margin:2px 0 0;font-size:var(--ui-fs-meta);color:var(--text-muted)}.home-start-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.home-start-actions .ui-btn{flex:1 1 auto}.home-start-note{margin:12px 0 0;font-size:var(--ui-fs-meta);color:var(--text-muted)}@media (min-width: 1001px){.home-start{display:none}}.hmm-cutoffs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.hmm-cutoffs li{display:flex;align-items:baseline;gap:10px;padding:8px 0;box-shadow:0 1px 0 var(--ui-hairline);font-variant-numeric:tabular-nums}.hmm-cutoff-lv{min-width:4.2em;font-weight:800;color:var(--text-strong)}.home-legacy .hmm-cutoff-lamp{flex:1;font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted)}.hmm-cutoff-score{font-weight:700;color:var(--text-strong)}@media (max-width: 1000px){.hmm-cutoffs{grid-template-columns:minmax(0,1fr)}}.home-start~.home-hub .home-banner-cta{display:none}.hmm-gate{margin:0 0 12px}.hmm-gate .seg{display:grid;width:100%}.hmm-gate .seg-opt{min-width:0;padding:0 2px;overflow:hidden;text-overflow:ellipsis}.toast-host{position:fixed;bottom:calc(20px + env(safe-area-inset-bottom,0px));top:auto;right:20px;display:flex;flex-direction:column;gap:8px;z-index:var(--z-toast, 1200);max-width:calc(100vw - 40px);align-items:flex-end}.toast{display:flex;align-items:center;gap:12px;padding:12px 12px 12px 14px;background:var(--ui-chrome);box-shadow:var(--ui-chrome-ring),var(--ui-shadow-pop);border-radius:var(--ui-radius-card-sm);color:var(--text);font-size:1rem;min-width:260px;max-width:420px;cursor:pointer;animation:toast-in-bottom .22s var(--ui-ease-out)}@keyframes toast-in-bottom{0%{transform:translateY(8px) scale(.98);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.toast-leaving{animation:toast-out .2s ease forwards;pointer-events:none;overflow:hidden}@keyframes toast-out{0%{opacity:1;transform:scale(1);max-height:200px}45%{opacity:0;transform:scale(.98);max-height:200px}to{opacity:0;transform:scale(.98);max-height:0;padding-top:0;padding-bottom:0}}.toast-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--ui-fill);font-weight:700;font-size:.9rem;flex-shrink:0}.toast-success .toast-icon{color:var(--positive)}.toast-error .toast-icon{color:var(--negative)}.toast-warning .toast-icon{color:#fb923c}.toast-info .toast-icon{color:var(--text-strong)}.toast-msg{flex:1;line-height:1.45}.toast-close{background:transparent;border:none;border-radius:8px;color:var(--text-muted);font-size:1.2rem;cursor:pointer;padding:0 6px;line-height:1;min-width:28px;min-height:28px}.toast-close:hover{color:var(--text-strong);background:var(--ui-fill)}@media (max-width: 1000px){.toast-host{bottom:calc(80px + env(safe-area-inset-bottom,0px));top:auto;right:12px;left:12px;align-items:stretch}.toast{min-width:0;max-width:none}}@media (prefers-reduced-motion: reduce){.toast{animation:none!important}}@media (forced-colors: active){.toast{border:1px solid CanvasText}}:root{color-scheme:dark;--bg: #050a05;--bg-elevated: #0d1410;--surface: #161e18;--surface-0: #0d1410;--surface-1: #161e18;--surface-2: #1d2620;--surface-3: #243024;--bg-card: var(--surface);--bg-tertiary: var(--surface-3);--bg-rgb: 5, 10, 5;--surface-rgb: 22, 30, 24;--border: #1d2620;--border-soft: #161e18;--border-light: #2a362c;--border-control: #3f4d3e;--border-strong: #6d7b69;--accent: #aef359;--accent-2: #d4f87a;--accent-3: #e8fbb8;--accent-rgb: 174, 243, 89;--on-accent: #0a1305;--focus-ring: var(--accent-2);--text: #e6f0e0;--text-strong: #ffffff;--text-muted: #929b8b;--text-dim: #889281;--text-1: var(--text);--positive: #4ade80;--negative: #f87171;--negative-rgb: 248, 113, 113;--warning: #facc15;--danger: #dc2626;--danger-hover: #b91c1c;--color-danger: var(--danger);--diff-nov: #c38afc;--diff-nov-rgb: 195, 138, 252;--diff-adv: #facc15;--diff-adv-rgb: 250, 204, 21;--diff-exh: #f97d7d;--diff-exh-rgb: 249, 125, 125;--diff-mxm: #f9fafb;--diff-mxm-rgb: 249, 250, 251;--diff-inf: #f37ab8;--diff-inf-rgb: 243, 122, 184;--diff-grv: #fb923c;--diff-grv-rgb: 251, 146, 60;--diff-hvn: #22d3ee;--diff-hvn-rgb: 34, 211, 238;--diff-vvd: #c38afc;--diff-vvd-rgb: 195, 138, 252;--diff-xcd: #63a7fa;--diff-xcd-rgb: 99, 167, 250;--diff-nbl: #22c55e;--diff-nbl-rgb: 34, 197, 94;--diff-ult: #fbbf24;--diff-ult-rgb: 217, 119, 6;--pat-peak: #f98787;--pat-peak-rgb: 249, 135, 135;--pat-tsumami: #f582be;--pat-tsumami-rgb: 245, 130, 190;--pat-tricky: #facc15;--pat-tricky-rgb: 250, 204, 21;--pat-onehand: #22c55e;--pat-onehand-rgb: 34, 197, 94;--pat-handtrip: #c893fa;--pat-handtrip-rgb: 200, 147, 250;--pat-notes: #15beab;--pat-notes-rgb: 21, 190, 171;--lamp-played: #6b7280;--lamp-clear: #22c55e;--lamp-hard: #f97316;--lamp-exhd: #e5e7eb;--lamp-uc: #a855f7;--lamp-puc: #eab308;--grade-s: #fde68a;--grade-aaap: #f9a8d4;--grade-aaa: #e8fbb8;--grade-aap: #93c5fd;--grade-aa: #6ee7b7;--ui-surface: rgba(255, 255, 255, .035);--ui-surface-hover: rgba(255, 255, 255, .06);--ui-fill: rgba(255, 255, 255, .08);--ui-fill-hover: rgba(255, 255, 255, .12);--ui-fill-strong: rgba(255, 255, 255, .14);--ui-hairline: rgba(255, 255, 255, .07);--ui-ring: inset 0 0 0 1px var(--ui-hairline);--ui-chrome: #1c241e;--ui-chrome-ring: inset 0 0 0 1px rgba(255, 255, 255, .09);--ui-bar: rgba(16, 22, 18, .72);--ui-bar-solid: #101612;--ui-chrome-glass: rgba(22, 29, 24, .8);--ui-scrim: rgba(0, 0, 0, .62);--ui-shadow-pop: 0 16px 40px rgba(0, 0, 0, .5);--ui-radius-control: 10px;--ui-radius-card-sm: 14px;--ui-radius-card: 16px;--ui-radius-panel: 22px;--ui-fs-display: clamp(3.25rem, 2.2rem + 4vw, 4.75rem);--ui-fs-title: clamp(1.75rem, 1.2rem + 1.6vw, 2.25rem);--ui-fs-section: 1.0714rem;--ui-fs-body: 1.0714rem;--ui-fs-label: .893rem;--ui-fs-meta: .857rem;--ui-ease-out: cubic-bezier(.22, 1, .36, 1);--ui-dur-press: .1s;--font-sans: "Inter", "Noto Sans KR", "Noto Sans JP", "Pretendard", "Apple SD Gothic Neo", -apple-system, BlinkMacSystemFont, "Malgun Gothic", "맑은 고딕", sans-serif;--font-display: "Rajdhani", "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", "맑은 고딕", "Inter", sans-serif;--font-mono: "Roboto Mono", "D2Coding", Consolas, "Malgun Gothic", "맑은 고딕", monospace;--fs-xs: .857rem;--fs-sm: .857rem;--fs-md: 1rem;--fs-lg: 1.143rem;--fs-xl: 1.357rem;--fs-2xl: 1.714rem;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--r-sm: 8px;--r-md: var(--ui-radius-control);--r-lg: var(--ui-radius-card);--r-pill: 999px;--shadow-1: 0 1px 2px rgba(0, 0, 0, .45);--shadow-2: var(--ui-shadow-pop);--ease: cubic-bezier(.2, .7, .2, 1);--dur-1: .12s;--dur-2: .2s;--z-below: -1;--z-base: 0;--z-raised: 10;--z-sticky: 50;--z-nav: 90;--z-header: 100;--z-dropdown:200;--z-overlay: 500;--z-modal: 1000;--z-popover:1100;--z-toast: 1200;--z-top: 3000;--header-h: 125px}@media (max-width: 1000px){:root{--header-h: 60px}}@media (prefers-contrast: more){:root{--ui-surface: rgba(255, 255, 255, .07);--ui-surface-hover: rgba(255, 255, 255, .1);--ui-fill: rgba(255, 255, 255, .14);--ui-fill-hover: rgba(255, 255, 255, .2);--ui-hairline: rgba(255, 255, 255, .45);--ui-chrome: #1f2a22;--ui-chrome-ring: inset 0 0 0 1px rgba(255, 255, 255, .55);--ui-bar: #101612;--ui-chrome-glass: #1f2a22;--text-muted: #b4bdae}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;accent-color:var(--accent);scroll-padding-top:calc(var(--header-h) + var(--sp-2))}html,body,#root{background:var(--bg);color:var(--text);font-family:var(--font-sans);min-height:100vh;min-height:100dvh;font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-break:keep-all;overflow-wrap:break-word}body{padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}table,th,td,pre,code,kbd,samp{word-break:normal;overflow-wrap:normal}.mono{overflow-wrap:normal}.url,.break-all{word-break:break-all;overflow-wrap:anywhere}:where([class*=title],[class*=artist]){min-width:0}:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card,.pv-vf-export-mount *,.vflive-export-root *,.vflive-card *){word-break:normal;overflow-wrap:normal}html,body{overflow-x:clip}.page-wrap{padding-top:4px;min-height:calc(100vh - 108px);min-height:calc(100dvh - 108px)}@media (max-width: 1000px){.page-wrap--app{padding-bottom:calc(80px + env(safe-area-inset-bottom,0px));min-height:calc(100vh - 132px);min-height:calc(100dvh - 132px)}.site-footer{margin-bottom:calc(72px + env(safe-area-inset-bottom,0px))}html{scroll-padding-bottom:calc(88px + env(safe-area-inset-bottom,0px))}}button,input,select,textarea{font:inherit;color:inherit;background:none;border:none;outline:none}button{cursor:pointer}button:disabled,[aria-disabled=true]{cursor:not-allowed}a{color:inherit;text-decoration:none}::placeholder{color:var(--text-dim);opacity:1}::selection{background:rgba(var(--accent-rgb),.3);color:var(--text-strong)}@media (max-width: 768px),(pointer: coarse){:where(input:not([type]),input[type=text],input[type=search],input[type=email],input[type=password],input[type=number],input[type=tel],input[type=url],input[type=date],input[type=datetime-local],input[type=month],input[type=time],input[type=week],select,textarea):not(.keep-font-size){font-size:max(16px,1rem)!important}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--surface-3);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border)}@supports not selector(::-webkit-scrollbar){html{scrollbar-width:thin;scrollbar-color:var(--surface-3) var(--bg)}}:where(a[href],button,input,select,textarea,summary,[role=button],[role=tab],[role=menuitem],[role=option],[role=switch],[role=checkbox],[role=radio],[role=link],[role=combobox],[role=slider],[tabindex]:not([tabindex="-1"])):focus-visible{outline:2px solid var(--focus-ring)!important;outline-offset:2px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:1px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.sr-only,.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap}.container{max-width:1180px;margin:0 auto;padding:0 20px}.card{background:var(--ui-surface);box-shadow:var(--ui-ring);border-radius:var(--ui-radius-card);padding:20px 24px;position:relative;overflow:hidden}.card-title{font-size:var(--ui-fs-section);font-weight:700;letter-spacing:0;color:var(--text-strong);margin-bottom:12px}.card-title-link{color:var(--text-strong);text-decoration:none;transition:color .12s}.card-title-link:hover{color:var(--accent)}.mono{font-family:var(--font-mono)}.display{font-family:var(--font-display);font-weight:700;letter-spacing:.02em}.text-muted{color:var(--text-muted)}.text-dim{color:var(--text-dim)}.text-accent{color:var(--accent)}.user-nick{color:var(--text-strong);font-weight:700}.text-positive{color:var(--positive)}.text-negative{color:var(--negative)}.song-link{text-decoration:none;color:inherit;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .1s}.song-link:hover{color:var(--accent)}html.has-modal-open,body.has-modal-open{overflow:hidden!important;touch-action:none}@supports (overscroll-behavior: contain){body.has-modal-open{overscroll-behavior:contain}}.no-overflow,.no-overflow>*{min-width:0}.truncate{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-btn,.btn,.btn-primary,.btn-secondary,.btn-danger,.page-btn,.control-btn{--btn-bg: var(--ui-fill);--btn-bg-hover: var(--ui-fill-hover);--btn-fg: var(--text);--btn-fg-hover: var(--text-strong);--btn-border: transparent;--btn-border-hover: transparent;display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);min-height:40px;padding:0 var(--sp-4);border:1px solid var(--btn-border);border-radius:var(--ui-radius-control);background:var(--btn-bg);color:var(--btn-fg);font:inherit;font-size:var(--fs-md);font-weight:600;line-height:1.25;text-align:center;text-decoration:none;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform var(--ui-dur-press) ease-out}.ui-btn--primary,.ui-btn.primary,.btn-primary,.control-btn{--btn-bg: var(--accent);--btn-bg-hover: var(--accent-2);--btn-fg: var(--on-accent);--btn-fg-hover: var(--on-accent);font-weight:700}.ui-btn--ghost,.btn-secondary{--btn-bg: transparent;--btn-bg-hover: var(--ui-surface-hover);--btn-border: var(--border-strong);--btn-border-hover: var(--text-dim)}.ui-btn--danger,.ui-btn.danger,.btn-danger{--btn-bg: rgba(var(--negative-rgb), .12);--btn-bg-hover: var(--danger);--btn-fg: var(--negative);--btn-fg-hover: #fff}.ui-btn--sm,.ui-btn.sm{min-height:32px;padding:0 var(--sp-3);border-radius:var(--ui-radius-control);font-size:var(--ui-fs-meta)}.page-btn{min-height:36px;padding:0 var(--sp-3);font-size:var(--ui-fs-meta)}.ui-btn--block{display:flex;width:100%}.ui-btn--icon{width:40px;padding:0}.ui-btn--icon.ui-btn--sm{width:32px}@media (hover: hover){:where(.ui-btn,.btn,.btn-primary,.btn-secondary,.btn-danger,.page-btn,.control-btn):where(:not(:disabled,[aria-disabled=true])):hover{background:var(--btn-bg-hover);border-color:var(--btn-border-hover);color:var(--btn-fg-hover)}}:where(.ui-btn,.btn,.btn-primary,.btn-secondary,.btn-danger,.page-btn,.control-btn):where(:not(:disabled,[aria-disabled=true])):active{transform:scale(.97)}.ui-btn[aria-pressed=true]:not(.ui-btn--primary){--btn-bg: rgba(var(--accent-rgb), .16);--btn-bg-hover: rgba(var(--accent-rgb), .24);--btn-fg: var(--accent);--btn-fg-hover: var(--accent)}:where(.ui-btn,.btn,.btn-primary,.btn-secondary,.btn-danger,.page-btn,.control-btn):is(:disabled,[aria-disabled=true]){opacity:.5;cursor:not-allowed}:where(.ui-btn,.btn,.btn-primary,.btn-secondary,.btn-danger,.page-btn,.control-btn):is([aria-busy=true],.is-loading){cursor:progress;opacity:.75}@media (pointer: coarse){.ui-btn,.btn,.btn-primary,.btn-secondary,.btn-danger,.page-btn,.control-btn{min-height:44px}.ui-btn--sm,.ui-btn.sm{min-height:36px}.ui-btn--icon{width:44px}.ui-btn--icon.ui-btn--sm{width:36px}}.ui-seg{display:inline-flex;align-items:stretch;gap:2px;max-width:100%;padding:3px;border:0;border-radius:11px;background:#ffffff0f;box-shadow:inset 0 0 0 1px #ffffff0d;overflow-x:auto;scrollbar-width:none}.ui-seg::-webkit-scrollbar{display:none}.ui-seg__btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:0 14px;border:0;border-radius:8px;background:transparent;color:var(--text-muted);font:inherit;font-size:var(--ui-fs-label);font-weight:600;line-height:1.25;white-space:nowrap;text-decoration:none;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background-color .16s ease,color .16s ease,transform var(--ui-dur-press) ease-out}.ui-seg__btn:focus-visible{outline-offset:-2px}.ui-seg__btn:active:not(:disabled){transform:scale(.97)}@media (hover: hover){.ui-seg__btn:not(.is-active):not(.active):not([aria-pressed=true]):not([aria-selected=true]):not([aria-current=page]):not(:disabled):hover{background:#ffffff0d;color:var(--text)}}.ui-seg__btn.is-active,.ui-seg__btn.active,.ui-seg__btn[aria-pressed=true],.ui-seg__btn[aria-selected=true],.ui-seg__btn[aria-current=page]{background:var(--ui-fill-strong);color:var(--text-strong);font-weight:700}.ui-seg__btn:disabled,.ui-seg__btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.ui-seg--fill{display:flex;width:100%}.ui-seg--fill .ui-seg__btn{flex:1 1 0}@media (pointer: coarse){.ui-seg__btn{min-height:36px}}.ui-input{display:block;width:100%;min-height:40px;padding:0 var(--sp-3);border:1px solid var(--border-strong);border-radius:var(--ui-radius-control);background:#00000038;color:var(--text-strong);font:inherit;font-size:var(--fs-md);line-height:1.4;transition:border-color .16s ease,background-color .16s ease}textarea.ui-input{min-height:96px;padding:var(--sp-3);line-height:1.55;resize:vertical}@media (hover: hover){.ui-input:not(:disabled):not(:focus):hover{border-color:var(--text-dim)}}.ui-input:focus-visible{border-color:var(--accent)}.ui-input:disabled{opacity:.55;cursor:not-allowed}.ui-input[aria-invalid=true],.ui-input.is-invalid{border-color:var(--negative)}.ui-chip{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:0 var(--sp-3);border:1px solid transparent;border-radius:var(--r-pill);background:var(--ui-fill);color:var(--text);font:inherit;font-size:var(--ui-fs-meta);font-weight:600;line-height:1.2;white-space:nowrap;text-decoration:none;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background-color .16s ease,color .16s ease,transform var(--ui-dur-press) ease-out}.ui-chip:active:not(:disabled){transform:scale(.97)}@media (hover: hover){.ui-chip:not(.is-on):not([aria-pressed=true]):not([aria-checked=true]):not(:disabled):hover{background:var(--ui-fill-hover);color:var(--text-strong)}}.ui-chip.is-on,.ui-chip[aria-pressed=true],.ui-chip[aria-checked=true]{background:var(--accent);color:var(--on-accent)}.ui-chip.is-on:before,.ui-chip[aria-pressed=true]:before,.ui-chip[aria-checked=true]:before{content:"";flex:none;width:.95em;height:.95em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.2 8.4l3.2 3.2 6.4-7' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.2 8.4l3.2 3.2 6.4-7' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat}.ui-chip:disabled,.ui-chip[aria-disabled=true]{opacity:.5;cursor:not-allowed}@media (pointer: coarse){.ui-chip{min-height:36px}}.ui-card{background:var(--ui-surface);box-shadow:var(--ui-ring);border-radius:var(--ui-radius-card);padding:20px var(--sp-5);position:relative}.ui-panel{background:var(--ui-surface);box-shadow:var(--ui-ring);border-radius:var(--ui-radius-panel);padding:28px;position:relative}@media (max-width: 480px){.ui-card{padding:var(--sp-4)}.ui-panel{padding:20px}}.ui-list{list-style:none;margin:0;padding:0}.ui-list__row{display:flex;align-items:center;gap:var(--sp-3);min-height:48px;padding:var(--sp-2) 0}.ui-list__row+.ui-list__row{box-shadow:0 -1px 0 var(--ui-hairline)}a.ui-list__row,button.ui-list__row{color:inherit;text-decoration:none;transition:background-color .16s ease}@media (hover: hover){a.ui-list__row:hover,button.ui-list__row:hover{background:var(--ui-surface-hover)}}.ui-chrome{background:var(--ui-chrome);box-shadow:var(--ui-chrome-ring),var(--ui-shadow-pop);border-radius:var(--ui-radius-card-sm)}.ui-bar{background:var(--ui-bar-solid);box-shadow:var(--ui-ring)}@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))){.ui-chrome-glass,.nav-group-list,.user-menu-panel,.gs-dropdown{background:var(--ui-chrome-glass);-webkit-backdrop-filter:blur(24px) saturate(160%);backdrop-filter:blur(24px) saturate(160%)}}@media (prefers-reduced-transparency: reduce){.ui-chrome-glass,.nav-group-list,.user-menu-panel,.gs-dropdown{background:var(--ui-chrome);-webkit-backdrop-filter:none;backdrop-filter:none}}@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))){.ui-bar{background:var(--ui-bar);-webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%)}}@media (prefers-reduced-transparency: reduce){.ui-bar{background:var(--ui-bar-solid);-webkit-backdrop-filter:none;backdrop-filter:none}}.ui-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:var(--sp-6) var(--sp-4);border-radius:var(--ui-radius-card);background:var(--ui-surface);box-shadow:var(--ui-ring);color:var(--text-muted);font-size:var(--fs-md);line-height:1.6;text-align:center}.ui-empty__icon{font-size:var(--fs-2xl);line-height:1}.ui-empty__title{color:var(--text-strong);font-size:var(--ui-fs-section);font-weight:700}.ui-empty__desc{max-width:42ch}.ui-empty__actions{display:flex;flex-wrap:wrap;gap:var(--sp-2);justify-content:center;margin-top:var(--sp-2)}.ui-display{font-size:var(--ui-fs-display);font-weight:800;line-height:.95;letter-spacing:-.035em;font-variant-numeric:tabular-nums;color:var(--text-strong)}.ui-page-title{font-size:var(--ui-fs-title);font-weight:800;line-height:1.1;letter-spacing:-.022em;color:var(--text-strong)}.ui-section-title{font-size:var(--ui-fs-section);font-weight:700;line-height:1.3;color:var(--text-strong)}.ui-eyebrow{font-size:var(--ui-fs-label);font-weight:600;color:var(--text-muted)}.ui-meta{font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted);font-variant-numeric:tabular-nums}.ui-num{font-variant-numeric:tabular-nums}.ui-page{padding-top:28px;padding-bottom:64px}.ui-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px 24px;flex-wrap:wrap;margin-bottom:20px}.ui-page-head__text{min-width:0;display:grid;gap:6px}.ui-page-head__text>*{margin:0}.ui-page-head__eyebrow{color:var(--text-muted);font-size:var(--ui-fs-meta);font-weight:600}.ui-page-head__sub{max-width:60ch;color:var(--text-muted);font-size:var(--ui-fs-body);line-height:1.5}.ui-page-head__actions{display:flex;align-items:center;gap:8px 10px;flex-wrap:wrap}.ui-section+.ui-section{margin-top:32px}.ui-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 4px 12px}.ui-section-head>*{margin:0}.ui-section-head__meta{color:var(--text-muted);font-size:var(--ui-fs-meta);font-weight:600;font-variant-numeric:tabular-nums}.ui-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px;margin-bottom:20px;border-radius:var(--ui-radius-card);background:var(--ui-surface);box-shadow:var(--ui-ring)}.ui-toolbar__grow{flex:1 1 220px;min-width:0}.ui-toolbar__spacer{flex:1}.ui-stat{display:grid;gap:4px;min-width:0}.ui-stat__label{color:var(--text-muted);font-size:var(--ui-fs-meta);font-weight:600}.ui-stat__value{color:var(--text-strong);font-size:1.5rem;font-weight:800;line-height:1.1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.ui-stat__unit{margin-left:2px;color:var(--text-muted);font-size:var(--ui-fs-meta);font-weight:600;letter-spacing:0}.ui-dot{display:inline-flex;align-items:center;gap:5px;color:var(--text-muted);font-size:var(--ui-fs-meta);font-weight:600;white-space:nowrap}.ui-dot:before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:var(--c, currentColor)}@media (max-width: 720px){.ui-page{padding-top:16px}.ui-page-head{align-items:flex-start;margin-bottom:16px}}.ui-link{color:var(--accent);font-weight:600;text-decoration:none;border-radius:4px;transition:color .16s ease}@media (hover: hover){.ui-link:hover{color:var(--accent-2);text-decoration:underline;text-underline-offset:3px}}.ui-divider{height:0;border:0;box-shadow:0 -1px 0 var(--ui-hairline);margin:var(--sp-4) 0}.ui-datatable{width:100%;border-collapse:collapse;font-size:var(--fs-md)}.ui-datatable th{padding:var(--sp-2) var(--sp-3);text-align:left;font-size:var(--ui-fs-meta);font-weight:600;color:var(--text-muted);box-shadow:0 1px 0 var(--ui-hairline)}.ui-datatable td{padding:var(--sp-3);box-shadow:0 1px 0 var(--ui-hairline)}.ui-datatable tbody tr:last-child td{box-shadow:none}@media (hover: hover){.ui-datatable tbody tr:hover td{background:var(--ui-surface-hover)}}.ui-datatable__num,.ui-datatable th.ui-datatable__num{text-align:right;font-variant-numeric:tabular-nums}@media (forced-colors: active){.card,.ui-card,.ui-panel,.ui-empty,.ui-chrome,.ui-bar{border:1px solid CanvasText}.ui-btn,.btn,.btn-primary,.btn-secondary,.btn-danger,.page-btn,.control-btn,.ui-chip{border:1px solid ButtonText}.ui-seg{border:1px solid CanvasText}.ui-seg__btn.is-active,.ui-seg__btn.active,.ui-seg__btn[aria-pressed=true],.ui-seg__btn[aria-selected=true],.ui-seg__btn[aria-current=page]{outline:2px solid Highlight;outline-offset:-2px}.ui-chip.is-on,.ui-chip[aria-pressed=true],.ui-chip[aria-checked=true],.ui-btn[aria-pressed=true]{border:2px solid Highlight}}@media (prefers-contrast: more){.ui-chip,.ui-btn:not(.ui-btn--primary){box-shadow:inset 0 0 0 1px var(--border-strong)}.ui-seg{box-shadow:inset 0 0 0 1px var(--border-strong)}.ui-seg__btn.is-active,.ui-seg__btn.active,.ui-seg__btn[aria-pressed=true],.ui-seg__btn[aria-selected=true],.ui-seg__btn[aria-current=page]{box-shadow:inset 0 0 0 1px var(--text)}}@media (prefers-reduced-motion: reduce){.ui-btn,.btn,.btn-primary,.btn-secondary,.btn-danger,.page-btn,.control-btn,.ui-chip,.ui-seg__btn{transition:none}.ui-btn:active,.btn:active,.btn-primary:active,.btn-secondary:active,.btn-danger:active,.page-btn:active,.control-btn:active,.ui-chip:active,.ui-seg__btn:active{transform:none!important}}.pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--sp-3);margin:var(--sp-5) 0}.page-info{font-size:var(--ui-fs-meta);font-variant-numeric:tabular-nums;color:var(--text-muted)}.auth-hint{display:block;margin-top:var(--sp-1);font-size:var(--ui-fs-meta);line-height:1.5;color:var(--text-muted)}.auth-label-opt{margin-left:var(--sp-1);font-weight:400;color:var(--text-muted)}html body [class*=-d-nov],html body [class~=diff-nov]{--dc: var(--diff-nov);--dc-rgb: var(--diff-nov-rgb)}html body [class*=-d-adv],html body [class~=diff-adv]{--dc: var(--diff-adv);--dc-rgb: var(--diff-adv-rgb)}html body [class*=-d-exh],html body [class~=diff-exh]{--dc: var(--diff-exh);--dc-rgb: var(--diff-exh-rgb)}html body [class*=-d-mxm],html body [class~=diff-mxm]{--dc: var(--diff-mxm);--dc-rgb: var(--diff-mxm-rgb)}html body [class*=-d-inf],html body [class~=diff-inf]{--dc: var(--diff-inf);--dc-rgb: var(--diff-inf-rgb)}html body [class*=-d-grv],html body [class~=diff-grv]{--dc: var(--diff-grv);--dc-rgb: var(--diff-grv-rgb)}html body [class*=-d-hvn],html body [class~=diff-hvn]{--dc: var(--diff-hvn);--dc-rgb: var(--diff-hvn-rgb)}html body [class*=-d-vvd],html body [class~=diff-vvd]{--dc: var(--diff-vvd);--dc-rgb: var(--diff-vvd-rgb)}html body [class*=-d-xcd],html body [class~=diff-xcd]{--dc: var(--diff-xcd);--dc-rgb: var(--diff-xcd-rgb)}html body [class*=-d-nbl],html body [class~=diff-nbl],html body [class*=-d-nabla],html body [class~=diff-nabla]{--dc: var(--diff-nbl);--dc-rgb: var(--diff-nbl-rgb)}html body [class*=-d-ult],html body [class~=diff-ult]{--dc: var(--diff-ult);--dc-rgb: var(--diff-ult-rgb)}html body :is([class*=-d-nov],[class~=diff-nov],[class*=-d-adv],[class~=diff-adv],[class*=-d-exh],[class~=diff-exh],[class*=-d-mxm],[class~=diff-mxm],[class*=-d-inf],[class~=diff-inf],[class*=-d-grv],[class~=diff-grv],[class*=-d-hvn],[class~=diff-hvn],[class*=-d-vvd],[class~=diff-vvd],[class*=-d-xcd],[class~=diff-xcd],[class*=-d-nbl],[class~=diff-nbl],[class*=-d-nabla],[class~=diff-nabla],[class*=-d-ult],[class~=diff-ult]){color:var(--dc)!important;background:var(--dc-bg, rgba(var(--dc-rgb), var(--dc-a, .1)))!important;border-color:rgba(var(--dc-rgb),var(--dc-ba, .38))!important}html body :is([class*=-d-nov],[class~=diff-nov],[class*=-d-adv],[class~=diff-adv],[class*=-d-exh],[class~=diff-exh],[class*=-d-mxm],[class~=diff-mxm],[class*=-d-inf],[class~=diff-inf],[class*=-d-grv],[class~=diff-grv],[class*=-d-hvn],[class~=diff-hvn],[class*=-d-vvd],[class~=diff-vvd],[class*=-d-xcd],[class~=diff-xcd],[class*=-d-nbl],[class~=diff-nbl],[class*=-d-nabla],[class~=diff-nabla],[class*=-d-ult],[class~=diff-ult]):not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card,.pv-content-area) *){color:var(--dc)!important;background:var(--dc-bg, var(--ui-fill))!important;border-color:transparent!important}html body :is([class*=-d-nov],[class~=diff-nov],[class*=-d-adv],[class~=diff-adv],[class*=-d-exh],[class~=diff-exh],[class*=-d-mxm],[class~=diff-mxm],[class*=-d-inf],[class~=diff-inf],[class*=-d-grv],[class~=diff-grv],[class*=-d-hvn],[class~=diff-hvn],[class*=-d-vvd],[class~=diff-vvd],[class*=-d-xcd],[class~=diff-xcd],[class*=-d-nbl],[class~=diff-nbl],[class*=-d-nabla],[class~=diff-nabla],[class*=-d-ult],[class~=diff-ult]):not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card,.pv-content-area) *):is(.is-on,.is-active,.on,.active,.selected,.is-selected,[aria-pressed=true],[aria-selected=true],[aria-checked=true],[class*=-chip-on],[class*=-btn-on],[class*=-diff-active]){background:var(--ui-fill-strong)!important;box-shadow:inset 0 0 0 1.5px var(--accent);font-weight:700}html body :is([class*=-d-nov],[class~=diff-nov],[class*=-d-adv],[class~=diff-adv],[class*=-d-exh],[class~=diff-exh],[class*=-d-mxm],[class~=diff-mxm],[class*=-d-inf],[class~=diff-inf],[class*=-d-grv],[class~=diff-grv],[class*=-d-hvn],[class~=diff-hvn],[class*=-d-vvd],[class~=diff-vvd],[class*=-d-xcd],[class~=diff-xcd],[class*=-d-nbl],[class~=diff-nbl],[class*=-d-nabla],[class~=diff-nabla],[class*=-d-ult],[class~=diff-ult]):is([class*=-chip-off],[class*=-btn-off],[class*=-diff-btn]){opacity:1!important}html.pref-reduce-motion *,html.pref-reduce-motion *:before,html.pref-reduce-motion *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}@keyframes jacket-cover-pulse{0%,to{background-color:#ffffff0d}50%{background-color:#ffffff1a}}@keyframes jacket-cover-reveal{0%{opacity:.35}to{opacity:1}}:is(img[src*="/jk_"],img[src*="/jacket"]):not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card) img){background:#ffffff0d;animation:jacket-cover-pulse 1.6s ease-in-out infinite}:is(img[src*="/jk_"],img[src*="/jacket"])[data-loaded]:not(:where(.pv-vf-export-mount,.vflive-export-root,.vflive-card) img){background:none;animation:jacket-cover-reveal .3s ease-out}@media (prefers-reduced-motion: reduce){:is(img[src*="/jk_"],img[src*="/jacket"]){animation:none!important}}html.pref-reduce-motion :is(img[src*="/jk_"],img[src*="/jacket"]){animation:none!important}.ui-ico-inline{display:inline-block;flex-shrink:0;vertical-align:-.15em;margin-right:.2em}.ui-ico-inline--end{margin-right:0;margin-left:.2em}html{-webkit-tap-highlight-color:transparent}
