:root{--c-bg: #020617;--c-bg-tint: rgba(2,6,23,.6);--c-bg-alt: #0f172a;--c-bg-alt2: #1e293b;--c-surface: #0f172a;--c-surface-hover: rgba(255,255,255,.05);--c-border: rgba(30,41,59,.5);--c-border-dim: rgba(30,41,59,.6);--c-border-faint:rgba(30,41,59,.3);--c-divider: rgba(30,41,59,.6);--c-text: #e2e8f0;--c-text-bright: #f8fafc;--c-text-muted: #94a3b8;--c-text-dim: #64748b;--c-text-dimmer: #475569;--c-text-faint: #334155;--c-blue: #3b82f6;--c-blue-light: #60a5fa;--c-blue-lighter:#93c5fd;--c-blue-bg: rgba(59,130,246,.1);--c-blue-bg-hover: rgba(59,130,246,.15);--c-blue-border-subtle: rgba(96,165,250,.15);--c-blue-border-dim: rgba(96,165,250,.25);--c-blue-border: rgba(59,130,246,.4);--c-red: #ef4444;--c-red-light: #f87171;--c-red-lighter: #fca5a5;--c-red-bg: rgba(239,68,68,.1);--c-red-border: rgba(239,68,68,.2);--c-red-border-strong: rgba(239,68,68,.5);--c-red-border-focus: rgba(239,68,68,.7);--c-amber: #f59e0b;--c-amber-light: #fbbf24;--c-amber-bg: rgba(245,158,11,.1);--c-amber-border:rgba(245,158,11,.2);--c-amber-bg2: rgba(245,158,11,.2);--c-emerald: #10b981;--c-emerald-light:#34d399;--c-emerald-bg: rgba(16,185,129,.1);--c-emerald-border:rgba(16,185,129,.2);--c-emerald-bg-strong: rgba(16,185,129,.2);--c-emerald-border-strong: rgba(16,185,129,.3);--c-text-heading: #f1f5f9;--c-text-white: #fff;--c-red-dark: #dc2626;--c-red-darker: #b91c1c;--c-blue-dark: #2563eb;--c-amber-dark: #d97706;--c-amber-darker: #b45309;--c-amber-lighter: #fcd34d;--c-input-bg-dim: rgba(30,41,59,.4);--c-input-bg: rgba(30,41,59,.6);--c-input-bg-alt: rgba(51,65,85,.5);--c-input-border: rgba(51,65,85,.4);--c-input-border-alt: rgba(100,116,139,.4);--c-input-border-hover: rgba(51,65,85,.6);--c-border-hover: rgba(71,85,105,.7);--c-btn-secondary-bg: rgba(51,65,85,.5);--c-btn-secondary-hover: rgba(51,65,85,1);--c-overlay: rgba(0,0,0,.6);--c-overlay-heavy: rgba(0,0,0,.7);--c-overlay-light: rgba(0,0,0,.5);--c-overlay-btn: rgba(255,255,255,.15);--c-overlay-btn-hover: rgba(255,255,255,.25);--c-on-amber: #1c1917;--c-content-body: #cbd5e1;--c-text-zinc: #71717a;--c-header-bg: rgba(15,23,42,.8);--c-shadow-card: rgba(0,0,0,.5);--c-shadow-blue-tint: rgba(59,130,246,.12);--c-amber-glow: rgba(251,191,36,.35);--c-amber-glow-dim: rgba(251,191,36,.2);--sp-1: .25rem;--sp-1-5: .375rem;--sp-2: .5rem;--sp-2-5: .625rem;--sp-3: .75rem;--sp-4: 1rem;--sp-5: 1.25rem;--sp-6: 1.5rem;--sp-8: 2rem;--sp-10: 2.5rem;--r-sm: .25rem;--r-md: .5rem;--r-lg: .75rem;--r-xl: 1rem;--r-full: 9999px;--font-sans: "Outfit", ui-sans-serif, system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, monospace;--tr-fast: .15s ease;--tr-base: .2s ease;--sidebar-w: 220px;--sidebar-mobile-w: 280px;--z-sidebar: 40;--z-backdrop: 30;--z-header: 20;--z-dropdown: 10;--z-modal: 50;--z-tour-backdrop: 55;--z-tour: 60;--z-tour-tooltip: 61}[data-theme=crimson-dusk]{--c-bg: #180d0d;--c-bg-tint: rgba(24,13,13,.7);--c-bg-alt: #251111;--c-bg-alt2: #3b1e1e;--c-surface: #3b1e1e;--c-surface-hover: rgba(255,214,214,.06);--c-border: rgba(90,45,45,.6);--c-border-dim: rgba(90,45,45,.65);--c-border-faint:rgba(90,45,45,.35);--c-divider: rgba(90,45,45,.6);--c-text: #f2f2f2;--c-text-bright: #f2f2f2;--c-text-muted: #d9c5c5;--c-text-dim: #a08888;--c-text-dimmer: #7a6060;--c-text-faint: #5a4040;--c-blue: #e8627a;--c-blue-light: #f0899c;--c-blue-lighter:#ffd6d6;--c-blue-bg: rgba(20,8,8,.55);--c-blue-bg-hover: rgba(20,8,8,.65);--c-blue-border-subtle: rgba(255,214,214,.2);--c-blue-border-dim: rgba(255,214,214,.3);--c-blue-border: rgba(255,214,214,.35);--c-red: #ef4444;--c-red-light: #f87171;--c-red-lighter: #fca5a5;--c-red-bg: rgba(239,68,68,.14);--c-red-border: rgba(239,68,68,.25);--c-red-border-strong: rgba(239,68,68,.5);--c-red-border-focus: rgba(239,68,68,.7);--c-amber: #f5a623;--c-amber-light: #fbbf24;--c-amber-bg: rgba(245,166,35,.14);--c-amber-border:rgba(245,166,35,.25);--c-amber-bg2: rgba(245,166,35,.22);--c-emerald: #34d399;--c-emerald-light:#5eedb8;--c-emerald-bg: rgba(52,211,153,.14);--c-emerald-border:rgba(52,211,153,.25);--c-emerald-bg-strong: rgba(52,211,153,.22);--c-emerald-border-strong: rgba(52,211,153,.32);--c-text-heading: #f2f2f2;--c-text-white: #fff;--c-red-dark: #dc2626;--c-red-darker: #b91c1c;--c-blue-dark: #d44d66;--c-amber-dark: #d97706;--c-amber-darker: #b45309;--c-amber-lighter: #fcd34d;--c-input-bg-dim: rgba(15,5,5,.4);--c-input-bg: rgba(15,5,5,.6);--c-input-bg-alt: rgba(37,17,17,.7);--c-input-border: rgba(90,45,45,.5);--c-input-border-alt: rgba(120,65,65,.4);--c-input-border-hover: rgba(90,45,45,.7);--c-border-hover: rgba(120,65,65,.65);--c-btn-secondary-bg: rgba(90,45,45,.5);--c-btn-secondary-hover: rgba(90,45,45,.85);--c-overlay: rgba(15,5,5,.7);--c-overlay-heavy: rgba(15,5,5,.8);--c-overlay-light: rgba(15,5,5,.6);--c-overlay-btn: rgba(255,214,214,.15);--c-overlay-btn-hover: rgba(255,214,214,.25);--c-on-amber: #1c1917;--c-content-body: #d9c5c5;--c-text-zinc: #a08888;--c-header-bg: rgba(24,13,13,.9);--c-shadow-card: rgba(15,5,5,.6);--c-shadow-blue-tint: rgba(232,98,122,.1);--c-amber-glow: rgba(251,191,36,.35);--c-amber-glow-dim: rgba(251,191,36,.2)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;font-family:var(--font-sans);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--c-bg);color:var(--c-text)}body:before{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(var(--c-bg-tint),var(--c-bg-tint)),url(/ambermoon_bg_big.webp) repeat center center;will-change:transform}img,svg,video{display:block;max-width:100%}img{height:auto}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:none;border:none}a{color:inherit;text-decoration:none}h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-thumb{background:var(--c-bg-alt2);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--c-text-faint)}::-webkit-scrollbar-track{background:var(--c-bg-alt)}*{scrollbar-width:thin;scrollbar-color:var(--c-bg-alt2) var(--c-bg-alt)}.hidden{display:none!important}.animate-spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.pointer-events-none{pointer-events:none}.opacity-75{opacity:.75}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-right{text-align:right}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.icon{display:inline-flex;align-items:center;vertical-align:middle;flex-shrink:0}.icon svg{width:1em;height:1em;fill:currentColor}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;padding-right:28px}select option{background:var(--c-bg-alt2);color:var(--c-text)}.app-shell{display:flex;height:100vh;overflow:hidden}.sidebar{position:fixed;inset:0 auto 0 0;z-index:var(--z-sidebar);width:var(--sidebar-mobile-w);background:var(--c-bg-alt);border-right:1px solid var(--c-border);display:flex;flex-direction:column;height:100vh;transform:translate(-100%);transition:transform var(--tr-base)}.sidebar.is-open{transform:translate(0)}@media (min-width: 1024px){.sidebar{position:static;z-index:auto;width:var(--sidebar-w);flex-shrink:0;transform:none;transition:none}}.sidebar-logo{padding:var(--sp-5) var(--sp-5) var(--sp-4)}.sidebar-logo h1{font-size:2rem;font-weight:700;letter-spacing:-.025em}.sidebar-logo a{transition:opacity var(--tr-fast)}.sidebar-logo a:hover{opacity:.8}.sidebar-search{padding:0 var(--sp-3) var(--sp-3)}.sidebar-search-wrap{position:relative}.sidebar-search-icon{position:absolute;left:var(--sp-2-5);top:50%;transform:translateY(-50%);color:var(--c-text-dimmer);font-size:.875rem}.sidebar-search input{width:100%;padding:var(--sp-1-5) var(--sp-3) var(--sp-1-5) 2rem;background:var(--c-input-bg);border:1px solid var(--c-input-border);border-radius:var(--r-lg);font-size:.875rem;color:var(--c-text);outline:none;transition:border-color var(--tr-fast)}.sidebar-search input::placeholder{color:var(--c-text-dimmer)}.sidebar-search input:focus{border-color:var(--c-blue-border)}.sidebar-divider{margin:0 var(--sp-3);border-top:1px solid var(--c-divider)}.sidebar-games{flex:1;overflow-y:auto;padding:var(--sp-2)}.game-btn{display:block;width:100%;text-align:left;padding:var(--sp-1-5) var(--sp-3);font-size:.875rem;color:var(--c-text-muted);border-radius:var(--r-lg);transition:color var(--tr-fast),background var(--tr-fast)}.game-btn:hover{color:var(--c-text);background:var(--c-surface-hover)}.game-btn.is-active{color:var(--c-blue-light);background:var(--c-blue-bg);font-weight:500}.sidebar-backdrop{position:fixed;inset:0;z-index:var(--z-backdrop);background:var(--c-overlay-light)}@media (min-width: 1024px){.sidebar-backdrop{display:none!important}}.main-wrapper{flex:1;display:flex;flex-direction:column;overflow:hidden}.header{flex-shrink:0;background:var(--c-header-bg);backdrop-filter:blur(8px);border-bottom:1px solid var(--c-border);z-index:var(--z-header)}.header-inner{display:flex;align-items:center;flex-wrap:wrap;min-height:3rem;padding:0 var(--sp-5);gap:var(--sp-4)}@media (min-width: 1024px){.header-inner{height:3rem}}.sidebar-toggle{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;margin-left:-.25rem;color:var(--c-text-muted);transition:color var(--tr-fast);font-size:1.5rem}.sidebar-toggle:hover{color:var(--c-text-bright)}@media (min-width: 1024px){.sidebar-toggle{display:none}}.header-logo{font-size:1.125rem;font-weight:700;letter-spacing:-.025em;line-height:1;transition:opacity var(--tr-fast)}.header-logo:hover{opacity:.8}@media (min-width: 1024px){.header-logo{display:none}}.header-nav{display:none;align-items:center;gap:var(--sp-5);margin-right:auto}@media (min-width: 1024px){.header-nav{display:flex}}.nav-link{font-size:.875rem;color:var(--c-text-muted);display:inline-flex;align-items:center;gap:var(--sp-1);transition:color var(--tr-fast)}.nav-link:hover{color:var(--c-text-bright)}.nav-link .icon{font-size:1rem}.nav-link--amber{color:color-mix(in srgb,var(--c-amber-light) 80%,transparent)}.nav-link--amber:hover{color:var(--c-amber-lighter)}.nav-badge{font-size:10px;font-weight:700;line-height:1;padding:2px 5px;min-width:1rem;text-align:center;border-radius:9999px;background:var(--c-amber);color:var(--c-on-amber);box-shadow:0 0 6px var(--c-amber-border);animation:badge-glow 2s ease-in-out infinite}@keyframes badge-glow{0%,to{box-shadow:0 0 4px var(--c-amber-border)}50%{box-shadow:0 0 10px var(--c-amber-border)}}.theme-toggle{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;font-size:12px;color:var(--c-text-dim);border:1px solid var(--c-btn-secondary-bg);border-radius:var(--r-md);transition:color var(--tr-fast),border-color var(--tr-fast),background var(--tr-fast);white-space:nowrap}.theme-toggle:hover{color:var(--c-text);border-color:var(--c-border-hover);background:var(--c-surface-hover)}.theme-toggle-icon{flex-shrink:0}@media (max-width: 640px){.theme-toggle-label{display:none}}.user-area{position:relative;margin-left:auto}.content-area{flex:1;overflow-y:auto}.view-mods{padding:var(--sp-5)}.view-detail{padding:var(--sp-5);max-width:100rem}.view-submit,.view-admin{padding:var(--sp-5)}@media (min-width: 1024px){.no-sidebar .sidebar{display:none}.no-sidebar .header-logo{display:inline}}@media (min-width: 1280px){.content-area.detail-mode{display:flex;flex-direction:column;overflow:hidden}.content-area.detail-mode .view-detail{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.content-area.detail-mode .mod-detail-inner{flex:1;min-height:0;display:flex;flex-direction:column}.content-area.detail-mode .detail-body{flex:1;min-height:0;align-items:stretch}.content-area.detail-mode .detail-main,.content-area.detail-mode .downloads-sidebar{overflow-y:auto;min-height:0;padding-right:var(--sp-3)}}.controls-bar{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-5);border-bottom:1px solid var(--c-border)}.grid-controls{display:flex;flex-direction:column;gap:var(--sp-2);min-width:0;width:100%}.grid-controls-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3)}.sort-group{display:flex;align-items:center;gap:var(--sp-2)}.sort-label{font-size:.75rem;color:var(--c-text-dim);text-transform:uppercase;letter-spacing:.05em}.sort-select,.game-filter-select{padding:var(--sp-1-5) var(--sp-2-5);padding-right:28px;background:var(--c-input-bg);border:1px solid var(--c-input-border);border-radius:var(--r-lg);font-size:.875rem;color:var(--c-text-muted);outline:none;transition:border-color var(--tr-fast)}.sort-select:focus,.game-filter-select:focus{border-color:var(--c-blue-border)}.search-group{display:flex;align-items:center;gap:var(--sp-1-5);flex:1 1 100%}@media (min-width: 640px){.search-group{flex:0 1 auto}}.search-wrap{position:relative;flex:1}.search-icon{position:absolute;left:var(--sp-2-5);top:50%;transform:translateY(-50%);color:var(--c-text-dimmer);font-size:.875rem;pointer-events:none}.search-input{width:100%;padding:var(--sp-1-5) var(--sp-3) var(--sp-1-5) 2rem;background:var(--c-input-bg);border:1px solid var(--c-input-border);border-radius:var(--r-lg);font-size:.875rem;color:var(--c-text);outline:none;transition:border-color var(--tr-fast)}.search-input::placeholder{color:var(--c-text-dimmer)}.search-input:focus{border-color:var(--c-blue-border)}@media (min-width: 1024px){.search-input{width:14rem}}@media (min-width: 1280px){.search-input{width:18rem}}.search-kind-select{padding:var(--sp-1-5) var(--sp-2);padding-right:28px;background:var(--c-input-bg);border:1px solid var(--c-input-border);border-radius:var(--r-lg);font-size:.875rem;color:var(--c-text-muted);outline:none;transition:border-color var(--tr-fast)}.search-kind-select:focus{border-color:var(--c-blue-border)}.active-tags{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-1-5)}.detail-breadcrumb{display:flex;align-items:center;gap:var(--sp-2);font-size:.875rem}.breadcrumb-back{color:var(--c-blue-light);display:flex;align-items:center;gap:var(--sp-1-5);transition:color var(--tr-fast)}.breadcrumb-back:hover{color:var(--c-blue-lighter)}.breadcrumb-back .icon{font-size:1.125rem}.breadcrumb-sep{color:var(--c-text-faint)}.breadcrumb-game{color:var(--c-text-dim);transition:color var(--tr-fast)}.breadcrumb-game:hover{color:var(--c-text-muted)}.breadcrumb-mod{color:var(--c-text);font-weight:500}.breadcrumb-mod[href]{color:var(--c-text-dim);font-weight:400;transition:color var(--tr-fast)}.breadcrumb-mod[href]:hover{color:var(--c-text-muted)}.breadcrumb-article{color:var(--c-text);font-weight:500}.mod-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--sp-5)}@media (max-width: 767px){.mod-grid{grid-template-columns:1fr;padding:var(--sp-3);gap:var(--sp-3)}}.mod-grid.hidden{display:none}.mod-card{position:relative;background:var(--c-surface);border-radius:var(--r-xl);overflow:hidden;border:1px solid var(--c-border-dim);cursor:pointer;display:flex;flex-direction:column;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.mod-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px -8px var(--c-shadow-card),0 0 0 1px var(--c-shadow-blue-tint)}.mod-card.mod-update-available{box-shadow:0 0 16px 0 var(--c-amber-glow),0 0 6px 0 var(--c-amber-glow-dim)}.card-link{position:absolute;inset:0;z-index:1}.card-overlay{background:var(--c-bg);text-align:center;overflow:hidden;white-space:nowrap}.card-game-link{position:relative;z-index:2;color:var(--c-text-muted);font-size:.875rem;transition:color var(--tr-fast)}.card-game-link:hover{color:var(--c-blue-light)}.card-thumb-wrap{position:relative;overflow:hidden;background:var(--c-bg-alt2)}.card-thumb-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.1);filter:blur(12px);opacity:.5}.card-thumb-img{position:relative;width:100%;height:11rem;object-fit:contain;transition:transform .3s ease}.download-badge{position:absolute;top:var(--sp-2);right:var(--sp-2);z-index:2;width:22px;height:22px;border-radius:var(--r-full);display:flex;align-items:center;justify-content:center}.download-badge.has-update{background:var(--c-amber-bg2);border:1px solid var(--c-amber-border)}.download-badge.has-update .icon{color:var(--c-amber-light);font-size:.75rem}.download-badge.is-downloaded{background:var(--c-emerald-bg-strong);border:1px solid var(--c-emerald-border-strong)}.download-badge.is-downloaded .icon{color:var(--c-emerald-light);font-size:.75rem}.card-content{padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-1-5);flex:1}.card-title{font-size:15px;font-weight:600;color:var(--c-text-heading);line-height:1.4}.card-meta{display:flex;align-items:center;gap:var(--sp-2);font-size:.75rem}.card-version{background:var(--c-blue-bg);color:var(--c-blue-light);padding:1px 6px;border-radius:var(--r-sm);font-family:var(--font-mono);font-size:11px}.card-author{color:var(--c-text-muted)}.card-uploader{font-size:11px;color:var(--c-text-dim)}.card-tags{display:flex;flex-wrap:wrap;gap:var(--sp-1);margin-top:2px}.tag-pill{display:inline-block;padding:1px 8px;border-radius:var(--r-full);font-size:11px;line-height:1.6;background:var(--c-blue-bg);color:var(--c-blue-lighter);border:1px solid var(--c-blue-border-subtle);white-space:nowrap}.tag-more{display:inline-block;padding:1px 4px;font-size:10px;color:var(--c-text-dim)}.card-desc{font-size:.75rem;color:var(--c-text-muted);line-height:1.6;margin-top:2px;overflow-wrap:break-word}.card-footer{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:var(--sp-2-5) var(--sp-4);border-top:1px solid var(--c-border-dim);font-size:.75rem;color:var(--c-text-dim);margin-top:auto}.card-stat{display:flex;align-items:center;gap:var(--sp-1)}.card-stat .icon{font-size:13px}.active-tag-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px 2px 10px;border-radius:var(--r-full);font-size:12px;line-height:1.5;background:var(--c-blue-bg);color:var(--c-blue-lighter);border:1px solid var(--c-blue-border);white-space:nowrap;cursor:pointer;transition:background var(--tr-fast),border-color var(--tr-fast)}.active-tag-chip:hover{background:var(--c-blue-border-dim);border-color:var(--c-blue-border)}.active-tag-chip .chip-x{font-size:14px;line-height:1;opacity:.6}.active-tag-chip:hover .chip-x{opacity:1}.mods-loading{display:flex;align-items:center;justify-content:center;padding:5rem 0;color:var(--c-text-dim);font-size:.875rem;grid-column:1 / -1}.mods-loading svg{height:1.25rem;width:1.25rem;margin-right:var(--sp-2-5);color:var(--c-blue-light);opacity:.6}.dropdown-wrap{position:relative}.dropdown-btn{display:flex;align-items:center;gap:var(--sp-1-5);background:var(--c-input-bg);border:1px solid var(--c-input-border);color:var(--c-text-muted);padding:var(--sp-1-5) var(--sp-3);border-radius:var(--r-lg);font-size:.875rem;transition:border-color var(--tr-fast),color var(--tr-fast)}.dropdown-btn:hover{border-color:var(--c-blue-border);color:var(--c-text-bright)}.dropdown-btn .icon{font-size:1rem;color:var(--c-text-dim)}.tags-dropdown{position:absolute;top:100%;margin-top:var(--sp-1);left:0;min-width:220px;background:var(--c-surface);border:1px solid var(--c-btn-secondary-bg);border-radius:var(--r-xl);z-index:var(--z-dropdown);box-shadow:0 20px 25px -5px var(--c-shadow-card);padding:var(--sp-1) 0;overflow-y:auto;max-height:70vh}@media (min-width: 640px){.tags-dropdown{display:grid;grid-auto-flow:column;grid-template-rows:repeat(var(--tag-rows, 15),auto);gap:0 var(--sp-2);overflow-y:visible;max-height:none}.tags-dropdown.hidden{display:none}}.tags-dropdown label{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-1-5) var(--sp-3);font-size:.875rem;color:var(--c-text-muted);cursor:pointer;transition:background var(--tr-fast);white-space:nowrap}.tags-dropdown label:hover{background:var(--c-surface-hover)}.tags-dropdown input[type=checkbox]{border-radius:var(--r-sm);border:1px solid var(--c-text-dimmer);background:var(--c-bg-alt2);accent-color:var(--c-blue)}.editor-tags-dropdown-btn{padding:var(--sp-1-5) var(--sp-3);background:var(--c-input-bg);border:1px solid var(--c-input-border);border-radius:var(--r-lg);font-size:.875rem;color:var(--c-text-muted);display:inline-flex;align-items:center;gap:var(--sp-1-5);transition:color var(--tr-fast),border-color var(--tr-fast)}.editor-tags-dropdown-btn:hover{color:var(--c-text);border-color:var(--c-text-dimmer)}@media (min-width: 1280px){.detail-body{display:flex;gap:var(--sp-6);align-items:flex-start}}@media (min-width: 1280px){.detail-main{flex:1;min-width:0}}.detail-status-banner{border-radius:var(--r-xl);padding:var(--sp-3) var(--sp-4);margin-bottom:var(--sp-4);font-size:.875rem;font-weight:500;display:flex;align-items:center;gap:var(--sp-2)}.detail-status-banner .icon{font-size:1rem}.detail-status-banner.is-removed{background:var(--c-red-bg);border:1px solid var(--c-red-border);color:var(--c-red-light)}.detail-status-banner.is-delisted{background:var(--c-amber-bg);border:1px solid var(--c-amber-border);color:var(--c-amber-light)}.detail-banner{position:relative;border-radius:var(--r-xl);overflow:hidden;border:1px solid var(--c-border);margin-bottom:2rem;background:var(--c-surface)}.detail-edit-link{position:absolute;top:var(--sp-3);right:var(--sp-3);z-index:10;display:inline-flex;align-items:center;gap:var(--sp-1-5);padding:var(--sp-1-5) var(--sp-3);border-radius:var(--r-lg);background:var(--c-bg-alt2);border:1px solid var(--c-btn-secondary-bg);color:var(--c-text-muted);font-size:.75rem;font-weight:500;backdrop-filter:blur(8px);transition:color var(--tr-fast),border-color var(--tr-fast),background var(--tr-fast)}.detail-edit-link:hover{color:var(--c-amber-light);border-color:var(--c-amber-border);background:var(--c-bg-alt2)}.detail-edit-link .icon{font-size:.875rem}.detail-banner-inner{position:relative;display:flex;flex-direction:column;gap:var(--sp-4);padding:var(--sp-4)}@media (min-width: 768px){.detail-banner-inner{flex-direction:row;gap:var(--sp-6);padding:var(--sp-6)}}.detail-thumbnail{flex-shrink:0;align-self:flex-start;max-height:11rem;width:auto;height:auto;border-radius:var(--r-lg);box-shadow:0 25px 50px -12px var(--c-shadow-card);border:1px solid var(--c-border-faint);object-fit:contain}@media (min-width: 768px){.detail-thumbnail{max-height:13rem;max-width:13rem}}.detail-info{display:flex;flex-direction:column;gap:var(--sp-2);min-width:0}.detail-mod-name{font-size:1.25rem;font-weight:700;color:var(--c-text-bright);letter-spacing:-.025em}@media (min-width: 768px){.detail-mod-name{font-size:1.5rem}}.detail-version{color:var(--c-text-muted);font-size:.875rem;font-family:var(--font-mono)}.detail-author,.detail-uploader{font-size:.875rem}.detail-author{color:var(--c-text-muted)}.detail-uploader{color:var(--c-text-dim)}.detail-dates{color:var(--c-text-dim);font-size:.875rem}.detail-download-status{display:inline-flex;align-items:center;gap:var(--sp-2);font-size:.875rem;border-radius:var(--r-lg);padding:var(--sp-1-5) var(--sp-3);margin-top:var(--sp-1)}.detail-download-status.has-update{background:var(--c-amber-bg);border:1px solid var(--c-amber-border)}.detail-download-status.is-downloaded{background:var(--c-emerald-bg);border:1px solid var(--c-emerald-border)}.detail-tags{font-size:.875rem;display:flex;align-items:center;gap:var(--sp-1-5);flex-wrap:wrap}.detail-tags .icon{color:var(--c-text-dim)}.detail-tag-link{color:var(--c-text-muted);transition:color var(--tr-fast);cursor:pointer}.detail-tag-link:hover{color:var(--c-blue-light)}.detail-stats{display:flex;gap:var(--sp-5);color:var(--c-text-muted);font-size:.875rem;margin-top:var(--sp-2)}.detail-stat{display:flex;align-items:center;gap:var(--sp-1-5)}.detail-stat strong{font-weight:500}.detail-forum-link{display:inline-flex;align-items:center;gap:var(--sp-1-5);color:var(--c-blue-light);font-size:.875rem;transition:color var(--tr-fast);margin-top:var(--sp-3)}.detail-forum-link:hover{color:var(--c-blue-lighter)}.detail-forum-link .icon{font-size:1rem}.detail-tabs{display:flex;gap:var(--sp-1);border-bottom:1px solid var(--c-bg-alt2);margin-bottom:var(--sp-6)}.detail-tab{padding:var(--sp-2-5) var(--sp-5);font-size:.875rem;font-weight:500;border-bottom:2px solid transparent;color:var(--c-text-dim);transition:color var(--tr-fast)}.detail-tab:hover{color:var(--c-text-muted)}.detail-tab.is-active{color:var(--c-text-bright);border-bottom-color:var(--c-blue)}@media (min-width: 1280px){.detail-tab[data-tab=downloads]{display:none}}.tab-loading{color:var(--c-text-dim);padding:var(--sp-10) 0;text-align:center}.tab-loading .icon{font-size:1.5rem;color:var(--c-blue-light)}.tab-error{color:var(--c-red-light);padding:var(--sp-10) 0;text-align:center}.tab-empty{color:var(--c-text-zinc);text-align:center;padding:var(--sp-4) 0}.downloads-sidebar{display:none}@media (min-width: 1280px){.downloads-sidebar{display:block;width:24rem;flex-shrink:0}}.downloads-sidebar-title{color:var(--c-text-bright);font-weight:600;font-size:1.125rem;margin-bottom:var(--sp-4);padding-top:var(--sp-4)}.downloads-sidebar-content{display:flex;flex-direction:column;gap:var(--sp-4);padding-bottom:var(--sp-4)}.downloads-content{display:flex;flex-direction:column;gap:var(--sp-3)}.package-card{background:var(--c-surface);border-radius:var(--r-lg);border:1px solid var(--c-border);padding:var(--sp-3) var(--sp-4)}.package-header{display:flex;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-1)}.package-status-badge{font-size:10px;padding:1px 8px;border-radius:var(--r-full);font-weight:600;letter-spacing:.05em;text-transform:uppercase;flex-shrink:0}.package-status-badge.is-main{background:var(--c-blue-bg);color:var(--c-blue-light);border:1px solid var(--c-blue-border)}.package-status-badge.is-optional{background:var(--c-input-bg);color:var(--c-text-muted);border:1px solid var(--c-input-border-alt)}.package-name{color:var(--c-text-bright);font-weight:600;font-size:.9375rem}.package-description{color:var(--c-text-dim);font-size:.8125rem;line-height:1.4;margin-bottom:var(--sp-2)}.package-archive{margin-top:var(--sp-1)}.package-archive summary{color:var(--c-text-dim);font-size:.8125rem;cursor:pointer;transition:color var(--tr-fast)}.package-archive summary:hover{color:var(--c-text-muted)}.package-archive-versions{margin-top:var(--sp-1-5);display:flex;flex-direction:column;gap:0}.version-row{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-1-5) var(--sp-2);border-radius:var(--r-md);transition:background var(--tr-fast)}.version-row:hover{background:var(--c-input-bg)}.version-label{color:var(--c-text-muted);font-size:.8125rem;font-family:var(--font-mono);font-weight:500}.version-size,.version-date{color:var(--c-text-dimmer);font-size:.8125rem}.version-download{margin-left:auto;color:var(--c-blue-light);font-size:.8125rem;display:flex;align-items:center;gap:var(--sp-1);transition:color var(--tr-fast)}.version-download:hover{color:var(--c-blue-lighter)}.version-download .icon{font-size:.9375rem}.discussion-posts{display:flex;flex-direction:column;gap:var(--sp-3)}.discussion-post{background:var(--c-surface);border-radius:var(--r-xl);border:1px solid var(--c-border);padding:var(--sp-5)}.discussion-post-header{display:flex;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-3)}.post-author{font-weight:600;font-size:.875rem}.post-dot{color:var(--c-text-faint)}.post-time{color:var(--c-text-dimmer);font-size:.75rem;transition:color var(--tr-fast)}.post-time:hover{color:var(--c-text-muted)}.post-edit-info{color:var(--c-text-dimmer);font-size:.75rem;margin-top:var(--sp-3);font-style:italic}.discussion-pagination{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:var(--sp-2);margin-top:var(--sp-6);margin-bottom:var(--sp-4)}.discussion-pagination .page-btn{padding:var(--sp-1-5) var(--sp-3);background:var(--c-bg-alt2);color:var(--c-text-muted);border-radius:var(--r-lg);font-size:.875rem;border:1px solid var(--c-btn-secondary-bg);transition:background var(--tr-fast)}.discussion-pagination .page-btn:hover:not(:disabled){background:var(--c-btn-secondary-hover)}.discussion-pagination .page-btn:disabled{opacity:.4;cursor:not-allowed}.page-numbers{display:flex;gap:var(--sp-1)}.page-num{padding:var(--sp-1-5) var(--sp-3);border-radius:var(--r-lg);font-size:.875rem;border:1px solid var(--c-btn-secondary-bg);transition:background var(--tr-fast)}.page-num--active{background:var(--c-blue);color:var(--c-text-bright);font-weight:700;border-color:transparent}.page-num--inactive{background:var(--c-bg-alt2);color:var(--c-text-muted)}.page-num--inactive:hover{background:var(--c-btn-secondary-hover)}.page-ellipsis{padding:var(--sp-1-5) var(--sp-2);color:var(--c-text-dimmer);font-size:.875rem}.page-jump{display:flex;align-items:center;gap:var(--sp-1-5);margin-left:var(--sp-2);font-size:.875rem;color:var(--c-text-dim)}.page-jump-input{width:3.5rem;padding:var(--sp-1) var(--sp-2);background:var(--c-bg-alt2);border:1px solid var(--c-btn-secondary-bg);border-radius:var(--r-lg);color:var(--c-text-bright);text-align:center;font-size:.875rem;outline:none}.page-jump-input:focus{border-color:var(--c-blue-border)}.page-jump-go{padding:var(--sp-1) var(--sp-2-5);background:var(--c-btn-secondary-hover);color:var(--c-text);border-radius:var(--r-lg);font-size:.875rem;transition:background var(--tr-fast)}.page-jump-go:hover{background:var(--c-text-dimmer)}.discussion-forum-link-wrapper{margin-top:var(--sp-6);text-align:center}.discussion-forum-link{display:inline-flex;align-items:center;gap:var(--sp-1-5);color:var(--c-blue-light);transition:color var(--tr-fast)}.discussion-forum-link:hover{color:var(--c-blue-lighter)}.discussion-forum-link .icon{font-size:1rem}.forum-content{color:var(--c-content-body);line-height:1.7;overflow-wrap:break-word}.forum-content a{color:var(--c-blue-light);text-decoration:underline;text-decoration-color:var(--c-blue-border);text-underline-offset:2px;transition:color .15s,text-decoration-color .15s}.forum-content a:hover{color:var(--c-blue-lighter);text-decoration-color:var(--c-blue-lighter)}.forum-content img{max-width:100%;height:auto;border-radius:6px}.forum-content img.postimage{display:inline-block}.forum-content img[src$=".svg"]{display:inline;height:1.2em;width:auto;vertical-align:text-bottom;border-radius:0}.forum-content blockquote{border-left:3px solid var(--c-text-faint);background:var(--c-bg-alt);padding:.75rem 1rem;margin:.75rem 0;border-radius:0 6px 6px 0}.forum-content blockquote cite{display:block;font-weight:600;margin-bottom:.25rem;color:var(--c-text-muted)}.forum-content pre,.forum-content code{background:var(--c-bg);font-family:var(--font-mono);border-radius:6px}.forum-content pre{padding:.75rem 1rem;margin:.75rem 0;overflow-x:auto;border:1px solid var(--c-bg-alt2)}.forum-content code{padding:.125rem .375rem;font-size:.875em}.forum-content pre code{padding:0;background:none}.forum-content ul{list-style-type:disc;padding-left:1.5rem;margin:.5rem 0}.forum-content ol{list-style-type:decimal;padding-left:1.5rem;margin:.5rem 0}.forum-content li{margin:.25rem 0}.forum-content p{margin-bottom:.5rem}.forum-content h1,.forum-content h2,.forum-content h3{color:var(--c-text-heading);font-weight:600;margin:1rem 0 .5rem}.forum-content hr{border-color:var(--c-bg-alt2);margin:1rem 0}.forum-content .tabmenu_live{margin:.75rem 0}.forum-content .tabmenu_ul{display:flex;flex-wrap:wrap;gap:.25rem;list-style:none;padding:0;margin:0;border-bottom:1px solid var(--c-border)}.forum-content .tabmenu_ul li{margin:0}.forum-content .tabmenu_ul li button{display:block;padding:.5rem 1rem;font-size:.875rem;font-weight:500;font-family:inherit;color:var(--c-text-dim);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color .15s,border-color .15s}.forum-content .tabmenu_ul li button:hover{color:var(--c-content-body)}.forum-content .tabmenu_ul li button.current{color:var(--c-text-white);border-bottom-color:var(--c-blue)}.forum-content .tabcontent_wrapper{background:var(--c-header-bg);border:1px solid var(--c-border);border-top:none;border-radius:0 0 8px 8px}.forum-content .tabmenu_live .tabcontent{padding:.75rem 1rem;line-height:1.7}.forum-content .tabmenu,.forum-content .tabmenu2{display:none}.forum-content .spoiler{background:var(--c-bg);padding:.5rem .75rem;border-radius:6px;margin:.5rem 0;border:1px solid var(--c-bg-alt2)}.forum-content table{border-collapse:collapse;width:100%;margin:.5rem 0}.forum-content th,.forum-content td{border:1px solid var(--c-bg-alt2);padding:.375rem .75rem;text-align:left}.forum-content th{background:var(--c-bg-alt);font-weight:600}.forum-content .forum-spoiler{margin:1rem 0;border-radius:var(--r-md);border:1px solid var(--c-text-dimmer);background:var(--c-input-bg-dim)}.forum-content .forum-spoiler-title{cursor:pointer;user-select:none;padding:var(--sp-2) var(--sp-3);font-size:.875rem;font-weight:700;color:var(--c-text-muted)}.forum-content .forum-spoiler-content{padding:var(--sp-2) var(--sp-3);border-top:1px solid var(--c-text-dimmer)}.user-login-link{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;font-size:13px;color:var(--c-text-muted);border:1px solid var(--c-btn-secondary-bg);border-radius:var(--r-md);transition:color var(--tr-fast),border-color var(--tr-fast),background var(--tr-fast);white-space:nowrap}.user-login-link:hover{color:var(--c-text);border-color:var(--c-border-hover);background:var(--c-surface-hover)}.user-login-link .icon{font-size:1rem}.user-profile-display{display:flex;align-items:center;gap:8px;padding:3px 4px 3px 3px}.user-avatar-img{width:28px;height:28px;border-radius:7px;object-fit:cover;flex-shrink:0}.user-avatar-initials{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:7px;font-size:11px;font-weight:700;color:var(--c-text-white);flex-shrink:0;letter-spacing:.5px}.user-profile-name{font-size:13px;font-weight:500;color:var(--c-text);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 480px){.user-profile-name{display:none}}.submit-container{max-width:64rem;margin:0 auto}.submit-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem}.submit-title{font-size:1.5rem;font-weight:700;color:var(--c-text-bright);letter-spacing:-.025em}.btn-primary{display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);background:var(--c-blue);color:var(--c-text-bright);font-size:.875rem;font-weight:500;border-radius:var(--r-lg);transition:background var(--tr-fast)}.btn-primary:hover{background:var(--c-blue-dark)}.btn-primary .icon{font-size:1.125rem}.btn-secondary{display:inline-flex;align-items:center;gap:var(--sp-1-5);padding:var(--sp-1-5) var(--sp-4);background:var(--c-bg-alt2);color:var(--c-text-muted);font-size:.875rem;border-radius:var(--r-lg);border:1px solid var(--c-btn-secondary-bg);transition:background var(--tr-fast)}.btn-secondary:hover{background:var(--c-btn-secondary-hover)}.btn-secondary .icon{font-size:1rem}.btn-danger{display:inline-flex;align-items:center;gap:var(--sp-1-5);padding:var(--sp-2) var(--sp-4);background:var(--c-red-bg);color:var(--c-red-light);font-size:.875rem;border-radius:var(--r-lg);border:1px solid var(--c-red-border);transition:background var(--tr-fast)}.btn-danger:hover:not(:disabled){background:var(--c-red-border)}.btn-danger .icon{font-size:1rem}.btn-amber{display:inline-flex;align-items:center;gap:var(--sp-1-5);padding:var(--sp-1-5) var(--sp-4);background:var(--c-amber-dark);color:var(--c-text-bright);font-size:.875rem;font-weight:500;border-radius:var(--r-lg);transition:background var(--tr-fast)}.btn-amber:hover{background:var(--c-amber-darker)}.btn-amber .icon{font-size:1rem}.submit-section{margin-bottom:2.5rem}.section-heading{font-size:1.125rem;font-weight:600;color:var(--c-text);margin-bottom:var(--sp-4);display:flex;align-items:center;gap:var(--sp-2)}.section-heading .icon{font-size:1.25rem}.section-heading .count{font-size:.875rem;font-weight:400;color:var(--c-text-dim)}.cards-grid{display:grid;grid-template-columns:1fr;gap:var(--sp-4)}@media (min-width: 640px){.cards-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.cards-grid{grid-template-columns:repeat(3,1fr)}}.cards-empty{color:var(--c-text-dim);font-size:.875rem;padding:var(--sp-6) 0;text-align:center;background:var(--c-header-bg);border-radius:var(--r-xl);border:1px solid var(--c-border-faint)}.cards-loading{display:flex;align-items:center;justify-content:center;padding:2rem 0;color:var(--c-text-dim);font-size:.875rem}.cards-loading .icon{font-size:1.25rem;color:var(--c-blue-light);margin-right:var(--sp-2)}.draft-card{background:var(--c-surface);border-radius:var(--r-xl);border:1px solid var(--c-border);padding:var(--sp-4);transition:border-color var(--tr-fast)}.draft-card:hover{border-color:var(--c-input-border-hover)}.draft-card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--sp-2)}.draft-card-name{color:var(--c-text-bright);font-weight:500;font-size:.875rem;flex:1;margin-right:var(--sp-2)}.draft-card-delete{color:var(--c-text-dimmer);padding:2px;transition:color var(--tr-fast)}.draft-card-delete:hover{color:var(--c-red-light)}.draft-card-delete .icon{font-size:1rem}.draft-card-game{color:var(--c-text-dim);font-size:.75rem;margin-bottom:var(--sp-3)}.draft-card-footer{display:flex;align-items:center;justify-content:space-between}.draft-card-date{color:var(--c-text-dimmer);font-size:.75rem}.draft-resume-btn{color:var(--c-blue-light);font-size:.75rem;font-weight:500;display:inline-flex;align-items:center;gap:var(--sp-1);transition:color var(--tr-fast)}.draft-resume-btn:hover{color:var(--c-blue-lighter)}.draft-resume-btn .icon{font-size:.875rem}.published-mod-card{background:var(--c-surface);border-radius:var(--r-xl);border:1px solid var(--c-border);overflow:hidden;transition:border-color var(--tr-fast)}.published-mod-card:hover{border-color:var(--c-input-border-hover)}.pub-card-body{display:flex;gap:var(--sp-3);padding:var(--sp-4)}.pub-card-thumb{width:4rem;height:4rem;border-radius:var(--r-lg);object-fit:cover;background:var(--c-bg-alt2);flex-shrink:0}.pub-card-thumb.is-empty,.card-thumb-img.is-empty{opacity:.3}.pub-card-info{flex:1;min-width:0}.pub-card-name{color:var(--c-text-bright);font-weight:500;font-size:.875rem}.pub-card-game{color:var(--c-text-dim);font-size:.75rem;margin-top:2px}.pub-card-meta{display:flex;align-items:center;gap:var(--sp-2);margin-top:var(--sp-1-5)}.pub-card-version{background:var(--c-blue-bg);color:var(--c-blue-light);padding:1px 6px;border-radius:var(--r-sm);font-family:var(--font-mono);font-size:11px}.pub-card-status{padding:1px 6px;border-radius:var(--r-sm);font-size:11px;font-weight:500}.pub-card-status.is-delisted{background:var(--c-amber-bg);color:var(--c-amber-light)}.pub-card-status.is-removed{background:var(--c-red-bg);color:var(--c-red-light)}.pub-card-footer{border-top:1px solid var(--c-border);padding:var(--sp-2-5) var(--sp-4);display:flex;justify-content:flex-end;gap:var(--sp-4)}.pub-card-view-btn,.pub-card-edit-btn{color:var(--c-blue-light);font-size:.75rem;font-weight:500;display:inline-flex;align-items:center;gap:var(--sp-1);transition:color var(--tr-fast);text-decoration:none}.pub-card-view-btn:hover,.pub-card-edit-btn:hover{color:var(--c-blue-lighter)}.pub-card-view-btn .icon,.pub-card-edit-btn .icon{font-size:.875rem}.editor-container{max-width:100rem;margin:0 auto}.editor-actions{display:flex;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-6);position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--c-bg) 90%,transparent);backdrop-filter:blur(8px);margin-left:calc(-1 * var(--sp-5));margin-right:calc(-1 * var(--sp-5));padding:var(--sp-3) var(--sp-5);border-bottom:1px solid var(--c-border-faint)}.editor-bottom-bar{position:sticky;bottom:0;z-index:10;display:flex;justify-content:flex-end;align-items:center;gap:var(--sp-3);margin-left:calc(-1 * var(--sp-5));margin-right:calc(-1 * var(--sp-5));padding:var(--sp-3) var(--sp-5);background:color-mix(in srgb,var(--c-bg) 92%,transparent);backdrop-filter:blur(10px);border-top:1px solid var(--c-border-faint);box-shadow:0 -4px 16px #00000059}.editor-back{color:var(--c-blue-light);font-size:.875rem;display:inline-flex;align-items:center;gap:var(--sp-1-5);transition:color var(--tr-fast)}.editor-back:hover{color:var(--c-blue-lighter)}.editor-back .icon{font-size:1.125rem}.editor-save-status{font-size:.75rem;color:var(--c-text-dimmer);margin-left:var(--sp-2)}.editor-save-status.is-unsaved{color:var(--c-amber-light)}.editor-save-status.is-saving{color:var(--c-text-dimmer)}.editor-save-status.is-saved{color:var(--c-emerald-light)}.editor-save-status.is-error{color:var(--c-red-light)}.editor-actions-right{margin-left:auto;display:flex;align-items:center;gap:var(--sp-2)}@media (min-width: 1280px){.editor-layout{display:flex;gap:var(--sp-6);align-items:flex-start}}.editor-form{display:flex;flex-direction:column;gap:2rem}@media (min-width: 1280px){.editor-form{flex:1;min-width:0}}.editor-section{background:var(--c-surface);border-radius:var(--r-xl);border:1px solid var(--c-border);padding:var(--sp-5)}.editor-section-heading{color:var(--c-text-bright);font-weight:600;margin-bottom:var(--sp-4);display:flex;align-items:center;gap:var(--sp-2)}.editor-section-heading .icon{color:var(--c-blue-light)}.editor-section-heading .hint{font-size:.75rem;color:var(--c-text-dim);font-weight:400}.editor-section.is-danger{border-color:var(--c-red-border)}.editor-section.is-danger .editor-section-heading{color:var(--c-red-light)}.form-hint{display:block;font-size:.7rem;color:var(--c-text-dimmer);margin-top:var(--sp-1);line-height:1.4}.section-hint{font-size:.75rem;color:var(--c-text-dim);line-height:1.5;margin-bottom:var(--sp-4)}.section-hint strong{color:var(--c-text-muted);font-weight:600}.form-fields{display:flex;flex-direction:column;gap:var(--sp-4)}.form-label{display:block;font-size:.75rem;color:var(--c-text-dim);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--sp-1-5)}.form-label .count{color:var(--c-text-dimmer);font-weight:400;text-transform:none;letter-spacing:normal;margin-left:var(--sp-1)}.form-label .count.is-error{color:var(--c-red-light)}.form-input,.form-textarea,.form-select{width:100%;padding:var(--sp-2) var(--sp-3);background:var(--c-input-bg);border:1px solid var(--c-input-border);border-radius:var(--r-lg);font-size:.875rem;color:var(--c-text);outline:none;transition:border-color var(--tr-fast)}.form-input::placeholder,.form-textarea::placeholder{color:var(--c-text-dimmer)}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--c-blue-border)}.form-textarea{resize:vertical}.form-select{max-width:20rem}.editor-tag-chips{display:flex;flex-wrap:wrap;gap:var(--sp-1-5);margin-bottom:var(--sp-2)}.editor-errors-banner{margin-bottom:var(--sp-6);background:var(--c-red-bg);border:1px solid var(--c-red-border);border-radius:var(--r-xl);padding:var(--sp-4)}.editor-errors-banner.is-success{background:var(--c-emerald-bg);border-color:var(--c-emerald-border)}.errors-banner-header{display:flex;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-2)}.errors-banner-header .icon{font-size:1.125rem}.errors-banner-header .errors-label{font-weight:500;font-size:.875rem}.editor-errors-banner .errors-label,.editor-errors-banner .errors-icon{color:var(--c-red-light)}.editor-errors-banner.is-success .errors-label,.editor-errors-banner.is-success .errors-icon{color:var(--c-emerald-light)}.errors-dismiss{margin-left:auto;color:var(--c-text-dim);transition:color var(--tr-fast)}.errors-dismiss:hover{color:var(--c-text-muted)}.errors-dismiss .icon{font-size:1rem}.errors-list{font-size:.875rem;color:var(--c-red-lighter);padding-left:var(--sp-6);list-style-type:disc;display:flex;flex-direction:column;gap:var(--sp-1)}.editor-errors-banner.is-success .errors-list{color:var(--c-emerald-light)}.packages-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--sp-4)}.packages-container{display:flex;flex-direction:column;gap:var(--sp-4)}.add-package-btn,.add-version-btn{color:var(--c-blue-light);font-size:.875rem;display:inline-flex;align-items:center;gap:var(--sp-1);transition:color var(--tr-fast)}.add-package-btn:hover,.add-version-btn:hover{color:var(--c-blue-lighter)}.add-version-btn{font-size:.75rem;margin-top:var(--sp-2)}.add-version-btn .icon,.add-package-btn .icon{font-size:.875rem}.editor-package{background:var(--c-input-bg);border-radius:var(--r-lg);border:1px solid var(--c-border-faint);padding:var(--sp-4)}.editor-package.is-new{border-color:var(--c-emerald-border)}.pkg-header{display:flex;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-3)}.pkg-move-btn{color:var(--c-text-dimmer);transition:color var(--tr-fast)}.pkg-move-btn:hover{color:var(--c-text-muted)}.pkg-move-btn:disabled{opacity:.3;cursor:not-allowed}.pkg-move-btn .icon{font-size:1.125rem}.pkg-status-select{padding:var(--sp-1) var(--sp-2);padding-right:28px;background:var(--c-input-bg-alt);border:1px solid var(--c-input-border-alt);border-radius:var(--r-sm);font-size:.75rem;color:var(--c-text-muted);outline:none}.pkg-status-select:focus{border-color:var(--c-blue-border)}.pkg-name-input{flex:1;padding:var(--sp-1) var(--sp-2);background:var(--c-input-bg-alt);border:1px solid var(--c-input-border-alt);border-radius:var(--r-sm);font-size:.875rem;color:var(--c-text);outline:none;transition:border-color var(--tr-fast)}.pkg-name-input::placeholder{color:var(--c-text-dimmer)}.pkg-name-input:focus{border-color:var(--c-blue-border)}.pkg-delete-btn{color:var(--c-text-dimmer);transition:color var(--tr-fast)}.pkg-delete-btn:hover{color:var(--c-red-light)}.pkg-delete-btn .icon{font-size:1rem}.pkg-desc-input{width:100%;padding:var(--sp-1) var(--sp-2);background:var(--c-input-bg-alt);border:1px solid var(--c-input-border-alt);border-radius:var(--r-sm);font-size:.875rem;color:var(--c-text);outline:none;margin-bottom:var(--sp-3);transition:border-color var(--tr-fast)}.pkg-desc-input::placeholder{color:var(--c-text-dimmer)}.pkg-desc-input:focus{border-color:var(--c-blue-border)}.ver-columns-header{display:flex;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-2);font-size:.75rem;color:var(--c-text-dim);text-transform:uppercase;letter-spacing:.05em}.ver-col-spacer{width:26px;flex-shrink:0}.ver-col-version{width:5rem;flex-shrink:0}.ver-col-url{flex:1}.ver-col-hint{font-size:.625rem;color:var(--c-text-dimmer);font-style:italic;text-transform:none;letter-spacing:normal;margin-left:auto}.pkg-versions{display:flex;flex-direction:column;gap:var(--sp-2)}.editor-version-row{display:flex;align-items:center;gap:var(--sp-2)}.editor-version-row.is-new .ver-version-input{border-color:var(--c-emerald-border)}.ver-move-btn{color:var(--c-text-dimmer);transition:color var(--tr-fast)}.ver-move-btn:hover{color:var(--c-text-muted)}.ver-move-btn:disabled{opacity:.3;cursor:not-allowed}.ver-move-btn .icon{font-size:.875rem}.ver-version-input{width:5rem;padding:var(--sp-1) var(--sp-2);background:var(--c-input-bg-alt);border:1px solid var(--c-input-border-alt);border-radius:var(--r-sm);font-size:.75rem;color:var(--c-text);font-family:var(--font-mono);outline:none;transition:border-color var(--tr-fast)}.ver-version-input::placeholder{color:var(--c-text-dimmer)}.ver-version-input:focus{border-color:var(--c-blue-border)}.ver-latest-badge{font-size:10px;color:var(--c-emerald-light);background:var(--c-emerald-bg);padding:2px 6px;border-radius:var(--r-sm);border:1px solid var(--c-emerald-border);white-space:nowrap}.ver-primary-badge{font-size:10px;color:var(--c-amber-light);background:var(--c-amber-bg);padding:2px 6px;border-radius:var(--r-sm);border:1px solid var(--c-amber-border);white-space:nowrap}.ver-delete-btn{color:var(--c-text-dimmer);transition:color var(--tr-fast)}.ver-delete-btn:hover{color:var(--c-red-light)}.ver-delete-btn .icon{font-size:.875rem}.status-reason-required{color:var(--c-red-light)}.status-feedback{font-size:.875rem}.status-feedback.is-saving{color:var(--c-text-dim)}.status-feedback.is-saved{color:var(--c-emerald-light)}.status-feedback.is-error{color:var(--c-red-light)}.editor-preview{display:none}@media (min-width: 1280px){.editor-preview{display:block;width:20rem;flex-shrink:0;position:sticky;top:4rem}}.editor-preview-title{color:var(--c-text-bright);font-weight:600;font-size:.875rem;margin-bottom:var(--sp-3)}.field-error{border-color:var(--c-red-border-strong)!important}.field-error:focus{border-color:var(--c-red-border-focus)!important}.field-changed{border-color:var(--c-amber-glow)!important}.editor-tags-container.field-changed{border:1px solid var(--c-amber-glow);border-radius:var(--r-md);padding:var(--sp-1-5);margin:calc(-1 * var(--sp-1-5))}.auth-gate{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5rem 0;text-align:center}.auth-gate .icon{font-size:2.25rem;color:var(--c-text-dimmer);margin-bottom:var(--sp-4)}.auth-gate .icon.is-error{color:var(--c-red)}.auth-gate p{color:var(--c-text-muted);margin-bottom:var(--sp-4)}.editor-post-body{min-height:200px}.draft-status-badge{padding:2px 8px;border-radius:var(--r-full);font-size:10px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;display:inline-flex;align-items:center;gap:4px;margin-bottom:var(--sp-2)}.draft-status-badge .icon{font-size:12px}.draft-status-badge.is-pending-review{background:var(--c-amber-bg2);color:var(--c-amber-light)}.draft-status-badge.is-rejected{background:var(--c-red-bg);color:var(--c-red-light)}.draft-review-note{font-size:.75rem;color:var(--c-text-muted);margin-bottom:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--c-red-bg);border-radius:var(--r-md);line-height:1.4}@keyframes banner-enter{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.editor-review-banner{padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);margin-bottom:var(--sp-4);font-size:.875rem;display:flex;align-items:flex-start;gap:var(--sp-3);line-height:1.5;animation:banner-enter .25s ease-out}.editor-review-banner .icon{font-size:1.25rem;flex-shrink:0;margin-top:1px}.editor-review-banner.is-pending-review{background:var(--c-amber-bg);border:1px solid var(--c-amber-border);color:var(--c-amber-light)}.editor-review-banner.is-rejected{background:var(--c-red-bg);border:1px solid var(--c-red-border);color:var(--c-red-lighter)}.btn-emerald{display:inline-flex;align-items:center;gap:var(--sp-1-5);padding:var(--sp-1-5) var(--sp-4);background:var(--c-emerald-bg);color:var(--c-emerald-light);font-size:.875rem;border-radius:var(--r-lg);border:1px solid var(--c-emerald-border);transition:background var(--tr-fast)}.btn-emerald:hover:not(:disabled){background:var(--c-emerald-bg-strong)}.btn-emerald .icon{font-size:1rem}.btn-primary:disabled,.btn-secondary:disabled,.btn-danger:disabled,.btn-amber:disabled,.btn-emerald:disabled{opacity:.5;cursor:not-allowed}.thumb-upload-area{max-width:16rem;border:1px dashed var(--c-input-border-alt);border-radius:var(--r-lg);transition:border-color var(--tr-fast);overflow:hidden}.thumb-upload-area:has(.thumb-upload-empty:not(.hidden)){cursor:pointer}.thumb-upload-area:hover{border-color:var(--c-blue-border)}.thumb-upload-empty{display:flex;flex-direction:column;align-items:center;aspect-ratio:4 / 3;justify-content:center;padding:var(--sp-4);color:var(--c-text-dimmer)}.thumb-upload-empty .icon{font-size:1.5rem;margin-bottom:var(--sp-2)}.thumb-upload-label{font-size:.875rem;color:var(--c-text-muted)}.thumb-upload-hint{font-size:.75rem}.thumb-upload-filled{position:relative;background:var(--c-bg-alt2)}.thumb-upload-img{height:11rem;width:100%;object-fit:contain;display:block}.thumb-upload-overlay{position:absolute;inset:0;background:var(--c-overlay);display:flex;align-items:center;justify-content:center;gap:var(--sp-3);opacity:0;transition:opacity var(--tr-fast)}.thumb-upload-filled:hover .thumb-upload-overlay{opacity:1}.thumb-replace-btn,.thumb-remove-btn{display:inline-flex;align-items:center;gap:var(--sp-1);padding:var(--sp-1-5) var(--sp-3);background:var(--c-overlay-btn);color:var(--c-text-bright);font-size:.75rem;border-radius:var(--r-md);transition:background var(--tr-fast)}.thumb-replace-btn:hover,.thumb-remove-btn:hover{background:var(--c-overlay-btn-hover)}.thumb-remove-btn{color:var(--c-red-lighter)}.thumb-upload-progress{padding:var(--sp-4) var(--sp-6)}.ver-file{flex:1;min-width:0}.ver-file-pick-btn{display:inline-flex;align-items:center;gap:var(--sp-1);padding:var(--sp-1) var(--sp-2);font-size:.75rem;color:var(--c-blue-light);background:var(--c-blue-bg);border:1px dashed var(--c-blue-border);border-radius:var(--r-sm);cursor:pointer;transition:background var(--tr-fast)}.ver-file-pick-btn:hover{background:var(--c-blue-bg-hover)}.ver-file-filled{display:flex;align-items:center;gap:var(--sp-1-5);padding:var(--sp-1) var(--sp-2);background:var(--c-input-bg-alt);border:1px solid var(--c-input-border-alt);border-radius:var(--r-sm);font-size:.75rem}.ver-file-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--c-text);font-family:var(--font-mono)}.ver-file-icon{color:var(--c-text-dimmer);font-size:.875rem}.ver-file-replace-btn{color:var(--c-text-dimmer);flex-shrink:0;transition:color var(--tr-fast)}.ver-file-replace-btn:hover{color:var(--c-blue-light)}.ver-file-progress{padding:var(--sp-1) var(--sp-2)}.upload-bar{height:3px;background:var(--c-input-bg-alt);border-radius:var(--r-full);overflow:hidden;margin-bottom:var(--sp-1)}.upload-bar-fill{height:100%;background:var(--c-blue-light);transition:width .2s ease;width:0%}.upload-status-text{font-size:.7rem;color:var(--c-text-dim)}.upload-status-text.is-error{color:var(--c-red-light)}.confirm-modal{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center}.confirm-backdrop{position:absolute;inset:0;background:var(--c-overlay)}.confirm-body{position:relative;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-xl);padding:var(--sp-6);max-width:24rem;width:100%;margin:0 var(--sp-4);box-shadow:0 25px 50px -12px var(--c-shadow-card)}.confirm-title{color:var(--c-text-bright);font-weight:600;margin-bottom:var(--sp-2)}.confirm-message{color:var(--c-text-muted);font-size:.875rem;margin-bottom:var(--sp-5)}.confirm-buttons{display:flex;justify-content:flex-end;gap:var(--sp-3)}.confirm-cancel-btn{padding:var(--sp-1-5) var(--sp-4);background:var(--c-bg-alt2);color:var(--c-text-muted);font-size:.875rem;border-radius:var(--r-lg);border:1px solid var(--c-btn-secondary-bg);transition:background var(--tr-fast)}.confirm-cancel-btn:hover{background:var(--c-btn-secondary-hover)}.confirm-ok-btn{padding:var(--sp-1-5) var(--sp-4);background:var(--c-red-dark);color:var(--c-text-bright);font-size:.875rem;font-weight:500;border-radius:var(--r-lg);transition:background var(--tr-fast)}.confirm-ok-btn:hover{background:var(--c-red-darker)}.tour-backdrop{position:fixed;inset:0;z-index:var(--z-tour-backdrop);cursor:pointer}.tour-spotlight{position:fixed;z-index:var(--z-tour);border-radius:var(--r-md);box-shadow:0 0 0 9999px var(--c-overlay-heavy);transition:top .3s ease,left .3s ease,width .3s ease,height .3s ease;pointer-events:none}.tour-tooltip{position:fixed;z-index:var(--z-tour-tooltip);max-width:340px;background:var(--c-surface);border:1px solid var(--c-blue-border);border-radius:var(--r-lg);box-shadow:0 0 30px var(--c-shadow-blue-tint),0 8px 32px var(--c-shadow-card);overflow:hidden;animation:tour-fade-in .2s ease both}.tour-tooltip.is-exiting{animation:tour-fade-out .15s ease both}.tour-progress{height:3px;background:var(--c-border-dim)}.tour-progress-fill{height:100%;background:var(--c-blue);transition:width .3s ease}.tour-body{padding:var(--sp-5)}.tour-title{font-family:var(--font-sans);font-size:1rem;font-weight:600;color:var(--c-text-bright);margin:0 0 var(--sp-2) 0}.tour-description{font-size:.875rem;color:var(--c-text-muted);line-height:1.5;margin:0}.tour-footer{display:flex;align-items:center;justify-content:space-between;padding:0 var(--sp-5) var(--sp-4) var(--sp-5)}.tour-step-counter{font-size:.75rem;color:var(--c-text-dim)}.tour-nav{display:flex;gap:var(--sp-2)}.tour-nav .btn-secondary,.tour-nav .btn-primary{padding:var(--sp-1-5) var(--sp-3);font-size:.8125rem}.tour-arrow{position:absolute;width:12px;height:12px;background:var(--c-surface);border:1px solid var(--c-blue-border);transform:rotate(45deg)}.tour-tooltip[data-placement=bottom] .tour-arrow{top:-7px;border-bottom:none;border-right:none}.tour-tooltip[data-placement=top] .tour-arrow{bottom:-7px;border-top:none;border-left:none}.tour-tooltip[data-placement=right] .tour-arrow{left:-7px;border-right:none;border-top:none}.tour-tooltip[data-placement=left] .tour-arrow{right:-7px;border-left:none;border-bottom:none}.tour-tooltip.is-center{top:50%!important;left:50%!important;transform:translate(-50%,-50%);animation:tour-scale-in .25s ease both}.tour-tooltip.is-center.is-exiting{animation:tour-fade-out .15s ease both}.tour-tooltip.is-center .tour-body{padding:var(--sp-6) var(--sp-8);text-align:center}.tour-tooltip.is-center .tour-title{font-size:1.125rem}.tour-guide-btn{position:relative}.tour-guide-btn.has-hint:after{content:"";position:absolute;inset:-3px;border-radius:var(--r-md);border:2px solid var(--c-blue);opacity:0;animation:tour-ring-once 2s ease forwards;pointer-events:none}@keyframes tour-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes tour-fade-out{0%{opacity:1}to{opacity:0}}@keyframes tour-scale-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes tour-ring-once{0%{opacity:0}20%{opacity:1}80%{opacity:1}to{opacity:0}}@media (max-width: 767px){.tour-tooltip:not(.is-center){inset:auto 8px 0!important;max-width:none;width:auto;border-radius:var(--r-lg) var(--r-lg) 0 0;animation:tour-slide-up .2s ease both}.tour-tooltip:not(.is-center).is-exiting{animation:tour-fade-out .15s ease both}.tour-tooltip:not(.is-center) .tour-arrow{display:none}@keyframes tour-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}}.admin-container{max-width:100rem;margin:0 auto}.admin-header{display:flex;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-6)}.admin-header .icon{font-size:1.5rem;color:var(--c-amber-light)}.admin-title{font-size:1.5rem;font-weight:700;color:var(--c-text-bright);letter-spacing:-.025em}.admin-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--sp-4);margin-bottom:2rem}@media (min-width: 768px){.admin-stats{grid-template-columns:repeat(4,1fr)}}.stat-card{background:var(--c-surface);border-radius:var(--r-xl);border:1px solid var(--c-border);padding:var(--sp-4);text-align:center}.stat-card.is-attention{border-color:var(--c-border);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-2)}.stat-value{font-size:1.875rem;font-weight:700;color:var(--c-text-bright)}.stat-card.is-attention .stat-value{color:var(--c-amber-light)}.stat-label{font-size:.75rem;color:var(--c-text-dim);text-transform:uppercase;letter-spacing:.05em;margin-top:var(--sp-1)}.validate-all-btn{display:inline-flex;align-items:center;gap:var(--sp-1-5);padding:var(--sp-1-5) var(--sp-3);font-size:.75rem;font-weight:500;background:color-mix(in srgb,var(--c-amber-dark) 90%,transparent);color:var(--c-text-bright);border-radius:var(--r-lg);transition:background var(--tr-fast)}.validate-all-btn:hover{background:var(--c-amber-dark)}.validate-all-btn .icon{font-size:.875rem;opacity:.8}.validate-all-btn:hover .icon{opacity:1}.validate-hint{font-size:10px;color:color-mix(in srgb,var(--c-amber) 50%,transparent);text-align:center;line-height:1.3}.admin-activity{display:grid;gap:var(--sp-6);margin-bottom:2rem}@media (min-width: 768px){.admin-activity{grid-template-columns:repeat(2,1fr)}}.activity-card{background:var(--c-surface);border-radius:var(--r-xl);border:1px solid var(--c-border);padding:var(--sp-5)}.activity-heading{color:var(--c-text-bright);font-weight:600;margin-bottom:var(--sp-3);display:flex;align-items:center;gap:var(--sp-2);font-size:.875rem}.activity-heading .icon{font-size:1.125rem}.activity-list{display:flex;flex-direction:column;gap:var(--sp-1)}.activity-row{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-1-5) var(--sp-2);border-radius:var(--r-lg);font-size:.875rem;transition:background var(--tr-fast)}.activity-row:hover{background:var(--c-input-bg)}.activity-row .flag-icon{color:var(--c-amber-light);font-size:.875rem;flex-shrink:0}.activity-row .mod-link{color:var(--c-text);transition:color var(--tr-fast);flex:1;min-width:6rem}.activity-row .mod-link:hover{color:var(--c-blue-light)}.activity-row .game-badge{font-size:.75rem;background:var(--c-bg-alt2);color:var(--c-text-muted);padding:2px 6px;border-radius:var(--r-sm);flex-shrink:0}@media (max-width: 639px){.activity-row .game-badge{display:none}}.activity-row .author-name{font-size:.75rem;color:var(--c-text-dim);flex-shrink:0;max-width:8rem}.activity-row .date-label{font-size:.75rem;color:var(--c-text-dimmer);flex-shrink:0}.activity-row .edit-link{font-size:.75rem;color:var(--c-blue-light);transition:color var(--tr-fast);flex-shrink:0}.activity-row .edit-link:hover{color:var(--c-blue-lighter)}.unlisted-section{background:var(--c-surface);border-radius:var(--r-xl);border:1px solid var(--c-border);padding:var(--sp-5);margin-bottom:2rem}.unlisted-heading{color:var(--c-text-bright);font-weight:600;margin-bottom:var(--sp-4);display:flex;align-items:center;gap:var(--sp-2);font-size:.875rem}.unlisted-heading .icon{color:var(--c-amber-light);font-size:1.125rem}.admin-table-wrap{background:var(--c-surface);border-radius:var(--r-xl);border:1px solid var(--c-border);padding:var(--sp-5);margin-bottom:2rem}.table-heading{color:var(--c-text-bright);font-weight:600;margin-bottom:var(--sp-4);display:flex;align-items:center;gap:var(--sp-2);font-size:.875rem}.table-heading .icon{color:var(--c-blue-light);font-size:1.125rem}.admin-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4)}.admin-search-wrap{position:relative;flex:1;min-width:200px;max-width:24rem}.admin-search-wrap .search-icon{position:absolute;left:var(--sp-2-5);top:50%;transform:translateY(-50%);color:var(--c-text-dimmer);font-size:.875rem;pointer-events:none}.admin-search-input{width:100%;padding:var(--sp-1-5) var(--sp-3) var(--sp-1-5) 2rem;background:var(--c-input-bg);border:1px solid var(--c-input-border);border-radius:var(--r-lg);font-size:.875rem;color:var(--c-text);outline:none;transition:border-color var(--tr-fast)}.admin-search-input::placeholder{color:var(--c-text-dimmer)}.admin-search-input:focus{border-color:var(--c-blue-border)}.attention-toggle{display:inline-flex;align-items:center;gap:var(--sp-2);cursor:pointer;font-size:.875rem}.attention-toggle-label{color:color-mix(in srgb,var(--c-amber-light) 80%,transparent);display:inline-flex;align-items:center;gap:var(--sp-1)}.attention-toggle-label .icon{font-size:.75rem}.admin-table{overflow-x:auto}.admin-table table{width:100%;font-size:.875rem;text-align:left}.admin-table thead tr{border-bottom:1px solid var(--c-border-dim)}.admin-table th{padding:var(--sp-2) var(--sp-3);font-size:.75rem;color:var(--c-text-dim);text-transform:uppercase;letter-spacing:.05em;font-weight:400}.admin-table td{padding:var(--sp-2) var(--sp-3)}.admin-table tbody tr{border-bottom:1px solid var(--c-border-faint)}.admin-table tbody tr:hover{background:var(--c-input-bg)}@media (max-width: 639px){.admin-table .col-sm{display:none}}@media (max-width: 767px){.admin-table .col-md{display:none}}@media (max-width: 1023px){.admin-table .col-lg{display:none}}.admin-table .text-right{text-align:right}.admin-table .mod-link{color:var(--c-text);transition:color var(--tr-fast)}.admin-table .mod-link:hover{color:var(--c-blue-light)}.admin-table .edit-link{color:var(--c-blue-light);font-size:.75rem;transition:color var(--tr-fast)}.admin-table .edit-link:hover{color:var(--c-blue-lighter)}.admin-sort-header{cursor:pointer;user-select:none;transition:color .15s}.admin-sort-header:hover{color:var(--c-text)}.admin-sort-indicator.is-asc,.admin-sort-indicator.is-desc{color:var(--c-blue-light);font-size:.75rem;margin-left:2px}.admin-pagination{display:flex;align-items:center;justify-content:space-between;margin-top:var(--sp-4);font-size:.875rem;color:var(--c-text-dim)}.admin-pagination-controls{display:flex;align-items:center;gap:var(--sp-2)}.admin-page-btn{padding:var(--sp-1) var(--sp-3);background:var(--c-bg-alt2);color:var(--c-text-muted);border-radius:var(--r-lg);font-size:.875rem;border:1px solid var(--c-btn-secondary-bg);transition:background var(--tr-fast)}.admin-page-btn:hover:not(:disabled){background:var(--c-btn-secondary-hover)}.admin-page-btn:disabled{opacity:.4;cursor:not-allowed}.admin-page-number{color:var(--c-text-muted)}.status-badge{padding:2px 6px;border-radius:var(--r-sm);font-size:11px;font-weight:500}.status-badge.is-removed{background:var(--c-red-bg);color:var(--c-red-light)}.status-badge.is-delisted{background:var(--c-amber-bg);color:var(--c-amber-light)}.author-overview{background:var(--c-surface);border-radius:var(--r-xl);border:1px solid var(--c-border);margin-bottom:2rem}.author-overview summary{padding:var(--sp-5);cursor:pointer;color:var(--c-text-bright);font-weight:600;font-size:.875rem;display:flex;align-items:center;gap:var(--sp-2);user-select:none;transition:color var(--tr-fast)}.author-overview summary:hover{color:var(--c-text)}.author-overview summary .icon{color:var(--c-blue-light);font-size:1.125rem}.details-arrow{color:var(--c-text-dim);font-size:1.125rem;transition:transform var(--tr-base)}details[open] .details-arrow{transform:rotate(90deg)}.author-overview-body{padding:0 var(--sp-5) var(--sp-5)}.author-search{width:100%;max-width:24rem;padding:var(--sp-1-5) var(--sp-3);background:var(--c-input-bg);border:1px solid var(--c-input-border);border-radius:var(--r-lg);font-size:.875rem;color:var(--c-text);outline:none;margin-bottom:var(--sp-3);transition:border-color var(--tr-fast)}.author-search::placeholder{color:var(--c-text-dimmer)}.author-search:focus{border-color:var(--c-blue-border)}.pending-reviews-section{background:var(--c-surface);border-radius:var(--r-xl);border:1px solid var(--c-border);padding:var(--sp-5);margin-bottom:2rem}.pending-reviews-heading{color:var(--c-text-bright);font-weight:600;margin-bottom:var(--sp-4);display:flex;align-items:center;gap:var(--sp-2);font-size:.875rem}.pending-reviews-heading .icon{color:var(--c-amber-light);font-size:1.125rem}.pending-reviews-heading .count{background:var(--c-amber-bg2);color:var(--c-amber-light);font-size:11px;font-weight:600;padding:1px 8px;border-radius:var(--r-full);min-width:1.5rem;text-align:center}.admin-pending-list{display:grid;grid-template-columns:1fr;gap:var(--sp-3)}@media (min-width: 768px){.admin-pending-list{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1280px){.admin-pending-list{grid-template-columns:repeat(3,1fr)}}@keyframes card-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.pending-review-card{background:var(--c-input-bg-dim);border-radius:var(--r-lg);border:1px solid var(--c-border-faint);padding:var(--sp-4);transition:border-color var(--tr-fast),background var(--tr-fast);animation:card-enter .2s ease-out both}.pending-review-card:hover{background:var(--c-input-bg);border-color:var(--c-btn-secondary-bg)}.review-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-3);margin-bottom:var(--sp-2)}.review-card-info{flex:1;min-width:0}.review-card-name{color:var(--c-text-bright);font-weight:600;font-size:.875rem;margin-bottom:var(--sp-1)}.review-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);font-size:.75rem}.review-card-game{background:var(--c-bg-alt2);color:var(--c-text-muted);padding:1px 8px;border-radius:var(--r-full);font-size:11px}.review-card-author{color:var(--c-text-dim)}.review-card-date{color:var(--c-text-dimmer)}.review-card-meta>span+span:before{content:"·";margin-right:var(--sp-2);color:var(--c-text-faint)}.review-card-meta>.review-card-game+span:before{content:none}.review-card-view-link{color:var(--c-blue-light);font-size:.75rem;font-weight:500;display:inline-flex;align-items:center;gap:var(--sp-1);transition:color var(--tr-fast);flex-shrink:0;white-space:nowrap}.review-card-view-link:hover{color:var(--c-blue-lighter)}.review-card-view-link .icon{font-size:.875rem}.review-card-description{font-size:.8125rem;color:var(--c-text-muted);margin-bottom:var(--sp-3);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5}.review-card-packages{font-size:.75rem;color:var(--c-text-dim);margin-bottom:var(--sp-3);font-family:var(--font-mono);letter-spacing:-.01em}.review-card-actions{display:flex;gap:var(--sp-2);padding-top:var(--sp-3);border-top:1px solid var(--c-border-faint)}.review-reject-form{margin-top:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-2);animation:card-enter .15s ease-out}.review-reject-form .form-textarea{font-size:.8125rem}.review-reject-actions{display:flex;gap:var(--sp-2)}.admin-loading{display:flex;align-items:center;justify-content:center;padding:var(--sp-6) 0;color:var(--c-text-dim);font-size:.875rem}.admin-loading .icon{font-size:1.25rem;margin-right:var(--sp-2)}.admin-empty{color:var(--c-text-dim);font-size:.875rem;padding:var(--sp-6) 0;text-align:center}.article-list-item{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-3) var(--sp-4);background:var(--c-bg-alt);border:1px solid var(--c-border);border-radius:var(--r-lg);margin-bottom:var(--sp-2);text-decoration:none;color:inherit;transition:border-color var(--tr-fast),background var(--tr-fast)}.article-list-item:hover{border-color:var(--c-blue);background:var(--c-bg-alt2)}.article-list-item-content{display:flex;flex-direction:column;gap:var(--sp-1);min-width:0}.article-list-title{font-size:1rem;font-weight:600;color:var(--c-text-bright);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.article-list-date{font-size:.8125rem;color:var(--c-text-muted)}.article-list-arrow{color:var(--c-text-dim);font-size:1.25rem;flex-shrink:0}@media (min-width: 1280px){.detail-mode .article-detail-inner{flex:1;min-height:0;overflow-y:auto;padding-right:var(--sp-3);max-width:calc(100% - 24rem - var(--sp-6))}}.article-back-link{display:inline-flex;align-items:center;gap:var(--sp-1);color:var(--c-text-muted);font-size:.875rem;margin-bottom:var(--sp-4);text-decoration:none;transition:color var(--tr-fast)}.article-back-link:hover{color:var(--c-text-bright)}.article-detail-title{font-size:1.75rem;font-weight:700;color:var(--c-text-bright);margin-bottom:var(--sp-2);line-height:1.3}.article-detail-meta{display:flex;gap:var(--sp-3);font-size:.8125rem;color:var(--c-text-muted);margin-bottom:var(--sp-6);padding-bottom:var(--sp-4);border-bottom:1px solid var(--c-border)}.article-detail-body{margin-top:var(--sp-4)}.article-content{color:var(--c-content-body);line-height:1.7;overflow-wrap:break-word}.article-content a{color:var(--c-blue-light);text-decoration:underline;text-decoration-color:var(--c-blue-border);text-underline-offset:2px;transition:color .15s,text-decoration-color .15s}.article-content a:hover{color:var(--c-blue-lighter);text-decoration-color:var(--c-blue-lighter)}.article-content img{max-width:100%;height:auto;border-radius:6px}.article-content h1{font-size:1.5rem;font-weight:700;color:var(--c-text-heading);margin:1.5rem 0 .75rem;padding-bottom:.5rem;border-bottom:1px solid var(--c-bg-alt2)}.article-content h2{font-size:1.25rem;font-weight:600;color:var(--c-text-heading);margin:1.25rem 0 .5rem}.article-content h3{font-size:1.125rem;font-weight:600;color:var(--c-text-heading);margin:1rem 0 .5rem}.article-content p{margin-bottom:.75rem}.article-content blockquote{border-left:3px solid var(--c-text-faint);background:var(--c-bg-alt);padding:.75rem 1rem;margin:.75rem 0;border-radius:0 6px 6px 0}.article-content pre,.article-content code{background:var(--c-bg);font-family:var(--font-mono);border-radius:6px}.article-content pre{padding:.75rem 1rem;margin:.75rem 0;overflow-x:auto;border:1px solid var(--c-bg-alt2)}.article-content code{padding:.125rem .375rem;font-size:.875em}.article-content pre code{padding:0;background:none}.article-content ul{list-style-type:disc;padding-left:1.5rem;margin:.5rem 0}.article-content ol{list-style-type:decimal;padding-left:1.5rem;margin:.5rem 0}.article-content li{margin:.25rem 0}.article-content hr{border-color:var(--c-bg-alt2);margin:1.5rem 0}.article-content table{border-collapse:collapse;width:100%;margin:.5rem 0}.article-content th,.article-content td{border:1px solid var(--c-bg-alt2);padding:.375rem .75rem;text-align:left}.article-content th{background:var(--c-bg-alt);font-weight:600}.article-content strong{font-weight:600;color:var(--c-text)}.article-content em{color:var(--c-text-muted)}.editor-article{background:var(--c-bg-alt);border:1px solid var(--c-border);border-radius:var(--r-lg);margin-bottom:var(--sp-2);overflow:hidden}.editor-article-header{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--c-bg-alt2);border-bottom:1px solid var(--c-border)}.editor-article-title-label{flex:1;font-weight:500;color:var(--c-text-bright);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.editor-article-body{padding:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-3)}.article-delete-btn{color:var(--c-text-dim);padding:var(--sp-1);border-radius:var(--r-md);transition:color var(--tr-fast),background var(--tr-fast)}.article-delete-btn:hover{color:var(--c-red-light);background:var(--c-red-bg)}.editor-article .form-input.is-invalid,.editor-article .form-textarea.is-invalid{border-color:var(--c-red-border)}.editor-article .form-input.is-invalid:focus,.editor-article .form-textarea.is-invalid:focus{border-color:var(--c-red-light)}.issues-filter-bar{display:flex;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-4);flex-wrap:wrap}.issues-filter-pills{display:flex;gap:var(--sp-1);flex-wrap:wrap}.issue-filter-pill{font-size:.8125rem;padding:var(--sp-1) var(--sp-3);border-radius:var(--r-full);background:var(--c-input-bg-dim);color:var(--c-text-muted);border:1px solid var(--c-border);cursor:pointer;transition:background var(--tr-fast),color var(--tr-fast),border-color var(--tr-fast)}.issue-filter-pill:hover{background:var(--c-input-bg);color:var(--c-text);border-color:var(--c-border-hover)}.issue-filter-pill.is-active{background:var(--c-blue-bg);color:var(--c-blue-light);border-color:var(--c-blue-border)}.issues-report-btn{margin-left:auto;font-size:.8125rem;padding:var(--sp-1-5) var(--sp-3);border-radius:var(--r-md);background:var(--c-blue);color:var(--c-text-white);font-weight:500;display:inline-flex;align-items:center;gap:var(--sp-1);transition:background var(--tr-fast)}.issues-report-btn:hover{background:var(--c-blue-dark)}.issues-report-btn .icon{font-size:1rem}.issue-status-badge{font-size:11px;padding:2px 10px;border-radius:var(--r-full);font-weight:600;letter-spacing:.05em;text-transform:capitalize;white-space:nowrap}.issue-status-badge.is-open{background:var(--c-red-bg);color:var(--c-red-light);border:1px solid var(--c-red-border)}.issue-status-badge.is-acknowledged{background:var(--c-amber-bg);color:var(--c-amber-light);border:1px solid var(--c-amber-border)}.issue-status-badge.is-in_progress{background:var(--c-blue-bg);color:var(--c-blue-light);border:1px solid var(--c-blue-border)}.issue-status-badge.is-closed{background:var(--c-emerald-bg);color:var(--c-emerald-light);border:1px solid var(--c-emerald-border)}.issue-list-item{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-3) var(--sp-4);background:var(--c-bg-alt);border:1px solid var(--c-border);border-radius:var(--r-lg);margin-bottom:var(--sp-2);cursor:pointer;transition:border-color var(--tr-fast),background var(--tr-fast)}.issue-list-item:hover{border-color:var(--c-blue);background:var(--c-bg-alt2)}.issue-list-item-content{display:flex;flex-direction:column;gap:var(--sp-1);min-width:0}.issue-list-item-header{display:flex;align-items:center;gap:var(--sp-2)}.issue-list-title{font-size:1rem;font-weight:600;color:var(--c-text-bright);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.issue-list-meta{display:flex;align-items:center;gap:var(--sp-1);font-size:.8125rem;color:var(--c-text-muted)}.issue-list-dot{color:var(--c-text-dim)}.issue-list-arrow{color:var(--c-text-dim);font-size:1.25rem;flex-shrink:0}.issue-detail-inner{max-width:48rem}.issue-back-btn,.issue-create-back-btn{display:inline-flex;align-items:center;gap:var(--sp-1);color:var(--c-text-muted);font-size:.875rem;margin-bottom:var(--sp-4);background:none;border:none;cursor:pointer;padding:0;transition:color var(--tr-fast)}.issue-back-btn:hover,.issue-create-back-btn:hover{color:var(--c-text-bright)}.issue-detail-header{display:flex;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-2)}.issue-detail-title{font-size:1.5rem;font-weight:700;color:var(--c-text-bright);line-height:1.3}.issue-detail-meta{display:flex;gap:var(--sp-2);font-size:.8125rem;color:var(--c-text-muted);margin-bottom:var(--sp-4);padding-bottom:var(--sp-3);border-bottom:1px solid var(--c-border)}.issue-detail-author{font-weight:500}.issue-detail-description{color:var(--c-content-body);line-height:1.7;margin-bottom:var(--sp-6);padding-bottom:var(--sp-4);border-bottom:1px solid var(--c-border)}.issue-detail-actions{display:flex;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-6);padding-bottom:var(--sp-4);border-bottom:1px solid var(--c-border);flex-wrap:wrap}.issue-status-controls{display:flex;align-items:center;gap:var(--sp-2)}.issue-status-select{width:auto;font-size:.8125rem;padding:var(--sp-1-5) var(--sp-3)}.issue-status-save-btn{font-size:.8125rem;padding:var(--sp-1-5) var(--sp-3)}.issue-delete-btn{margin-left:auto;font-size:.8125rem;padding:var(--sp-1-5) var(--sp-3)}.issue-comments-heading{font-size:1.125rem;font-weight:600;color:var(--c-text-bright);margin-bottom:var(--sp-3)}.issue-comment{background:var(--c-bg-alt);border:1px solid var(--c-border);border-radius:var(--r-lg);padding:var(--sp-3) var(--sp-4);margin-bottom:var(--sp-2)}.issue-comment-header{display:flex;align-items:center;gap:var(--sp-2);font-size:.8125rem;margin-bottom:var(--sp-2)}.issue-comment-author{font-weight:600;color:var(--c-text-bright)}.issue-comment-dot{color:var(--c-text-dim)}.issue-comment-date{color:var(--c-text-muted)}.issue-comment-actions{margin-left:auto;display:flex;gap:var(--sp-1)}.issue-comment-actions button{color:var(--c-text-dim);padding:var(--sp-1);border-radius:var(--r-md);transition:color var(--tr-fast),background var(--tr-fast);background:none;border:none;cursor:pointer}.issue-comment-edit-btn:hover{color:var(--c-blue-light);background:var(--c-blue-bg)}.issue-comment-delete-btn:hover{color:var(--c-red-light);background:var(--c-red-bg)}.issue-comment-body{color:var(--c-content-body);line-height:1.6}.issue-comment-edit{margin-top:var(--sp-2)}.issue-comment-edit-actions{display:flex;gap:var(--sp-2);margin-top:var(--sp-2);justify-content:flex-end}.issue-comment-edit-actions button{font-size:.8125rem;padding:var(--sp-1) var(--sp-3)}.issue-add-comment{margin-top:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-2)}.issue-comment-input{resize:vertical}.issue-comment-submit{align-self:flex-end;font-size:.8125rem;padding:var(--sp-1-5) var(--sp-4)}.issue-create-form{max-width:48rem}.issue-create-heading{font-size:1.5rem;font-weight:700;color:var(--c-text-bright);margin-bottom:var(--sp-4)}.issue-form-label{display:flex;align-items:center;justify-content:space-between;font-size:.875rem;font-weight:500;color:var(--c-text);margin-bottom:var(--sp-1);margin-top:var(--sp-3)}.form-char-count{font-weight:400;font-size:.75rem;color:var(--c-text-dim)}.issue-title-input{width:100%}.issue-desc-input{width:100%;resize:vertical}.issue-create-error{margin-top:var(--sp-2)}.issue-create-actions{display:flex;gap:var(--sp-2);margin-top:var(--sp-4);justify-content:flex-end}.issue-create-actions button{font-size:.875rem;padding:var(--sp-2) var(--sp-5)}.issues-empty{text-align:center;color:var(--c-text-zinc);padding:var(--sp-8) var(--sp-4);font-size:.9375rem}@media (min-width: 1024px){.no-sidebar #games_outer_wrapper{display:none}.no-sidebar #header-logo{display:inline}}
