@font-face{font-family:Cinzel;src:url('Cinzel.ttf') format('truetype');font-display:swap}
:root{--ink:#29251f;--muted:#746653;--paper:#eee5d3;--surface:#faf4e7;--line:#cbbb9e;--iron:#24241f;--gold:#cda15b;--red:#792f2d;--shadow:0 8px 24px #3326180d}
*{box-sizing:border-box}body{margin:0;color:var(--ink);font:16px/1.65 'Microsoft YaHei','PingFang SC',system-ui,sans-serif;background:radial-gradient(ellipse at 70% 5%,#fff9ed88,transparent 60%),var(--paper)}a{color:inherit;text-decoration:none}a:hover{color:var(--red)}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}button:disabled{opacity:.65;cursor:wait}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #aa7335;outline-offset:4px}input:focus,textarea:focus,select:focus{outline:2px solid #a8763e;outline-offset:1px}h1,h2,h3,p{margin-top:0}h1{font-size:34px;line-height:1.3;letter-spacing:.02em;margin-bottom:14px}h2{font-size:22px;line-height:1.4;margin-bottom:20px}h3{font-size:18px;line-height:1.45;margin-bottom:10px}p{margin-bottom:14px}img{max-width:100%}.shell{max-width:1360px;margin:0 auto;padding:0 40px}.topbar{background:var(--iron);border-bottom:3px solid #896941;color:#e9dbc2}.topbar-inner{display:flex;align-items:center;gap:36px;min-height:96px}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand img{width:65px;height:72px;object-fit:contain}.brand b{font:600 27px/1.1 Cinzel,serif;letter-spacing:2px;color:#e9c78f}.brand small{display:block;font-size:12px;letter-spacing:1.3px;margin-top:5px;color:#c8b79b}.topbar nav{display:flex;gap:28px;align-self:stretch;align-items:center;flex:1;font-size:14px}.topbar nav a{position:relative;padding:32px 0;white-space:nowrap}.topbar nav [aria-current=page]{color:#f6d69f}.topbar nav [aria-current=page]:after{content:'';position:absolute;bottom:0;height:3px;left:0;right:0;background:var(--gold)}.topbar a:hover{color:#ffe4b5}.account-nav{display:flex;align-items:center;gap:18px;font-size:14px}.account-nav form{margin:0}.button{border:1px solid #a8916b;background:#efe5d1;box-shadow:inset 0 1px #fff7;display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:10px 19px;min-height:44px;font-size:14px;font-weight:600;color:#4b3d2a;border-radius:3px;white-space:normal}.button:hover{background:#e7d5b6;color:#382b1b}.button.primary{color:#fff3dc;background:linear-gradient(#873b34,#692827);border-color:#57201e;box-shadow:inset 0 1px #c6886044,0 2px 4px #361a181a}.button.primary:hover{background:#923e37}.button.small{padding:7px 12px;min-height:38px}.topbar .button{background:transparent;color:#edc994;border-color:#8e7451}.button.danger{color:#822c26;background:#f4ddd0;border-color:#bc8a6b}.button.full{width:100%;justify-content:space-between}.text-button{border:0;padding:4px 0;color:inherit;background:none;font-size:14px;text-decoration:underline;text-underline-offset:4px}.camp-banner{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:237px;padding:34px 40px;margin:32px 0;background:linear-gradient(90deg,#23251ff2 3%,#292820a6 48%,#30281922 80%),url('camp-painted.png') center 52%/cover;color:#f4e4c6;border:1px solid #856b45;border-radius:4px;box-shadow:0 5px 12px #45392322}.camp-banner h1{font-size:32px;text-shadow:0 2px 4px #0005}.camp-banner p{max-width:540px;font-size:15px;color:#e2ccaa;margin-bottom:0}.eyebrow{font:600 12px/1.4 Cinzel,serif;letter-spacing:2.5px;text-transform:uppercase;color:#8b6740;margin-bottom:12px}.camp-banner .eyebrow{color:#e7ba71;margin-bottom:12px}.banner-seal{background:#352a1fce;padding:18px 22px;align-self:flex-end;border:1px solid #a7885955;font:24px Cinzel,serif;white-space:nowrap}.banner-seal small{display:block;font:12px/1.7 system-ui;margin-top:5px;color:#ddc7a5}.catalog-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:32px}.categories{padding-top:5px}.categories>a{display:flex;justify-content:space-between;padding:12px 14px;border-bottom:1px solid #d4c7ae;color:#69583e;font-size:14px}.categories>a[aria-current=page]{background:#3b3429;color:#f3d9ab;border-left:3px solid #ab4d3d}.sidebar-note{margin-top:35px;padding:20px 12px;text-align:center;border-top:1px solid var(--line)}.sidebar-note img{height:92px;object-fit:contain;margin-bottom:10px}.sidebar-note p{font-size:13px;color:var(--muted)}.sidebar-note a{font-size:14px;color:var(--red)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.section-heading h2{margin:0}.section-heading>span{color:var(--muted);font-size:13px}.searchbar{display:flex;gap:10px;margin:20px 0 24px}.searchbar input{flex:1;min-width:0}.searchbar select{width:130px}input,select,textarea{width:100%;border:1px solid #bbab90;border-radius:3px;background:#fffaf0;color:var(--ink);padding:10px 12px;min-height:44px}textarea{resize:vertical}input:disabled{background:#e4dccb;color:#766b58}input[type=checkbox]{width:19px;min-height:19px;height:19px;accent-color:var(--red)}.mod-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.mod-card{border:1px solid var(--line);background:var(--surface);border-radius:4px;overflow:hidden;box-shadow:var(--shadow);transition:transform .15s,border-color .15s}.mod-card:hover{border-color:#9f7b45;transform:translateY(-2px)}.card-art{height:160px;background:radial-gradient(ellipse at center,#635340,#312d24);display:block;position:relative;overflow:hidden;border-bottom:1px solid var(--line)}.card-art img{height:100%;width:100%;object-fit:cover}.card-art .crest-fallback{object-fit:contain;padding:16px}.tag{display:inline-block;background:#e4d5ba;border:1px solid #c6b28b;border-radius:2px;padding:3px 8px;color:#675032;font-size:12px;line-height:1.6}.card-art .tag{position:absolute;bottom:12px;left:14px;background:#302920df;color:#efd7ad;border-color:#9b815333}.card-body{padding:18px}.card-heading{display:flex;gap:6px;justify-content:space-between;align-items:baseline}.card-heading h3{font-size:17px;margin-bottom:9px;overflow-wrap:anywhere}.card-body>p{font-size:14px;color:#6d6050;min-height:47px;margin-bottom:20px;overflow-wrap:anywhere}.version{font-size:12px;color:#8a6340;white-space:nowrap}.version.large{font:24px Cinzel,serif}.card-meta{display:flex;justify-content:space-between;border-top:1px solid #ddd0b6;padding-top:12px;font-size:12px;color:#7b6c57}.empty{min-height:340px;text-align:center;border:1px dashed #bcaa88;padding:36px 24px;background:#faf3e555;display:flex;flex-direction:column;align-items:center;justify-content:center}.empty>img{height:110px;object-fit:contain;margin-bottom:20px}.empty p{color:var(--muted);max-width:510px}.empty h3{font-size:21px}.footer{display:flex;justify-content:space-between;gap:20px;color:#8a7961;font-size:12px;margin-top:64px;padding-top:25px;padding-bottom:25px;border-top:1px solid var(--line)}.dot{padding:0 8px}.page-head{margin:38px 0 28px}.page-head p{color:var(--muted);max-width:750px}.page-head .eyebrow{color:#8c6139}.heading-actions,.detail-heading{display:flex;justify-content:space-between;gap:24px;align-items:center}.panel{padding:28px;background:var(--surface);border:1px solid var(--line);border-radius:4px;box-shadow:var(--shadow);margin-bottom:24px;min-width:0}.editor{max-width:850px}.editor.compact{max-width:500px;margin:0 auto 60px}.field{margin:0 0 23px}.field>label{font-size:14px;font-weight:600;display:block;margin-bottom:8px}.required{color:#963f32}.help{font-size:13px;color:var(--muted);margin-top:8px;line-height:1.7}.help ul{padding-left:18px;margin:8px 0}.field-errors,.errorlist{color:#922f27;font-size:14px;margin:8px 0 0;padding-left:0;list-style:none}.check-field{display:grid;grid-template-columns:20px 1fr;align-items:start;column-gap:12px}.check-field label{margin:0;line-height:1.6}.check-field .help{grid-column:2}.form-actions{display:flex;gap:25px;align-items:center}.form-actions>a{font-size:14px}.messages{margin-top:20px}.notice{padding:14px 18px;border:1px solid #baae8c;border-left:3px solid #786647;background:#ebe3d0;font-size:14px}.notice.success{background:#e4e9d8;border-color:#849270;color:#405130}.notice.error{background:#f0ded0;border-color:#b57762;color:#8a3326}.back{display:inline-block;font-size:14px;color:#775a35;margin-top:30px}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 335px;gap:28px}.detail-cover{width:100%;border:1px solid var(--line);border-radius:4px;margin-bottom:24px;max-height:480px;object-fit:cover}.prose{overflow-wrap:anywhere}.prose p{white-space:normal;line-height:1.95}.prose h2:not(:first-child){margin-top:30px}.install-panel{position:sticky;top:20px;padding:24px}.install-panel>p{font-size:13px;overflow-wrap:anywhere}.install-panel h2{font-size:21px}dl{margin:24px 0;display:grid;grid-template-columns:90px minmax(0,1fr);gap:12px 8px;font-size:13px}dt{color:var(--muted)}dd{margin:0;overflow-wrap:anywhere}.inspection{padding-top:20px;border-top:1px solid var(--line);font-size:12px;color:var(--muted);margin-top:24px}.checksum{font-size:12px;color:var(--muted);margin-top:15px}.checksum code{display:block;overflow-wrap:anywhere;margin-top:12px}.checksum summary{display:block}.history details>summary{display:flex;justify-content:space-between;gap:10px;padding:16px 0;border-top:1px solid var(--line);list-style:none}.history summary>span{font-size:13px;color:var(--muted)}.history details>.prose{padding:0 0 22px}.history .checksum summary{font-size:12px;padding:12px 0 0}.work-row{display:flex;justify-content:space-between;align-items:center;gap:20px}.work-row h2{margin:14px 0 8px}.work-row p{margin-bottom:12px}.row-actions{display:flex;gap:14px;flex-direction:column;align-items:flex-end;font-size:14px;flex-shrink:0}.row-actions.inline{flex-direction:row;align-items:center}.row-actions form{margin:0}.upload-panel>summary{display:flex;justify-content:space-between;font-size:20px}.upload-panel form{margin-top:28px}.release-row{padding:20px 0;border-top:1px solid var(--line)}.release-row:last-child{padding-bottom:0}.release-row h3{margin:0}.muted{color:var(--muted);font-size:14px}.manage-row{display:flex;gap:20px;justify-content:space-between;padding:24px 0;border-bottom:1px solid var(--line)}.manage-row:last-child{border:0}.moderation-form{display:flex;gap:8px;align-items:center}.moderation-form input{max-width:250px}.audit-list>div{display:grid;grid-template-columns:110px 100px 1fr;gap:14px;border-top:1px solid #ded0b6;padding:12px 0;font-size:13px;overflow-wrap:anywhere}.accounts-layout{display:grid;grid-template-columns:minmax(0,1fr) 410px;gap:26px;align-items:start}.account-row{display:flex;justify-content:space-between;gap:16px;padding:22px 0;border-top:1px solid var(--line)}.download-feature{display:grid;grid-template-columns:250px minmax(0,1fr);gap:45px;align-items:center;padding:42px}.download-feature img{width:100%;max-height:300px;object-fit:contain}.download-feature p{max-width:650px}.download-feature h3{margin-top:32px}.pagination{display:flex;gap:24px;justify-content:center;padding:24px;font-size:14px}.skip{position:absolute;top:-80px;left:10px;background:var(--surface);padding:8px;z-index:100}.skip:focus{top:5px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(max-width:1150px){.shell{padding-left:26px;padding-right:26px}.topbar-inner{gap:20px}.topbar nav{gap:18px}.brand small{font-size:11px}.brand img{width:52px}.account-nav{gap:12px}.mod-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.accounts-layout{grid-template-columns:minmax(0,1fr) 360px}.detail-layout{grid-template-columns:minmax(0,1fr) 300px}}
@media(max-width:900px){.topbar-inner{flex-wrap:wrap;padding-top:12px;padding-bottom:0;gap:8px 20px}.topbar nav{order:3;flex-basis:100%;overflow:auto;gap:28px}.topbar nav a{padding:12px 0}.account-nav{margin-left:auto}.camp-banner{padding:28px}.banner-seal{display:none}.catalog-layout{grid-template-columns:160px minmax(0,1fr);gap:22px}.mod-grid{gap:14px}.accounts-layout{grid-template-columns:1fr}.accounts-layout>.editor{max-width:none}.detail-layout{grid-template-columns:1fr}.detail-layout>aside{grid-row:1}.install-panel{position:static}.install-panel dl{grid-template-columns:100px 1fr 100px 1fr}.download-feature{grid-template-columns:170px 1fr;gap:25px}.manage-row{flex-direction:column}.moderation-form{justify-content:flex-start}.work-row{align-items:flex-start}.footer{flex-wrap:wrap}.audit-list>div{grid-template-columns:100px 90px 1fr}}
@media(max-width:640px){.shell{padding-left:18px;padding-right:18px}.brand small{font-size:10px}.brand b{font-size:24px}.brand img{width:45px;height:58px}.account-nav{font-size:12px;gap:10px}.topbar nav{font-size:13px;gap:25px}.camp-banner{margin:22px 0;padding:25px 20px;min-height:205px}.camp-banner h1{font-size:26px}.camp-banner p{font-size:14px}.catalog-layout{display:block}.categories{display:flex;flex-wrap:nowrap;gap:8px;overflow:auto;padding:0 0 16px;margin-bottom:8px}.categories .eyebrow,.sidebar-note{display:none}.categories>a{flex-shrink:0;border:1px solid var(--line);padding:7px 12px;font-size:13px}.categories>a>span+span{display:none}.categories>a[aria-current=page]{border-left-width:1px}.section-heading h2{font-size:21px}.searchbar{flex-wrap:wrap;margin-top:16px}.searchbar input{flex-basis:100%}.searchbar select{flex:1}.mod-grid{grid-template-columns:1fr}.card-art{height:185px}.empty{min-height:340px;padding:28px 16px}.empty h3{font-size:19px}.page-head{margin-top:28px}.page-head h1{font-size:28px}.heading-actions{align-items:flex-start;flex-direction:column}.panel{padding:22px 18px}.work-row{flex-direction:column}.row-actions{flex-direction:row;align-items:center;flex-wrap:wrap}.field{margin-bottom:20px}.field label{font-size:14px}.download-feature{grid-template-columns:1fr;padding:26px 20px}.download-feature>img{height:140px}.install-panel dl{grid-template-columns:90px 1fr}.audit-list>div{grid-template-columns:90px 1fr}.audit-list>div>span{grid-column:1/-1}.moderation-form{flex-wrap:wrap}.account-row{flex-wrap:wrap}.history summary{flex-wrap:wrap}.detail-heading{align-items:flex-start}.detail-heading .large{font-size:17px}.footer{margin-top:40px;font-size:11px}.upload-panel>.editor{padding:0}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* Upload and version management */
/* Keep the expanded navigation usable for signed-in administrators on tablets. */
@media(min-width:901px) and (max-width:1200px){.topbar-inner{flex-wrap:wrap;padding-top:12px;gap:8px 20px}.topbar nav{order:3;flex-basis:100%;overflow:auto;gap:28px}.topbar nav a{padding:12px 0}.account-nav{margin-left:auto}}
.field>.drop-zone{display:flex;font-weight:400}.drop-zone{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;padding:30px 20px;border:2px dashed #a28a64;border-radius:5px;background:#f8efdb;cursor:pointer;text-align:center;transition:background .15s,border-color .15s}.drop-zone:hover,.drop-zone:focus-within,.drop-zone.dragging{border-color:#873b34;background:#f2e2c7}.drop-zone.invalid{border-color:#a32925}.drop-zone>strong{font-size:19px}.drop-zone>span{color:var(--muted);font-size:13px}.drop-zone .drop-symbol{display:grid;place-items:center;width:44px;height:44px;border:1px solid #bba17a;border-radius:50%;font-size:27px;color:#835638}.drop-zone input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.drop-zone .file-selection{font-weight:600;color:#5d4028;overflow-wrap:anywhere}.form-grid{display:grid;grid-template-columns:2fr 1fr;gap:20px}.quick-editor{max-width:900px}.advanced-options{margin:8px 0 24px;padding:0 0 18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.advanced-options>summary{padding:17px 0;font-weight:600}.advanced-options>summary>span{margin-left:10px;color:var(--muted);font-weight:400;font-size:13px}.advanced-options[open]>summary{margin-bottom:8px}.upload-progress{width:100%;height:10px;accent-color:var(--red);margin-top:18px}.version-filters{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.version-filters a{padding:7px 16px;border:1px solid var(--line);border-radius:3px}.version-filters a[aria-current=page]{background:#3b3429;color:#f3d9ab}.version-row{display:flex;justify-content:space-between;align-items:center;gap:20px}.version-row h3{margin-bottom:8px}.version-row p{margin:0}.download-feature .prose{font-size:14px}.download-feature .help,.checksum code{overflow-wrap:anywhere}.history h3 .tag{margin-left:8px;vertical-align:middle}
@media(max-width:640px){.form-grid{grid-template-columns:1fr;gap:0}.drop-zone{padding:24px 12px}.drop-zone>strong{font-size:17px}.advanced-options>summary>span{display:block;margin:5px 0 0}.version-row{align-items:flex-start;flex-direction:column}.version-row>.button{width:100%}.version-filters{gap:8px}.version-filters a{padding:7px 12px}}
