/* Dreamhum site: one shared sheet, no external fonts or scripts (nothing is requested from other hosts) */
:root {
  color-scheme: light;
  --sky-top: #5fc4f6; --sky-low: #e6f6ff;
  --ink: #12326e; --ink-soft: #3d5a8c; --link: #1e6fd0;
  --card: rgba(255, 255, 255, .78); --rim: rgba(255, 255, 255, .95);
  --font: ui-rounded, "SF Pro Rounded", "Nunito", "Apple SD Gothic Neo", "Noto Sans KR", system-ui, sans-serif;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    color-scheme: dark;
    --sky-top: #0f2a55; --sky-low: #0a1730;
    --ink: #e8f2ff; --ink-soft: #b4c8e6; --link: #8cc8ff;
    --card: rgba(16, 36, 72, .82); --rim: rgba(140, 200, 255, .25);
  }
}
* { box-sizing: border-box; }
body {
  margin: 0; min-height: 100vh; font-family: var(--font); color: var(--ink); line-height: 1.6;
  background: linear-gradient(var(--sky-top), var(--sky-low) 520px) fixed, var(--sky-low);
  word-break: keep-all; overflow-wrap: break-word;
}
a { color: var(--link); }
header, main, footer { width: min(760px, 100% - 32px); margin-inline: auto; }
header { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 20px 0; }
.brand { font-weight: 800; font-size: 1.25rem; letter-spacing: .02em; color: var(--ink); text-decoration: none; }
nav { display: flex; gap: 16px; font-weight: 700; }
nav a { text-decoration: none; }
.card { background: var(--card); border: 1px solid var(--rim); border-radius: 28px; padding: clamp(20px, 5vw, 40px); margin-bottom: 24px;
  box-shadow: 0 20px 60px rgba(10, 60, 130, .15); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
h1 { font-size: clamp(1.7rem, 5vw, 2.4rem); line-height: 1.2; margin: 0 0 12px; }
h2 { font-size: 1.25rem; margin: 32px 0 8px; }
h3 { font-size: 1.05rem; margin: 20px 0 4px; }
p, li { color: var(--ink-soft); }
.lead { font-size: 1.1rem; }
.game { display: grid; gap: 12px; justify-items: start; }
.game img { width: min(320px, 100%); height: auto; }
.meta { font-size: .9rem; }
table { width: 100%; border-collapse: collapse; margin: 8px 0; font-size: .95rem; }
th, td { text-align: left; vertical-align: top; padding: 8px 10px; border-bottom: 1px solid var(--rim); color: var(--ink-soft); }
th { color: var(--ink); }
.table-wrap { overflow-x: auto; }
.note { border-left: 4px solid var(--link); padding: 4px 0 4px 14px; }
footer { padding: 8px 0 40px; font-size: .9rem; color: var(--ink-soft); }
