:root{color-scheme:light;--gold:#c9a85b;--ink:#12171b;--navy:#071119;--paper:#f7f5f1;--red:#c9142e}*{box-sizing:border-box}body{margin:0;background:var(--navy);color:var(--ink);font-family:"Noto Sans JP","Yu Gothic",sans-serif}.shopHero{height:86px;padding:0 clamp(20px,5vw,72px);display:flex;align-items:center;justify-content:space-between;background:#050b0f;color:#fff;border-bottom:1px solid #765f30;letter-spacing:.18em}.shopHero a{color:#f7f5f1;font-family:serif;font-weight:700;text-decoration:none}.shopHero a::after{content:" / WORKSHOP STORE";margin-left:12px;color:var(--gold);font:9px sans-serif;letter-spacing:.2em}.shopHero span{color:var(--gold);font-size:10px}#shopPage{width:min(1180px,calc(100% - 28px));margin:46px auto 80px}.shopLoading,.shopEmpty{text-align:center;padding:80px 20px;color:#a6a6a6}.shopSection{margin:0 0 56px;padding:clamp(16px,3vw,38px);border:1px solid #6f5a31;box-shadow:0 24px 70px #0008;background:var(--paper)}.shopSection[data-bg="black"]{background:#111}.shopSection[data-bg="gray"]{background:#ebe8e1}.shopTitleFrame{display:grid;place-items:center;width:min(100%,980px);aspect-ratio:2.5/1;margin:0 auto clamp(24px,4vw,42px);overflow:hidden;border:1px solid #745f34;box-shadow:0 15px 36px #0006;background-position:center;background-size:cover}.shopTitleFrame-buy{background-image:linear-gradient(#02070a38,#02070a38),url("/images/uploads/reference/%E4%BB%8A%E6%97%A5%E3%81%AE%E8%B2%B7%E5%8F%96%E5%93%81-v1.png")}.shopTitleFrame-sell{background-image:linear-gradient(#02070a38,#02070a38),url("/images/uploads/reference/%E8%B2%A9%E5%A3%B2%E5%95%86%E5%93%81-v2.png")}.shopTitleLogo{display:block;width:84%;height:64%;object-fit:contain;filter:invert(96%) sepia(12%) saturate(499%) hue-rotate(351deg) brightness(103%) drop-shadow(0 3px 14px #000)}.shopFallbackTitle{text-align:center;font-family:"Yu Mincho",serif;font-size:clamp(28px,5vw,54px);margin:0 0 30px}.shopGrid{display:grid;grid-template-columns:repeat(var(--columns),minmax(0,1fr));gap:16px}.shopItem{position:relative;display:grid;grid-template-columns:88px 1fr auto;gap:15px;align-items:center;padding:15px;border:1px solid #d5cdbd;background:#fff;color:var(--text);min-width:0;box-shadow:0 5px 18px #16110a0b}.shopGrid[data-images="false"] .shopItem{grid-template-columns:1fr auto}.shopItem img{width:88px;height:76px;object-fit:contain;background:#f2efe8}.shopItem h2{font-family:"Yu Mincho",serif;font-size:17px;margin:0;overflow-wrap:anywhere}.shopItem small{opacity:.6;font-size:10px}.shopPrice{color:#8f1726;font-size:18px;font-weight:900;white-space:nowrap}.shopBoost{position:absolute;left:8px;top:-9px;padding:3px 9px;color:#fff;font-size:10px;font-weight:900;border-radius:1px;letter-spacing:.08em}.shopSold{opacity:.42;filter:saturate(.55)}footer{text-align:center;padding:28px;background:#050b0f;color:#a99d82;border-top:1px solid #302719;font-size:10px;letter-spacing:.16em}@media(max-width:780px){.shopHero a::after{display:none}#shopPage{margin-top:18px}.shopSection{padding:12px 10px 20px}.shopTitleFrame{aspect-ratio:2.5/1;margin-bottom:22px}.shopTitleLogo{width:90%;height:70%}.shopGrid{grid-template-columns:1fr!important}.shopItem{grid-template-columns:70px 1fr auto;padding:11px}.shopItem img{width:70px;height:62px}.shopPrice{font-size:15px}.shopItem h2{font-size:15px}}
.shopTitleFrame-buy{background-image:linear-gradient(#02070ac7,#02070ac7),url("/images/uploads/reference/%E4%BB%8A%E6%97%A5%E3%81%AE%E8%B2%B7%E5%8F%96%E5%93%81-v1.png")}.shopTitleFrame-sell{background-image:linear-gradient(#02070ac7,#02070ac7),url("/images/uploads/reference/%E8%B2%A9%E5%A3%B2%E5%95%86%E5%93%81-v2.png")}

/* The selected transparent title logos stay above these text-free workshop plates. */
.shopTitleFrame-buy{background-image:linear-gradient(#02070a80,#02070a80),url("/images/shop-buy-title-background-v2.png")}
.shopTitleFrame-sell{background-image:linear-gradient(#02070a80,#02070a80),url("/images/shop-sell-title-background-v2.png")}
.shopSection,.shopSection[data-bg="white"],.shopSection[data-bg="gray"],.shopSection[data-bg="black"]{background:#0b1217;border-color:#5f4d2c;color:#f4efe4}
.shopSection .shopItem{background:linear-gradient(145deg,#151d22,#10171b);border-color:#3f3a30;color:#f4efe4;box-shadow:0 8px 22px #0005}
.shopSection .shopItem img{background:#1c2429;border:1px solid #302f2a}
.shopSection .shopItem small{color:#aaa18f;opacity:1}
.shopSection .shopPrice{color:#d4b561}
.shopSection .shopSold{opacity:.45}

/* Workshop-style product placards: legible stock state, brass details, quiet texture. */
.shopSection .shopItem{isolation:isolate;overflow:visible;padding:17px 18px;background:linear-gradient(115deg,#ffffff05 0 1px,transparent 1px 9px),linear-gradient(145deg,#182127,#0e1519);border-color:#554b36;box-shadow:inset 0 1px #ffffff08,0 9px 24px #0006;transition:border-color .2s ease,transform .2s ease}
.shopSection .shopItem:hover{border-color:#8a7240;transform:translateY(-1px)}
.shopSection .shopItem h2{color:#f7f1e5;letter-spacing:.035em}
.shopSection .shopPrice{color:#dfbd62;text-shadow:0 1px 8px #000;font-variant-numeric:tabular-nums}
.shopSection .shopBoost{z-index:3;top:-10px;left:9px;padding:4px 10px;border:1px solid #b99b57;background:linear-gradient(#9f1e2c,#68121d)!important;box-shadow:0 3px 10px #0009;color:#fff4dc;letter-spacing:.1em}
.shopSection .shopSold{opacity:1;filter:none;overflow:hidden}
.shopSection .shopSold>*{opacity:.42;filter:saturate(.55)}
.shopSection .shopSold::after{content:"SOLD OUT";position:absolute;z-index:4;right:-35px;top:17px;width:130px;padding:5px 0;transform:rotate(35deg);border-top:1px solid #c2a563;border-bottom:1px solid #c2a563;background:#5d1720e8;color:#fff1d1;text-align:center;font:800 9px/1 "Noto Sans JP",sans-serif;letter-spacing:.16em;box-shadow:0 3px 10px #0008}
@media(min-width:1000px){.shopGrid{gap:18px}.shopSection .shopItem{min-height:108px}.shopSection .shopItem img{width:94px;height:82px}}
@media(max-width:780px){.shopSection .shopItem{padding:12px 11px}.shopSection .shopSold::after{right:-38px;top:14px}}

html{scroll-behavior:smooth;scroll-padding-top:18px}
.shopUtility{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px;margin:0 0 26px;padding:13px 16px;border:1px solid #403722;background:#0c1318;box-shadow:0 10px 30px #0004;color:#b9b09f;font-size:11px}
.shopUtility nav{display:flex;gap:7px}.shopUtility nav a{padding:8px 13px;border:1px solid #65532e;background:#151a1c;color:#e2c576;text-decoration:none;font-weight:800;letter-spacing:.06em}.shopUtility p{margin:0;line-height:1.7}.shopUtility time{color:#d0ba82;white-space:nowrap;font-variant-numeric:tabular-nums}
.shopUtility a:focus-visible,.shopBackTop:focus-visible,.shopHero a:focus-visible{outline:2px solid #f0cf75;outline-offset:3px}
.shopImageError{display:grid;place-items:center;width:88px;height:76px;border:1px solid #302f2a;background:linear-gradient(135deg,#1e272c,#11181c);color:#777064;font-size:8px;letter-spacing:.1em}
.shopBackTop{position:fixed;z-index:10;right:20px;bottom:20px;display:grid;place-items:center;width:42px;height:42px;border:1px solid #725e33;background:#0c1318e8;color:#ddc274;text-decoration:none;box-shadow:0 6px 20px #0009;font-size:18px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.shopSection .shopItem{transition:none}}
@media(max-width:780px){.shopUtility{grid-template-columns:1fr;margin-bottom:18px;gap:10px}.shopUtility nav a{flex:1;text-align:center}.shopUtility time{grid-row:2}.shopUtility p{grid-row:3}.shopImageError{width:70px;height:62px}.shopBackTop{right:12px;bottom:12px;width:38px;height:38px}}

/* Primary list switcher: one active catalogue, larger controls and readable status. */
.shopSection[hidden]{display:none}
.shopUtility{grid-template-columns:minmax(300px,.8fr) minmax(320px,1.5fr) auto;gap:28px;padding:18px 20px;border-color:#66542f;font-size:14px}
.shopTabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.shopCampaignItem{grid-template-columns:116px minmax(0,1fr) minmax(230px,auto)!important;gap:24px!important;min-height:154px!important;padding:18px 20px!important;overflow:hidden!important;background:radial-gradient(circle at 88% 50%,#b68b271c,transparent 26%),linear-gradient(135deg,#19242a,#0d1418 72%)!important}.shopCampaignItem::before{position:absolute;inset:7px;border:1px solid #79633335;content:"";pointer-events:none}.shopCampaignVisual{position:relative;display:grid;place-items:center;width:116px;height:116px;overflow:hidden;border:1px solid #746039;background:radial-gradient(circle,#44371e,#141a1d 68%);box-shadow:inset 0 0 24px #0008}.shopCampaignVisual::before,.shopCampaignVisual::after{position:absolute;width:12px;height:12px;border-radius:50%;background:#11181c;content:""}.shopCampaignVisual::before{left:-7px}.shopCampaignVisual::after{right:-7px}.shopCampaignVisual img{position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:contain!important;background:transparent!important;border:0!important;opacity:.7;mix-blend-mode:screen}.shopCampaignVisual span{z-index:1;padding:5px 7px;border-block:1px solid #b99343;color:#f0cf78;font:800 9px/1 Arial,sans-serif;letter-spacing:.18em;text-shadow:0 2px 5px #000}.shopCampaignIdentity{position:relative;z-index:1;min-width:0}.shopCampaignIdentity>small{display:flex;align-items:center;gap:7px;color:#c7aa66!important;font-size:11px!important;font-weight:800;letter-spacing:.08em}.shopCampaignIdentity>small i{width:7px;height:7px;border-radius:50%;background:#d6ae4c;box-shadow:0 0 9px #e8bd4a}.shopCampaignIdentity h2{margin:12px 0 20px!important;font-size:clamp(20px,2vw,28px)!important}.shopCampaignSale{display:flex;align-items:baseline;gap:13px;margin:0}.shopCampaignSale dt{color:#918979;font-size:11px;font-weight:700}.shopCampaignSale dd{margin:0;color:#e5d4a7;font-size:20px;font-weight:900;font-variant-numeric:tabular-nums}.shopCampaignSale em{color:#9d927e;font-size:11px;font-style:normal}.shopFirstPrize{position:relative;z-index:1;align-self:stretch;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto 1fr auto;align-content:center;min-width:230px;padding:17px 22px;border:1px solid #bd9848;background:linear-gradient(145deg,#4a3919,#211a0e 58%,#120f0a);box-shadow:inset 0 0 0 1px #f2d57a20,0 7px 22px #0008;text-align:right}.shopFirstPrize>span{grid-row:1/3;align-self:center;margin-right:14px;color:#171109;background:#e4bc5b;padding:8px 10px;font:900 18px/1 "Noto Sans JP",sans-serif;box-shadow:0 3px 10px #0005}.shopFirstPrize>small{align-self:end;color:#c8b581;font-size:10px;font-weight:800;letter-spacing:.13em}.shopFirstPrize>strong{grid-column:2;color:#ffe18a;font-size:clamp(30px,3vw,43px);line-height:1.18;font-weight:900;font-variant-numeric:tabular-nums;text-shadow:0 2px 14px #000}.shopFirstPrize>i{grid-column:1/-1;align-self:end;margin-top:8px;padding-top:7px;border-top:1px solid #806832;color:#897647;font:700 8px/1 Arial,sans-serif;letter-spacing:.22em}
.shopTabs button{min-height:52px;padding:10px 18px;border:1px solid #6d5931;background:#11191e;color:#d8c28b;font:800 15px/1.2 "Noto Sans JP",sans-serif;letter-spacing:.08em;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.shopTabs button:hover{border-color:#aa8c4c;color:#fff0c3}.shopTabs button.active{border-color:#c0a052;background:linear-gradient(145deg,#493b20,#211d14);color:#ffe39a;box-shadow:inset 0 0 0 1px #d4b56138,0 4px 14px #0005}
.shopTabs button:focus-visible{outline:2px solid #f0cf75;outline-offset:3px}
.shopNotice{display:grid;gap:3px}.shopNotice p{margin:0;color:#d1c8b7;font-size:13px;line-height:1.55}.shopNotice p:first-child{color:#f1eadc;font-weight:700}
.shopUtility time{display:grid;gap:3px;color:#f0cf7b;font-size:14px;font-weight:800;text-align:right}.shopUtility time span{color:#9f9583;font-size:11px;font-weight:500;letter-spacing:.08em}
@media(min-width:1000px){#shopPage{margin-top:30px}.shopUtility{margin-bottom:18px}.shopSection{padding:24px 30px 28px;margin-bottom:32px}.shopTitleFrame{width:min(100%,760px);aspect-ratio:3.15/1;margin-bottom:24px}.shopTitleLogo{height:72%}.shopSection .shopItem{min-height:90px;padding:12px 15px}.shopSection .shopItem img{width:72px;height:66px}}
@media(max-width:900px){.shopUtility{grid-template-columns:1fr 1fr}.shopTabs{grid-column:1/-1}.shopNotice{grid-column:1}.shopUtility time{grid-column:2;align-self:center}}
@media(max-width:780px){.shopUtility{grid-template-columns:1fr;padding:14px;gap:14px;font-size:14px}.shopTabs{grid-column:1}.shopTabs button{min-height:52px;font-size:15px}.shopNotice,.shopUtility time{grid-column:1;grid-row:auto}.shopNotice{grid-template-columns:1fr;gap:5px}.shopNotice p{grid-row:auto;font-size:14px;line-height:1.65}.shopUtility time{text-align:left;font-size:14px}.shopUtility time span{font-size:12px}.shopTitleFrame{margin-bottom:18px}.shopSection{margin-bottom:24px}}
@media(max-width:720px){.shopCampaignItem{grid-template-columns:76px minmax(0,1fr)!important;gap:14px!important;padding:15px!important}.shopCampaignVisual{width:76px;height:76px}.shopCampaignVisual span{font-size:7px}.shopCampaignIdentity h2{margin:8px 0 13px!important;font-size:20px!important}.shopCampaignSale{display:grid;gap:3px}.shopCampaignSale dd{font-size:18px}.shopFirstPrize{grid-column:1/-1;min-width:0;min-height:120px;margin-top:2px;padding:14px 17px}.shopFirstPrize>strong{font-size:38px}}
.shopTitleFrame-campaigns{background-image:linear-gradient(#02070a9e,#02070a9e),url("/images/shop-sell-title-background-v2.png")}.shopTitleFrame-campaigns h1{margin:0;padding:18px;color:#f8f0df;font:400 clamp(30px,4.8vw,56px)/1.35 "Yu Mincho",serif;letter-spacing:.12em;text-align:center;text-shadow:0 3px 16px #000,0 0 1px #000}.shopTitleFrame-campaigns h1::after{display:block;width:72px;height:1px;margin:15px auto 0;background:#c9a85b;content:"";box-shadow:0 0 8px #d9b75d}@media(max-width:720px){.shopTitleFrame-campaigns h1{padding:10px;font-size:clamp(24px,8vw,34px);letter-spacing:.08em}.shopTitleFrame-campaigns h1::after{width:50px;margin-top:9px}}

/* Boosted-item seal: larger and contained inside the card without enlarging every item. */
.shopSection .shopItem:has(.shopBoost){padding-top:38px}
.shopSection .shopBoost{top:8px;left:12px;min-width:88px;padding:5px 12px;border-width:2px;font-size:12px;line-height:1;white-space:nowrap;text-align:center;text-shadow:0 1px 2px #000;box-shadow:inset 0 1px #ffffff20,0 3px 10px #0009}
@media(max-width:780px){.shopSection .shopItem:has(.shopBoost){padding-top:36px}.shopSection .shopBoost{top:7px;left:10px;min-width:82px;padding:5px 10px;font-size:11px}}

.shopHero>div{display:flex;align-items:center;gap:22px}.shopReturn{padding:8px 11px;border:1px solid #574826;color:#dcc173!important;font:700 10px "Noto Sans JP",sans-serif!important;letter-spacing:.06em!important}.shopReturn::after{display:none!important}.shopHero>div>span{color:var(--gold);font-size:10px}
footer{display:flex;align-items:center;justify-content:center;gap:28px}footer a{color:#d1b768;text-decoration:none;font-weight:700}footer a:hover{text-decoration:underline}
@media(max-width:780px){.shopHero>div>span{display:none}.shopReturn{font-size:9px!important}.shopHero{padding-inline:15px}footer{flex-direction:column;gap:12px}}
