:root {
  --bg: #fbf8f5;
  --card: #ffffff;
  --text: #2b2523;
  --muted: #746a66;
  --accent: #8a5a6b;
  --border: #eadfd9;
}
* { box-sizing: border-box; }
body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Inter, Arial, sans-serif;
  color: var(--text);
  background: linear-gradient(180deg, #fbf8f5 0%, #fff 100%);
  line-height: 1.6;
}
.wrapper { max-width: 920px; margin: 0 auto; padding: 32px 20px 64px; }
header {
  padding: 28px;
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 22px;
  box-shadow: 0 10px 30px rgba(43, 37, 35, 0.06);
  margin-bottom: 22px;
}
nav { margin-top: 16px; display: flex; flex-wrap: wrap; gap: 10px; }
nav a, .button {
  display: inline-block;
  padding: 9px 14px;
  border: 1px solid var(--border);
  border-radius: 999px;
  color: var(--accent);
  text-decoration: none;
  background: #fff;
  font-weight: 600;
}
main {
  padding: 28px;
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 22px;
  box-shadow: 0 10px 30px rgba(43, 37, 35, 0.05);
}
h1 { margin: 0 0 8px; font-size: 34px; line-height: 1.15; }
h2 { margin-top: 32px; font-size: 22px; }
h3 { margin-top: 24px; font-size: 18px; }
p, li { font-size: 16px; }
.muted { color: var(--muted); }
.notice {
  padding: 16px 18px;
  border-left: 4px solid var(--accent);
  background: #fff7fa;
  border-radius: 12px;
  margin: 18px 0;
}
.placeholder {
  background: #fff3cd;
  border-radius: 6px;
  padding: 1px 5px;
}
footer { margin-top: 22px; color: var(--muted); font-size: 14px; text-align: center; }
a { color: var(--accent); }
@media (max-width: 640px) {
  .wrapper { padding: 18px 12px 42px; }
  header, main { padding: 20px; border-radius: 18px; }
  h1 { font-size: 28px; }
}
