/* ===== Normalize.css (subset) ===== */
html {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline dotted;
}

b,
strong {
    font-weight: bolder;
}

code,
kbd,
samp,
pre {
    font-family: monospace, monospace;
    font-size: 1em;
}

small {
    font-size: 80%;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

[hidden] {
    display: none;
}

/* ===== Site styles ===== */
:root {
    --bg: #fafafa;
    --card: #ffffff;
    --ink: #1f2937;       /* slate-800 */
    --muted: #6b7280;     /* slate-500 */
    --accent: #111827;    /* slate-900 */
    --shadow: 0 6px 24px rgba(0, 0, 0, .08), 0 2px 8px rgba(0, 0, 0, .05);
}

* {
    box-sizing: border-box;
}

html,
body {
    height: 100%;
}

body {
    margin: 0;
    font: 16px/1.6 system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
    color: var(--ink);
    background: linear-gradient(180deg, #f5f7fb 0%, var(--bg) 100%);
    display: grid;
    place-items: center;
    padding: 24px;
}

.card {
    width: min(720px, 100%);
    background: var(--card);
    border-radius: 20px;
    box-shadow: var(--shadow);
    padding: clamp(20px, 4vw, 36px);
}

.head {
    display: flex;
    align-items: baseline;
    gap: .6rem;
    flex-wrap: wrap;
}

h1 {
    font-size: clamp(28px, 5vw, 40px);
    margin: 0;
    letter-spacing: .2px;
}

.syllables {
    color: var(--accent);
    font-weight: 700;
}

.ipa {
    color: var(--muted);
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.pos {
    font-style: italic;
    color: var(--muted);
}

.divider {
    height: 1px;
    background: #e5e7eb;
    margin: 14px 0 18px;
}

ol {
    margin: 0;
    padding-left: 1.25rem;
}

blockquote {
    margin: 12px 0 0 0;
    padding-left: 14px;
    border-left: 3px solid #e5e7eb;
    color: #374151;
}

.etym {
    margin-top: 18px;
    font-size: 0.95rem;
    color: var(--muted);
}

footer {
    margin-top: 20px;
    font-size: .9rem;
    color: var(--muted);
}

.small {
    font-size: .9rem;
    color: var(--muted);
}

@media (prefers-color-scheme: dark) {
    :root {
        --bg: #0b0f1a;
        --card: #111827;
        --ink: #f3f4f6;
        --muted: #9ca3af;
        --accent: #e5e7eb;
    }

    .divider {
        background: #374151;
    }

    blockquote {
        border-left-color: #374151;
        color: #d1d5db;
    }
}