.store-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; margin:26px 0 50px; }
.store-card { overflow:hidden; min-width:0; transition:border-color .16s; }
.store-card:hover { border-color:var(--accent); }
.store-image { display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; background:#0c1c25; }
.store-image-empty { display:grid; place-items:center; font-size:46px; color:var(--accent); }
.store-card-copy { padding:24px; }
.store-card h2 { font-size:24px; margin:0 0 12px; overflow-wrap:anywhere; }
.store-card p { color:var(--muted); overflow-wrap:anywhere; }
.store-price { font-size:24px; color:var(--ink); }
.store-price del { color:var(--muted); font-size:16px; margin-right:8px; }
.store-price strong { color:var(--accent); }
.store-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin:18px 0; }
.store-actions .btn { margin:0; }
.store-breadcrumb { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin:10px 0 20px; }
.store-breadcrumb a { color:var(--accent); padding:6px 0; }
.store-breadcrumb a + a::before { content:'/'; color:var(--muted); margin-right:10px; }
.store-notice { padding:22px; border-inline-start:3px solid var(--copper,#e7b486); margin:24px 0; }
.store-notice h2 { font-size:20px; margin:0 0 10px; }
.store-notice p { margin:8px 0; }
.store-panel { padding:clamp(18px,3vw,32px); margin:24px 0; min-width:0; }
.store-panel h2, .store-panel code { overflow-wrap:anywhere; }
.store-panel h2 { font-size:24px; }
.store-panel-heading { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:14px; }
.store-product { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:32px; padding:clamp(18px,3vw,36px); margin:30px 0; }
.store-product .store-image { border-radius:10px; }
.store-product h2 { margin-top:0; }
.store-description { white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.8; }
.store-product ul { padding-left:20px; line-height:1.9; }
.store-order-line { display:flex; align-items:start; justify-content:space-between; flex-wrap:wrap; gap:14px; padding:16px 0; border-bottom:1px solid var(--line); }
.store-order-line small { display:block; color:var(--muted); margin-top:6px; }
.store-total { display:flex; justify-content:space-between; flex-wrap:wrap; gap:16px; font-size:22px; padding-top:18px; }
.store-cart-row { display:grid; grid-template-columns:minmax(0,1fr) 100px 100px auto; gap:18px; align-items:center; border-bottom:1px solid var(--line); padding:20px 0; }
.store-cart-row h3 { margin:0; overflow-wrap:anywhere; }
.store-cart-row p { font-size:13px; color:var(--muted); }
.store-cart-row input { width:100%; }
.store-admin-row { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:18px; padding:18px 0; border-bottom:1px solid var(--line); }
.store-admin-row > div { min-width:0; }
.store-admin-row small { display:block; color:var(--muted); margin:6px 0; }
.store-admin-row code { font-size:12px; }
.store-filters { display:grid; grid-template-columns:2fr repeat(3,minmax(100px,1fr)) auto; gap:12px; align-items:end; }
.store-filters label, .store-form-grid label { min-width:0; }
.store-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.store-editor-image { display:block; width:160px; height:90px; object-fit:cover; border-radius:8px; margin:10px 0; }
.store-skeleton { padding:40px; min-height:180px; border:1px solid var(--line); border-radius:12px; background:var(--panel); color:var(--muted); }
[data-store-editor] input[type=file] { max-width:100%; }
[data-store-editor] input:disabled { opacity:.6; }
.store-admin .tabs { max-width:100%; overflow-x:auto; }
@media(min-width:1050px) { body>header nav { gap:2px; } body>header nav a { font-size:12px; padding-inline:10px; } }
@media(max-width:1000px) { .store-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .store-filters { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:650px) {
 .store-grid, .store-product { grid-template-columns:minmax(0,1fr); }
 .store-cart-row { grid-template-columns:minmax(0,1fr) 90px; }
 .store-cart-row .btn { justify-self:end; }
 .store-form-grid { grid-template-columns:minmax(0,1fr); }
 .store-order-line strong { white-space:nowrap; }
}

#account-minecraft { scroll-margin-top:110px; }

/* Store storefront, scoped independently from the site and administration. */
.store-front { --store-accent:#4cb8ee; --store-button:#17649d; --store-line:#304552; margin:32px 0 60px; color:#edf4f7; }
.store-topbar { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:18px; padding:18px 22px; background:#142330; border:1px solid var(--store-line); border-radius:12px; margin-bottom:24px; }
.store-brand { display:inline-flex; gap:14px; align-items:center; font-size:clamp(22px,3vw,28px); font-weight:800; color:#fff; }
.store-brand>span { display:grid; place-items:center; width:44px; height:44px; border-radius:10px; background:var(--store-button); color:white; }
.store-front .btn.primary, .store-front .store-cart-button { background:var(--store-button); color:white; border-color:#3993c9; }
.store-front .btn.primary:hover, .store-front .store-cart-button:hover { background:#217caf; color:white; border-color:#70c7f1; }
.store-cart-button { display:inline-flex; align-items:center; gap:10px; min-width:150px; justify-content:center; }
[data-store-cart-count] { padding:1px 9px; background:#104973; border-radius:7px; font-variant-numeric:tabular-nums; }
.store-layout { display:grid; grid-template-columns:260px minmax(0,1fr); gap:24px; align-items:start; }
.store-sidebar { display:grid; gap:18px; min-width:0; }
.store-user, .store-menu, .store-supporters { background:#15232d; border:1px solid #304552; border-radius:8px; }
.store-user { display:flex; align-items:center; gap:14px; padding:18px; }
.store-user>img, .store-user-initial { width:56px; height:56px; flex:0 0 56px; border-radius:7px; image-rendering:pixelated; }
.store-user-initial { display:grid; place-items:center; font-size:25px; background:#292f36; }
.store-user>div { min-width:0; }
.store-user strong { overflow-wrap:anywhere; display:block; }
.store-user small { color:#b1c4d0; display:block; font-size:11px; margin:4px 0 8px; }
.store-account-link { color:#c5e9fa; font-size:12px; }
.store-menu { display:grid; padding:12px 0; }
.store-menu-link, .store-menu-category { display:block; padding:14px 22px; border-inline-start:3px solid transparent; color:#c7d8e2; font-weight:700; overflow-wrap:anywhere; }
.store-menu-category { font-size:13px; padding:10px 22px 10px 34px; font-weight:500; }
.store-menu a:hover { background:#1c3446; color:white; }
.store-menu a.selected { border-color:var(--store-accent); color:#76cbf5; background:#172e40; }
.store-supporters { padding:20px; }
.store-supporters h2 { font-size:16px; margin:0 0 4px; }
.store-supporters h2 span { color:var(--store-accent); margin-right:6px; }
.store-supporters>p { font-size:12px; color:#aec5d4; margin:8px 0 16px; }
.store-supporters ol { padding:0; margin:16px 0 0; list-style:none; counter-reset:supporters; display:grid; gap:16px; }
.store-supporters li { counter-increment:supporters; display:flex; align-items:center; gap:8px; font-size:13px; font-weight:700; min-width:0; }
.store-supporters li span { overflow-wrap:anywhere; }
.store-supporters li span::before { content:counter(supporters)'. '; }
.store-supporters img { flex:0 0 32px; border-radius:3px; image-rendering:pixelated; }
.store-content { min-width:0; background:#15232d; padding:clamp(18px,3vw,30px); border-radius:8px; border:1px solid #304552; }
.store-content>.page-intro { text-align:left; margin:0 0 18px; padding:0; }
.store-content>.page-intro::before { display:none; }
.store-content .page-intro h1 { font-size:clamp(26px,3vw,34px); margin:0 0 12px; color:#76cbf5; }
.store-content .page-intro .eyebrow { display:none; }
.store-content .page-intro .lead { color:#d5e5ef; font-size:15px; margin:0; }
.store-content .store-grid { gap:28px 22px; margin:24px 0; }
.store-content .store-card { background:transparent; border:0; box-shadow:none; border-radius:0; }
.store-content .store-card:hover { transform:none; }
.store-content .store-image { aspect-ratio:1; object-fit:contain; background:transparent; padding:14px; image-rendering:pixelated; box-sizing:border-box; }
.store-content .store-image-empty { color:#76cbf5; font-size:55px; }
.store-content .store-card-copy { padding:10px 0 20px; }
.store-content .store-card h2 { font-size:18px; }
.store-content .store-card p { color:#c1d4df; font-size:13px; }
.store-content .store-price strong { color:#fff; }
.store-content .store-price del { color:#9fb8c8; }
.store-content .store-actions { gap:8px; }
.store-content .store-actions .btn { min-height:40px; font-size:12px; }
.store-content .store-notice { background:#30242a; border:1px solid #76513e; border-inline-start:3px solid #e7b486; }
.store-content .store-panel { background:#23252a; border-color:var(--store-line); }
.store-content .store-product { background:transparent; padding:0; border:0; }
.store-content .store-product .store-image { max-height:340px; }
.store-content .store-breadcrumb a { color:#a0d7f1; font-size:12px; }
@media(max-width:1080px) { .store-layout { grid-template-columns:220px minmax(0,1fr); } .store-content .store-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) { .store-layout { grid-template-columns:minmax(0,1fr); } .store-sidebar { grid-template-columns:repeat(2,minmax(0,1fr)); } .store-menu { grid-column:1 / -1; grid-row:2; grid-template-columns:repeat(2,minmax(0,1fr)); } .store-supporters { padding:16px; } }
@media(max-width:480px) { .store-sidebar { grid-template-columns:minmax(0,1fr); } .store-menu { grid-row:auto; } .store-content .store-grid { grid-template-columns:minmax(0,1fr); } .store-front { margin-top:18px; } .store-topbar { padding:16px; } .store-cart-button { width:100%; } .store-content .store-image { max-height:220px; } }

.store-menu { gap:0; }
.store-menu a { margin:0; min-height:0; line-height:1.45; }
