:root{color-scheme:light;--text:#111827;--muted:#5b6472;--line:#d9dde5;--soft:#f4f5f7;--accent:#b89445;--danger:#f72b61;--radius:3px;--max:1180px;--font-ja:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;--font-zh:"Noto Sans SC","Microsoft YaHei","PingFang SC","Hiragino Sans GB",sans-serif}*{box-sizing:border-box}body{margin:0;color:var(--text);background:#fff;font-family:var(--font-ja);font-size:15px;line-height:1.45}html[lang=zh-CN] body{font-family:var(--font-zh)}html[lang=ja-JP] body,html[lang=ja] body{font-family:var(--font-ja)}a{color:inherit;text-decoration:none}button,input{font:inherit}img{display:block;max-width:100%}main{width:min(var(--max),calc(100% - 28px));margin:0 auto}.promo-strip{min-height:28px;padding:3px 12px;background:var(--danger);color:#fff;font-weight:800;text-align:center;letter-spacing:0}.utility-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:66px;border-bottom:1px solid var(--line);padding:7px max(14px,calc((100vw - var(--max))/2));color:var(--muted)}.utility-brand{display:inline-flex;align-items:center;min-width:0}.utility-logo{width:min(210px,46vw);height:auto}.auth-tabs,.header-actions,.utility-row nav{display:flex;align-items:center;gap:8px}.lang-button,.utility-link{display:inline-flex;align-items:center;gap:4px;min-height:30px;padding:4px 8px;border:1px solid transparent;border-radius:var(--radius);color:var(--text)}.lang-button{border-color:var(--line);background:var(--soft);font-weight:700}.main-header{display:grid;grid-template-columns:1fr minmax(280px,410px);align-items:center;gap:18px;width:min(var(--max),calc(100% - 28px));margin:0 auto;padding:13px 0}.desktop-nav{display:flex;align-items:center;flex-wrap:wrap;gap:10px 18px;font-size:16px;font-weight:800}.desktop-nav a{padding:4px 0}.search-box{display:flex;flex:1 1 auto;min-width:0;height:38px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.search-box input{width:100%;min-width:0;border:0;padding:0 10px;outline:0}.cart-button,.drawer-title button,.mobile-menu-bar button,.search-box button{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius);cursor:pointer}.search-box button{width:42px;border:0;border-left:1px solid var(--line);background:#fff}.cart-button{width:40px;height:38px;border:1px solid var(--line)}.mobile-menu-bar{display:none}.hero-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:18px;align-items:stretch;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0}.hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:9px}.eyebrow,.hero-copy p{margin:0;color:var(--accent);font-size:13px;font-weight:800}.article-page h1,.detail-copy h1,.hero-copy h1,.page-title h1{margin:0;font-size:clamp(28px,4vw,48px);line-height:1.05}.detail-copy p,.hero-copy span,.lead{color:var(--muted)}.hero-media{display:grid;grid-template-columns:1fr 1fr;gap:10px;background:var(--soft);padding:12px}.hero-media,.hero-media img{border:1px solid var(--line);border-radius:var(--radius)}.hero-media img{width:100%;aspect-ratio:1/.72;-o-object-fit:contain;object-fit:contain;background:#fff}.primary-link{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 14px;border:1px solid #111827;border-radius:var(--radius);background:#111827;color:#fff;font-weight:800}.article-page,.auth-page,.compact-section,.detail-layout,.listing-page{padding:18px 0}.breadcrumb,.page-title,.section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.page-title h1,.section-heading h2{margin:0;font-size:22px}.section-heading a{color:var(--muted);font-weight:700}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.article-card,.auth-panel,.category-grid a,.product-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff}.category-grid a{padding:10px 12px;font-weight:800}.article-grid,.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.article-grid{grid-template-columns:repeat(3,1fr)}.product-card{overflow:hidden}.product-image{background:var(--soft);border-bottom:1px solid var(--line)}.product-image img{width:100%;aspect-ratio:1/.78;-o-object-fit:contain;object-fit:contain;padding:10px}.article-card,.product-info{display:flex;flex-direction:column;gap:5px;padding:9px}.article-card p,.product-info p{min-height:38px;margin:0;color:var(--muted);font-size:13px}.price,.product-info span{color:#b42318;font-size:18px;font-weight:900}.article-card span,.article-card time{color:var(--accent);font-size:12px;font-weight:800}.product-detail{display:grid;grid-template-columns:minmax(280px,.9fr) 1fr;gap:18px;align-items:start}.detail-image{border:1px solid var(--line);border-radius:var(--radius);background:var(--soft)}.detail-image img{width:100%;aspect-ratio:1/.78;-o-object-fit:contain;object-fit:contain;padding:18px}.detail-copy{display:flex;flex-direction:column;gap:10px}.breadcrumb{justify-content:flex-start;color:var(--muted);font-size:13px}.article-page article{max-width:780px}.article-body{display:grid;gap:10px;margin-top:14px;color:#1f2937}.article-body h2,.article-body p,.lead{margin:0}.auth-page{display:flex;justify-content:center}.auth-panel{width:min(420px,100%);padding:12px}.auth-tabs button{flex:1;min-height:34px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;font-weight:800}.auth-tabs .active{background:#111827;color:#fff}.auth-form{display:grid;gap:8px;margin-top:10px}.auth-form label{display:grid;gap:4px;font-weight:700}.auth-form input{min-height:36px;border:1px solid var(--line);border-radius:var(--radius);padding:0 9px}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;border-top:1px solid var(--line);padding:14px max(14px,calc((100vw - var(--max))/2));color:var(--muted)}.site-footer div,.site-footer nav{display:flex;gap:10px;flex-wrap:wrap}.drawer-layer{position:fixed;inset:0;z-index:50;background:#00000052}.drawer-panel{width:min(320px,86vw);height:100%;background:#fff;padding:12px;transform:translate(0)}.drawer-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.drawer-title button{width:32px;height:32px;border:1px solid var(--line);background:#fff;font-size:24px}.drawer-panel a{display:block;border-bottom:1px solid var(--line);padding:11px 0;font-weight:800}.drawer-enter-active,.drawer-leave-active{transition:opacity .16s ease}.drawer-enter-from,.drawer-leave-to{opacity:0}@media(max-width:860px){.main-header,main{width:min(100% - 20px,var(--max))}.utility-row{padding-inline:10px}.main-header{grid-template-columns:1fr;gap:10px;padding:12px 0}.utility-logo{width:min(190px,48vw)}.desktop-nav{display:none}.header-actions{width:100%}.mobile-menu-bar{display:flex;align-items:center;justify-content:space-between;width:min(100% - 20px,var(--max));margin:0 auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:7px 0}.mobile-menu-bar button{width:38px;height:34px;border:1px solid var(--line);background:#fff}.hero-section,.product-detail{grid-template-columns:1fr}.article-grid,.category-grid,.product-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:575px){.promo-strip,body{font-size:14px}.promo-strip{min-height:26px}.utility-row{min-height:56px;align-items:center;flex-direction:row;gap:8px}.utility-row nav{width:auto;justify-content:flex-end;gap:6px}.utility-logo{width:min(170px,44vw)}.lang-button,.utility-link{min-height:32px;padding:4px 7px}.main-header{padding:10px 0}.cart-button,.search-box{height:36px}.cart-button{width:40px;flex:0 0 40px}.hero-section{padding:14px 0}.hero-media{grid-template-columns:1fr 1fr;padding:8px}.detail-image img,.hero-media img,.product-image img{aspect-ratio:1/.72}.article-page,.auth-page,.compact-section,.detail-layout,.listing-page{padding:12px 0}.article-grid,.category-grid,.product-grid{gap:7px}.article-card,.category-grid a,.product-info{padding:8px}.article-card p,.product-info p{min-height:auto}.site-footer{align-items:flex-start;flex-direction:column;margin-top:8px;padding:12px 10px}}
