/* DRESS ODM 市場便り / 共通シェル
   单一来源：/、/subscribe、/observations、/unsubscribe 四页共用。
   页面特有样式写在各页 <style> 里，不要在此处重复定义。 */
:root{
  --ink:#1c1b19;
  --muted:#6b6258;
  --line:#e7e0d6;
  --bg:#fffdfa;
  --soft:#f5f0e9;
  --accent:#9a7b4f;
  --accent-d:#7d6238;
  --shell:760px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{
  font-family:"Hiragino Kaku Gothic ProN","Yu Gothic","Noto Sans JP","Noto Sans",sans-serif;
  color:var(--ink);
  background:var(--bg);
  line-height:1.8;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--accent-d)}
.wrap{max-width:var(--shell);margin:0 auto;padding:0 20px}

/* 页头：四页尺寸、字号、间距、菜单完全一致 */
.site-header{
  display:flex;align-items:center;justify-content:space-between;
  gap:16px;flex-wrap:wrap;
  padding:24px 0 18px;
  margin-bottom:36px;
  border-bottom:1px solid var(--line);
}
.site-logo{
  font-size:19px;font-weight:700;letter-spacing:.12em;
  color:var(--ink);text-decoration:none;white-space:nowrap;
}
.site-logo span{color:var(--accent)}
.site-logo:hover{color:var(--accent-d)}
.site-nav{display:flex;align-items:center;gap:20px;font-size:13px;white-space:nowrap}
.site-nav a{color:var(--accent-d);text-decoration:none;padding-bottom:2px;border-bottom:2px solid transparent}
.site-nav a:hover{border-bottom-color:var(--accent)}
.site-nav a[aria-current="page"]{color:var(--ink);font-weight:700;border-bottom-color:var(--accent)}
.site-nav a.ext::after{content:" \2197";font-size:11px;opacity:.7}

/* 页面标题区 */
.page-head{margin-bottom:28px}
.page-head .kicker{display:block;font-size:12px;letter-spacing:.16em;color:var(--muted);margin-bottom:6px}
.page-head h1{font-size:26px;line-height:1.4;font-weight:800;letter-spacing:.01em}
.page-head .lead{color:var(--muted);font-size:15px;margin-top:10px}

/* 通用组件 */
.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px;margin-bottom:16px}
.card h2{font-size:16px;color:var(--accent-d);margin-bottom:10px}
.card ul{margin:0;padding-left:20px;font-size:14px;color:#45403a}
.card li{margin-bottom:7px}
.btn{
  display:block;width:100%;padding:13px;border:none;border-radius:10px;
  background:var(--accent);color:#fff;font:inherit;font-weight:700;
  text-align:center;text-decoration:none;cursor:pointer;
}
.btn:hover{background:var(--accent-d)}
.btn:disabled{opacity:.55;cursor:default}
.fine{font-size:12px;color:var(--muted);margin-top:10px;line-height:1.8}
.fine a{color:var(--accent-d)}
.foot{margin-top:28px;padding-top:18px;border-top:1px solid var(--line);font-size:13px;color:var(--muted);line-height:1.9}
.foot a{color:var(--accent-d)}
.badge{display:inline-block;font-size:11px;background:var(--soft);border:1px solid var(--line);border-radius:20px;padding:2px 10px;color:var(--muted)}

@media(max-width:600px){
  .site-header{padding:18px 0 14px;margin-bottom:26px}
  .site-nav{gap:12px;font-size:12px;flex-wrap:wrap}
  .page-head h1{font-size:23px}
}
