@font-face{font-family:Avenir;src:url(/fonts/Avenir-Book.ttf);font-weight:400}@font-face{font-family:Avenir;src:url(/fonts/Avenir-Medium.ttf);font-weight:500}@font-face{font-family:Avenir;src:url(/fonts/Avenir-Heavy.ttf);font-weight:700}@font-face{font-family:Avenir;src:url(/fonts/Avenir-Black.ttf);font-weight:900}:root{--hy-flame:#f84d01;--hy-ember:#fd7803;--hy-sky:#79e0fa;--hy-flame-hot:#ff6a1f;--hy-ember-soft:#ffa23d;--hy-sky-soft:#b3edff;--grad-flame:linear-gradient(135deg, #f84d01 0%, #fd7803 100%);--grad-flame-hot:linear-gradient(135deg, #ff6a1f 0%, #ffa23d 100%);--grad-flame-wide:linear-gradient(100deg, #f84d01 0%, #fd7803 55%, #ffa23d 100%);--grad-sky:linear-gradient(135deg, #79e0fa 0%, #35b6dc 100%);--surface-0:#090807;--surface-1:#110f0e;--surface-2:#1a1715;--surface-3:#241f1c;--glass-1:#14110e8c;--glass-2:#1e1a16cc;--glass-3:#26201beb;--stroke-1:#ffffff13;--stroke-2:#ffffff24;--stroke-flame:#fd780373;--stroke-sky:#79e0fa6b;--text-1:#fff;--text-2:#ffffffbd;--text-3:#ffffff75;--text-4:#ffffff42;--ok:#52e08a;--warn:#ffbe30;--danger:#ff5340;--r-xs:6px;--r-sm:10px;--r-md:14px;--r-lg:20px;--r-xl:26px;--r-pill:999px;--shadow-2:0 12px 32px #00000075;--shadow-3:0 28px 70px #00000094;--glow-flame:0 6px 26px #f84d016b;--glow-flame-lg:0 10px 44px #f84d018c;--glow-sky:0 6px 22px #79e0fa4d;--ease:cubic-bezier(.22, .9, .32, 1);--ease-back:cubic-bezier(.34, 1.42, .48, 1);--dur-1:.15s;--dur-2:.28s;--dur-3:.45s}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{color:var(--text-1);background:radial-gradient(85% 70% at 50% 0%, #f84d0121 0%, transparent 62%), var(--surface-0);-webkit-font-smoothing:antialiased;font-family:Avenir,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{color:inherit;outline:none;font-family:inherit}button{cursor:pointer;background:0 0;border:none;padding:0}:focus-visible{outline:2px solid var(--hy-sky);outline-offset:3px;border-radius:var(--r-sm)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--r-pill);background:#ffffff1f padding-box content-box;border:3px solid #0000}::-webkit-scrollbar-thumb:hover{background:#fd78038c padding-box content-box}@keyframes hy-fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes hy-spin{to{transform:rotate(360deg)}}@keyframes hy-shake{10%,90%{transform:translate(-1px)}20%,80%{transform:translate(2px)}30%,50%,70%{transform:translate(-4px)}40%,60%{transform:translate(4px)}}.authShell{justify-content:center;align-items:center;min-height:100%;padding:32px 24px;display:flex}.authCard{border-radius:var(--r-xl);background:linear-gradient(180deg, #ffffff0e 0%, #fff0 42%), var(--glass-2);-webkit-backdrop-filter:blur(22px)saturate(140%);backdrop-filter:blur(22px)saturate(140%);border:1px solid var(--stroke-2);width:100%;max-width:420px;box-shadow:var(--shadow-3), inset 0 1px 0 #ffffff1a;animation:hy-fade-up var(--dur-3) var(--ease) both;padding:34px 34px 28px}.authHeader{text-align:center;flex-direction:column;align-items:center;gap:10px;margin-bottom:26px;display:flex}.authLogo{object-fit:contain;filter:drop-shadow(0 4px 18px #f84d0173);width:56px;height:56px}.authEyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--hy-ember);font-size:10px;font-weight:700}.authTitle{letter-spacing:-.02em;text-transform:uppercase;margin:0;font-size:21px;font-weight:900}.authSubtitle{color:var(--text-3);max-width:320px;font-size:12.5px;line-height:1.55}.field{flex-direction:column;gap:6px;margin-bottom:15px;display:flex}.fieldLabel{letter-spacing:.16em;text-transform:uppercase;color:var(--text-4);font-size:9.5px;font-weight:700}.fieldHint{color:var(--text-4);font-size:10.5px;line-height:1.4}.input{border-radius:var(--r-md);border:1px solid var(--stroke-1);width:100%;color:var(--text-1);transition:border-color var(--dur-2) var(--ease), box-shadow var(--dur-2) var(--ease);background:#00000052;padding:12px 15px;font-family:inherit;font-size:13px}.input::placeholder{color:var(--text-4)}.input:focus{border-color:var(--stroke-sky);box-shadow:0 0 0 3px #79e0fa1c}.input:disabled{opacity:.5;cursor:not-allowed}.input--code{text-align:center;letter-spacing:.38em;text-indent:.38em;font-variant-numeric:tabular-nums;padding:14px 15px;font-size:26px;font-weight:900}.btn{border-radius:var(--r-pill);letter-spacing:.09em;text-transform:uppercase;width:100%;transition:transform var(--dur-1) var(--ease), box-shadow var(--dur-2) var(--ease), background var(--dur-2) var(--ease), opacity var(--dur-2) var(--ease);justify-content:center;align-items:center;gap:9px;padding:13px 22px;font-size:12px;font-weight:700;display:inline-flex}.btn:active:not(:disabled){transform:translateY(1px)scale(.985)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn--flame{background:var(--grad-flame);box-shadow:var(--glow-flame), inset 0 1px 0 #ffffff47}.btn--flame:hover:not(:disabled){background:var(--grad-flame-hot);box-shadow:var(--glow-flame-lg);transform:translateY(-1px)}.btn--ghost{border:1px solid var(--stroke-1);color:var(--text-2);background:#ffffff0a}.btn--ghost:hover:not(:disabled){color:var(--text-1);background:#ffffff17}.btn--link{width:auto;color:var(--text-3);text-transform:none;letter-spacing:.02em;background:0 0;padding:8px 0;font-size:11.5px;font-weight:500}.btn--link:hover:not(:disabled){color:var(--hy-sky)}.authActions{flex-direction:column;align-items:center;gap:4px;margin-top:20px;display:flex}.formError{border-radius:var(--r-sm);color:var(--danger);background:#ff53401f;border:1px solid #ff534059;margin-bottom:15px;padding:10px 14px;font-size:11.5px;line-height:1.45;animation:.5s cubic-bezier(.36,.07,.19,.97) hy-shake}.qrBox{border-radius:var(--r-md);background:#fff;justify-content:center;margin-bottom:15px;padding:14px;display:flex}.qrBox img{width:200px;height:200px;display:block}.secretBox{border-radius:var(--r-sm);border:1px solid var(--stroke-1);letter-spacing:.12em;text-align:center;color:var(--hy-sky);word-break:break-all;background:#00000052;margin-bottom:15px;padding:10px 14px;font-size:12.5px;font-weight:700}.recoveryGrid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px;display:grid}.recoveryCode{border-radius:var(--r-xs);border:1px solid var(--stroke-1);letter-spacing:.02em;text-align:center;white-space:nowrap;font-variant-numeric:tabular-nums;background:#00000052;padding:9px 6px;font-size:11.5px;font-weight:700}.warningBox{border-radius:var(--r-sm);color:var(--warn);background:#ffbe301a;border:1px solid #ffbe3052;margin-bottom:16px;padding:12px 15px;font-size:11.5px;line-height:1.5}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:15px;height:15px;animation:.8s linear infinite hy-spin}.shell{flex-direction:column;min-height:100%;display:flex}.topbar{border-bottom:1px solid var(--stroke-1);background:var(--glass-1);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);justify-content:space-between;align-items:center;gap:16px;padding:16px 28px;display:flex}.brand{align-items:center;gap:12px;display:flex}.brandLogo{object-fit:contain;filter:drop-shadow(0 2px 8px #f84d0166);width:38px;height:38px}.brandText{flex-direction:column;gap:3px;line-height:1;display:flex}.brandName{letter-spacing:.04em;background:var(--grad-flame-wide);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:17px;font-weight:900}.brandTag{letter-spacing:.3em;text-transform:uppercase;color:var(--text-3);font-size:8.5px;font-weight:700}.topbarRight{align-items:center;gap:11px;display:flex}.userChip{border-radius:var(--r-pill);border:1px solid var(--stroke-1);background:#ffffff0d;padding:7px 15px;font-size:12px;font-weight:700}.btn--compact{width:auto;padding:9px 17px;font-size:10.5px}.content{flex:1;padding:32px 28px}.placeholder{border-radius:var(--r-xl);border:1px solid var(--stroke-1);background:#ffffff09;max-width:560px;padding:26px 28px}.placeholder h2{letter-spacing:-.01em;margin:0 0 10px;font-size:18px;font-weight:900}.placeholder p{color:var(--text-2);margin:0;font-size:13px;line-height:1.6}.nav{gap:4px;display:flex}.navItem{border-radius:var(--r-pill);color:var(--text-3);letter-spacing:.02em;cursor:pointer;transition:color var(--dur-2) var(--ease), background var(--dur-2) var(--ease);background:0 0;border:1px solid #0000;padding:8px 15px;font-size:12px;font-weight:700}.navItem:hover{color:var(--text-1);background:#ffffff0d}.navItem--active{color:var(--text-1);background:#f84d0124;border-color:#f84d014d}.page{max-width:1180px;margin:0 auto}.pageHeader{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.pageTitle{letter-spacing:-.02em;margin:0 0 5px;font-size:24px;font-weight:900}.pageSubtitle{color:var(--text-3);max-width:60ch;margin:0;font-size:12.5px}.loadingRow{color:var(--text-3);padding:30px;font-size:13px}.emptyState{text-align:center;border:1px dashed var(--stroke-1);border-radius:var(--r-xl);color:var(--text-3);padding:44px 28px}.emptyState p{margin:0 0 16px;font-size:13.5px}.emptyState .btn{width:auto;margin:0 auto}.articleGrid{flex-direction:column;gap:12px;display:flex}.articleCard{border-radius:var(--r-xl);border:1px solid var(--stroke-1);transition:border-color var(--dur-2) var(--ease), background var(--dur-2) var(--ease);background:#ffffff09;grid-template-columns:168px 1fr auto;align-items:center;gap:18px;padding:14px;display:grid}.articleCard:hover{background:#ffffff0d;border-color:#f84d014d}.articleThumb{aspect-ratio:21/9;border-radius:var(--r-md);border:1px solid var(--stroke-1);background:#00000059;width:168px;overflow:hidden}.articleThumbImg{object-fit:cover;width:100%;height:100%;display:block}.articleThumbEmpty,.imgFallback,.bannerEmpty{height:100%;color:var(--text-3);letter-spacing:.05em;text-transform:uppercase;justify-content:center;align-items:center;font-size:10.5px;display:flex}.imgSkeleton{background:linear-gradient(90deg,#ffffff08,#ffffff14,#ffffff08) 0 0/200% 100%;height:100%;min-height:40px;animation:1.4s linear infinite hy-shimmer}@keyframes hy-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.articleBody{min-width:0}.articleTop{align-items:center;gap:10px;margin-bottom:7px;display:flex}.badge{border-radius:var(--r-pill);letter-spacing:.1em;text-transform:uppercase;padding:3px 9px;font-size:9.5px;font-weight:800}.badge--published{color:#ffb184;background:#f84d012e;border:1px solid #f84d0159}.badge--draft{color:var(--text-3);border:1px solid var(--stroke-1);background:#ffffff12}.articleDate{color:var(--text-3);font-size:11px}.articleTitle{letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;margin:0 0 5px;font-size:16px;font-weight:800;overflow:hidden}.articleSummary{color:var(--text-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 6px;font-size:12.5px;line-height:1.5;display:-webkit-box;overflow:hidden}.articleSlug{color:var(--text-3);font-family:ui-monospace,monospace;font-size:11px}.articleActions{flex-direction:column;gap:6px;display:flex}.articleActions .btn{width:118px}.btn--danger{color:#ff9d92;background:#e24a3a1f;border:1px solid #e24a3a59}.btn--danger:hover:not(:disabled){background:#e24a3a38}.editorGrid{grid-template-columns:1fr 300px;align-items:start;gap:22px;display:grid}.editorMain{min-width:0}.editorSide{flex-direction:column;gap:12px;display:flex;position:sticky;top:20px}.sideCard{border-radius:var(--r-lg);border:1px solid var(--stroke-1);background:#ffffff09;flex-direction:column;gap:10px;padding:15px;display:flex}.sideLabel{letter-spacing:.16em;text-transform:uppercase;color:var(--text-3);font-size:9.5px;font-weight:800}.sideActions{gap:8px;display:flex}.sideActions .btn{flex:1}.sideHint{color:var(--text-3);margin:0;font-size:10.5px;line-height:1.5}.bannerBox{aspect-ratio:21/9;border-radius:var(--r-md);border:1px solid var(--stroke-1);background:#00000059;overflow:hidden}.bannerPreview{object-fit:cover;width:100%;height:100%;display:block}.blockList{flex-direction:column;gap:10px;margin:18px 0;display:flex}.blockRow{border-radius:var(--r-lg);border:1px solid var(--stroke-1);background:#ffffff08;overflow:hidden}.blockHandle{border-bottom:1px solid var(--stroke-1);background:#00000038;justify-content:space-between;align-items:center;padding:7px 12px;display:flex}.blockType{letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);font-size:9.5px;font-weight:800}.blockButtons{gap:3px;display:flex}.iconBtn{border-radius:var(--r-xs);width:24px;height:24px;color:var(--text-3);cursor:pointer;transition:all var(--dur-2) var(--ease);background:0 0;border:1px solid #0000;font-size:13px;line-height:1}.iconBtn:hover:not(:disabled){color:var(--text-1);background:#ffffff17}.iconBtn:disabled{opacity:.25;cursor:default}.iconBtn--danger:hover:not(:disabled){color:#ff9d92;background:#e24a3a33}.blockContent{padding:12px}.blockInline{align-items:center;gap:8px;display:flex}.blockInline .input{margin:0}.blockInline .select{flex:none;width:130px}.textarea{resize:vertical;min-height:62px;font-family:inherit;line-height:1.55}.input--small{padding:9px 12px;font-size:12.5px}.select{appearance:none;cursor:pointer}.listEditor{flex-direction:column;gap:8px;display:flex}.checkRow{color:var(--text-3);cursor:pointer;align-items:center;gap:7px;font-size:11.5px;display:flex}.imageBlockEditor{flex-direction:column;gap:8px;display:flex}.imageBlockPreview{border-radius:var(--r-md);max-width:100%;max-height:220px;display:block}.dividerPreview{background:var(--stroke-1);height:1px;margin:10px 0}.blockToolbar{flex-wrap:wrap;gap:7px;display:flex}.blockToolbar .btn{width:auto}@media (width<=900px){.editorGrid{grid-template-columns:1fr}.editorSide{position:static}.articleCard{grid-template-columns:1fr}.articleThumb{width:100%}.articleActions{flex-direction:row}.articleActions .btn{flex:1;width:auto}}input[type=checkbox]{accent-color:var(--hy-ember,#fd7803);cursor:pointer;width:15px;height:15px}.headerActions{align-items:center;gap:8px;display:flex}.versionChip{border-radius:var(--r-pill);border:1px solid var(--stroke-1);color:var(--text-3);background:#ffffff0d;padding:6px 13px;font-family:ui-monospace,monospace;font-size:11px;font-weight:700}.formOk{border-radius:var(--r-md);color:#a6ebfc;background:#79e0fa1a;border:1px solid #79e0fa4d;margin-bottom:16px;padding:11px 15px;font-size:12.5px}.problemList{margin:8px 0 0;padding-left:20px}.problemList li{margin-bottom:5px;line-height:1.5}.cardGrid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));align-items:start;gap:14px;display:grid}.card{border-radius:var(--r-xl);border:1px solid var(--stroke-1);background:#ffffff09;flex-direction:column;gap:13px;padding:18px;display:flex}.cardTitle{letter-spacing:.16em;text-transform:uppercase;color:var(--text-3);font-size:9.5px;font-weight:800}.fieldRow{gap:10px;display:flex}.fieldRow .field{flex:1;min-width:0}.moduleList{flex-direction:column;gap:9px;display:flex}.moduleRow{border-radius:var(--r-lg);border:1px solid var(--stroke-1);transition:border-color var(--dur-2) var(--ease);background:#ffffff09;justify-content:space-between;align-items:center;gap:16px;padding:13px 15px;display:flex}.moduleRow:hover{border-color:#f84d0147}.moduleRow--sub{background:#ffffff05}.submoduleWrap{margin-top:7px;padding-left:30px;position:relative}.submoduleWrap:before{content:"";border-left:1px solid var(--stroke-1);border-bottom:1px solid var(--stroke-1);border-bottom-left-radius:6px;width:12px;position:absolute;top:-7px;bottom:50%;left:14px}.moduleMain{flex:1;min-width:0}.moduleTop{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.typeChip{border-radius:var(--r-xs);letter-spacing:.07em;border:1px solid var(--stroke-1);color:var(--text-2);background:#ffffff12;padding:3px 9px;font-family:ui-monospace,monospace;font-size:9.5px;font-weight:800}.typeChip--Fabric,.typeChip--Forge,.typeChip--ForgeHosted,.typeChip--VersionManifest{color:#a6ebfc;background:#79e0fa21;border-color:#79e0fa4d}.moduleSize{color:var(--text-3);margin-left:auto;font-size:10.5px}.moduleName{margin:0 0 4px;font-size:14.5px;font-weight:800}.moduleIdentifier{color:var(--text-3);word-break:break-all;margin-bottom:3px;font-family:ui-monospace,monospace;font-size:11px;display:block}.moduleDestination{color:var(--text-4,#6b6560);word-break:break-all;font-family:ui-monospace,monospace;font-size:10.5px;display:block}.moduleActions{flex-shrink:0;align-items:center;gap:6px;display:flex}.moduleActions .btn{width:auto}.moduleForm{border-radius:var(--r-xl);background:#f84d010d;border:1px solid #f84d0140;flex-direction:column;gap:13px;margin-bottom:18px;padding:18px;display:flex}.moduleFormHead{justify-content:space-between;align-items:center;display:flex}.optionRow{flex-direction:column;gap:9px;display:flex}.formActions{justify-content:flex-end;gap:8px;display:flex}.formActions .btn{width:auto}.uploadBar{border-radius:var(--r-lg);border:1px solid var(--stroke-1);background:#ffffff0a;align-items:center;gap:13px;margin-bottom:16px;padding:12px 16px;display:flex}.uploadName{text-overflow:ellipsis;white-space:nowrap;max-width:300px;font-size:12px;font-weight:700;overflow:hidden}.uploadTrack{background:#0006;border-radius:3px;flex:1;height:6px;overflow:hidden}.uploadFill{background:var(--grad-flame-wide);height:100%;transition:width .2s var(--ease)}.uploadPercent{color:var(--text-2);text-align:right;width:42px;font-size:11.5px;font-weight:800}.unusedBox{border-radius:var(--r-lg);border:1px dashed var(--stroke-1);background:#ffffff06;flex-direction:column;gap:9px;margin-top:24px;padding:16px 18px;display:flex}.artifactChips{flex-wrap:wrap;gap:7px;display:flex}.artifactChip{border-radius:var(--r-pill);border:1px solid var(--stroke-1);color:var(--text-2);cursor:pointer;transition:all var(--dur-2) var(--ease);background:#ffffff0d;align-items:center;gap:8px;padding:7px 13px;font-size:11.5px;display:flex}.artifactChip:hover{color:var(--text-1);border-color:#f84d0166}.chipSize{color:var(--text-3);font-size:10px}@media (width<=760px){.fieldRow{flex-direction:column}.moduleRow{flex-direction:column;align-items:stretch}.moduleActions{justify-content:flex-end}}
