:root{color-scheme:dark;--bg:#101413;--panel:#1a211e;--text:#eceee5;--muted:#a5b0a6;--gold:#dfba74}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 system-ui,sans-serif}header{padding:24px 5%;border-bottom:1px solid #303b32;display:flex;justify-content:space-between;align-items:center}a{color:var(--gold);text-decoration:none}header>a{font-weight:800;letter-spacing:3px}header span{display:block;font-size:10px;color:var(--muted);letter-spacing:2px}nav{display:flex;gap:20px;align-items:center}button,input,select{font:inherit;border:1px solid #475248;border-radius:6px;padding:10px;background:#151b17;color:var(--text)}button{cursor:pointer}button:hover{border-color:var(--gold);color:var(--gold)}button:disabled{opacity:.5;cursor:wait}main{max-width:1400px;margin:auto;padding:60px 5%;display:grid;grid-template-columns:1fr 330px;gap:35px}.eyebrow{font-size:12px;letter-spacing:2px;color:var(--gold)}h1{font:normal clamp(40px,5vw,68px)/1.08 Georgia,serif;margin:18px 0}h1 em{color:var(--gold);font-weight:normal}h2{font-size:22px}.intro>p:not(.eyebrow),.history>p{color:var(--muted)}.badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.badges span{border:1px solid #394539;border-radius:30px;font-size:12px;padding:5px 12px}.account{background:var(--panel);padding:24px;border:1px solid #354237;border-radius:12px}label{display:block;margin:12px 0}label>input:not([type=checkbox]),label>select{display:block;width:100%;margin-top:5px}.primary{background:var(--gold);color:#151a14;font-weight:700;width:100%;border:0;margin-top:12px}.primary:hover{background:#efd39b;color:#151a14}#balance{font-size:54px;color:var(--gold)}#message,.catalog,.history{grid-column:1/-1}#message{margin:0;color:var(--gold)}.section-title{display:flex;align-items:center;justify-content:space-between}.filters{display:flex;gap:15px;margin:12px 0 25px}.filters input{flex:1;min-width:0}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.card{background:linear-gradient(145deg,#222d24,#161d18);border:1px solid #354237;border-radius:10px;padding:18px;text-align:left;display:flex;flex-direction:column;min-height:240px}.card img{height:100px;max-width:100%;object-fit:contain;image-rendering:auto;margin:auto}.card h3{font-size:15px;color:var(--text);margin:16px 0 4px}.card small{color:var(--muted)}.card strong{color:var(--gold);margin-top:auto;padding-top:14px}.history{border-top:1px solid #354237;padding-top:20px}.order{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #29332b}.order small{color:var(--muted)}dialog{background:var(--panel);color:var(--text);border:1px solid #65715b;border-radius:12px;width:min(560px,95vw);max-height:90vh;padding:25px}dialog::backdrop{background:#000b}.close{float:right;font-size:22px;padding:0 10px}.delivery{color:var(--muted);font-size:14px}#purchase-message{color:var(--gold)}footer{text-align:center;color:var(--muted);padding:30px;font-size:12px}@media(max-width:700px){main{grid-template-columns:1fr;padding-top:30px}.account{grid-column:1}header{align-items:flex-start}nav{gap:8px;flex-wrap:wrap;font-size:12px}.filters{flex-direction:column}.order{flex-direction:column;gap:3px}}

[hidden]{display:none!important}

.card .item-classes{color:#dfba74;font-weight:600;margin-top:8px}.card .class-detail{font-size:11px;line-height:1.4;margin-top:5px}
/* Keep intrinsic content from expanding the page or the dialog. */
main{grid-template-columns:minmax(0,1fr) minmax(260px,330px);padding:40px clamp(16px,4vw,56px);gap:28px}
main>*{min-width:0}header{gap:20px;flex-wrap:wrap}nav{flex-wrap:wrap}input,select{max-width:100%;min-width:0}button,a,input,select{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr));align-items:stretch}
.card{min-width:0;min-height:0;padding:0;overflow:hidden;justify-content:flex-start;gap:0}
.card-media{width:100%;height:160px;flex:0 0 160px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px;background:#10171355;border-bottom:1px solid #354237}
.card .card-media img{width:100%;height:128px;max-width:160px;margin:0;object-fit:contain}
.missing-icon{font-size:42px;line-height:1.1;color:#7d8b7e}.card .missing-caption{font-size:11px;color:#a5b0a6;margin-top:8px}
.card-copy{padding:16px 16px 8px;min-width:0}.card h3{margin:0 0 6px;min-height:44px;line-height:1.45;overflow-wrap:anywhere}.card small{display:block}.card .item-classes{font-size:12px;line-height:1.5;overflow-wrap:anywhere}.card .card-price{display:block;margin-top:auto;padding:12px 16px 16px}.detail-classes{font-size:13px;color:var(--muted);overflow-wrap:anywhere}
.section-title{gap:12px;flex-wrap:wrap}.filters{flex-wrap:wrap}.filters select{flex:0 1 260px}.filters input{flex:1 1 220px}
dialog{width:min(620px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto;overscroll-behavior:contain;padding:24px}dialog h2{overflow-wrap:anywhere;padding-right:32px}dialog .close{position:sticky;top:0;background:#26312a;z-index:1;min-width:40px;min-height:40px}dialog select{width:100%;text-overflow:ellipsis}#options{min-width:0}#options label{overflow-wrap:anywhere}.order>*{min-width:0;overflow-wrap:anywhere}
@media(max-width:850px){main{grid-template-columns:minmax(0,1fr)}.account{max-width:100%;width:100%}.intro br{display:none}header{padding:20px 16px}}
@media(max-width:480px){main{padding:28px 14px;gap:22px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card-media{height:132px;flex-basis:132px;padding:12px}.card .card-media img{height:108px;max-width:100%}.card-copy{padding:12px 10px 6px}.card h3{font-size:13px;min-height:40px}.card .card-price{padding:10px;font-size:14px}.card .item-category{font-size:11px}.card .item-classes{font-size:11px}.filters{gap:10px}.filters input,.filters select{flex:1 1 100%;width:100%}h1{font-size:40px}.account{padding:18px}dialog{padding:16px}.order{flex-direction:column}}
@media(max-width:340px){.grid{grid-template-columns:minmax(0,1fr)}}
.item-preview{display:flex;align-items:center;justify-content:center;min-height:128px;background:#101713;border:1px solid #354237;border-radius:8px;margin:12px 0}.item-preview img{width:130px;height:130px;object-fit:contain}.item-preview span{color:var(--muted);font-size:13px}fieldset{min-width:0;border:1px solid #3b493e;border-radius:8px;padding:12px;margin:18px 0}legend{font-size:14px;font-weight:700;color:var(--gold);padding:0 6px}.option-check{display:flex;align-items:flex-start;gap:10px;background:#222c25;padding:9px;border-radius:4px;margin:5px 0;font-size:13px;line-height:1.5}.option-check input{flex:0 0 18px;width:18px;height:18px;margin:1px 0;accent-color:var(--gold)}fieldset small,fieldset p{color:var(--muted);font-size:12px}#purchase{min-width:0}
.price-summary{margin:20px 0;padding:16px;border:1px solid #55705a;border-radius:10px}.price-line{display:flex;justify-content:space-between;gap:16px;margin:6px 0}.price-summary>p{border-top:1px solid #55705a;padding-top:12px;font-size:1.2rem}.price-line strong{white-space:nowrap}
.shop-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.shop-tabs button[aria-pressed=true]{background:#c49a4b;color:#101712;border-color:#e8c777}.bundle-thumbnails{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;min-height:160px;gap:10px}.bundle-thumbnails img{object-fit:contain;width:60px;height:100px}.bundle-piece{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #85724a55}.bundle-piece img{width:40px;height:60px;object-fit:contain}.bundle-piece span{flex:1}.bundle-piece button{flex-shrink:0}#bundle-editor{max-width:700px;width:calc(100% - 32px);max-height:90vh;overflow:auto}#bundle-buy{width:100%;margin-top:14px}[hidden]{display:none!important}@media(max-width:480px){.bundle-piece{flex-wrap:wrap}.bundle-piece button{width:100%}.shop-tabs button{flex:1;min-width:125px}}
.set-card{padding:0!important;overflow:hidden;text-align:left;transition:transform .2s,border-color .2s}.set-card:hover{transform:translateY(-5px);border-color:#d7ad61}.set-portrait{height:300px;width:100%;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#e5dfcf,#b6ae9c);padding:18px;border-bottom:1px solid #b9904b66}.set-portrait img{height:100%!important;width:100%!important;max-width:100%!important;object-fit:contain;margin:0!important}.set-card h3{min-height:0;font-size:22px}.set-card .card-copy{width:100%;padding:18px}.set-card .card-copy>small:first-child{font-size:10px;letter-spacing:.15em;color:#d9b876}.set-card .card-price{width:100%;border-top:1px solid #b9904b44;color:#e4bd77}.set-placeholder{font-family:Georgia,serif;font-size:26px;color:#423d32}#bundle-cards{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:24px}#editor .item-preview img{height:210px;width:auto;max-width:100%}@media(max-width:520px){#bundle-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.set-portrait{height:220px;padding:10px}.set-card h3{font-size:18px}.set-card .card-copy{padding:12px}}
#bundle-catalog{grid-column:1/-1;width:100%;min-width:0}.set-card .card-copy p{margin-bottom:0}.set-card{min-height:0!important}
