/* 解禁プレイリストのサイト(index.html・about.html)の共通のスタイル */
:root{
  --accent:#6b5cff; --on-accent:#fff;
  --bg:#fbfaff; --card:#fff; --ink:#1b1830; --sub:#6a6680; --line:#e6e3f3; --chip:#f0eefb;
  --shadow:0 6px 24px rgba(40,30,90,.08);
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){--bg:#121120;--card:#1b1a2e;--ink:#f0eefc;--sub:#a29fbd;--line:#2c2a45;--chip:#25233d;--shadow:0 6px 24px rgba(0,0,0,.4)}
}
:root[data-theme="dark"]{--bg:#121120;--card:#1b1a2e;--ink:#f0eefc;--sub:#a29fbd;--line:#2c2a45;--chip:#25233d;--shadow:0 6px 24px rgba(0,0,0,.4)}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:'Noto Sans JP',sans-serif;line-height:1.7;
  transition:background .4s}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(900px 500px at 85% -10%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 70%),
             radial-gradient(700px 400px at -10% 30%,color-mix(in srgb,var(--accent) 10%,transparent),transparent 70%);
  transition:background .5s}
.wrap{max-width:760px;margin:0 auto;padding:0 16px}
header.hero{padding:40px 0 18px}
h1{font-size:clamp(26px,6vw,38px);font-weight:700;line-height:1.25;margin:0 0 10px;letter-spacing:.01em}
h1 em{font-style:normal;color:var(--accent)}
.lead{color:var(--sub);margin:0;font-size:15px}
h2.step{font-size:15px;font-weight:700;margin:28px 0 12px;color:var(--sub)}


footer{border-top:1px solid var(--line);padding:22px 0 60px;color:var(--sub);font-size:12.5px}
footer p{margin:0 0 8px}
