:root {
            color-scheme: light dark;
            --bg: #f4f7f8;
            --paper: #ffffff;
            --text: #26383e;
            --muted: #5c6e75;
            --heading: #112f38;
            --accent: #086e75;
            --tint: #edf7f6;
            --line: #dce7e8;
        }
        * { box-sizing: border-box; }
        body {
            margin: 0;
            padding: 48px 24px;
            background: var(--bg);
            color: var(--text);
            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
            font-size: 16px;
            line-height: 1.8;
            overflow-wrap: anywhere;
            -webkit-text-size-adjust: 100%;
        }
        main {
            max-width: 820px;
            margin: 0 auto;
            padding: 56px 64px 32px;
            background: var(--paper);
            border: 1px solid var(--line);
            border-radius: 24px;
            box-shadow: 0 12px 48px rgb(17 47 56 / 4%);
        }
        header { padding-bottom: 24px; }
        .eyebrow {
            margin: 0 0 12px;
            color: var(--accent);
            font-size: 13px;
            font-weight: 700;
            letter-spacing: 0.12em;
            text-transform: uppercase;
        }
        h1, h2, h3 { color: var(--heading); line-height: 1.35; }
        h1 { margin: 0 0 16px; font-size: clamp(32px, 6vw, 46px); letter-spacing: -0.035em; }
        h2 { margin: 0 0 20px; font-size: 23px; letter-spacing: -0.02em; }
        h3 { margin: 28px 0 10px; font-size: 17px; }
        p { margin: 0 0 18px; }
        .updated { margin: 0; color: var(--muted); font-size: 14px; }
        .summary {
            margin: 24px 0;
            padding: 22px 24px;
            border-left: 3px solid var(--accent);
            border-radius: 0 12px 12px 0;
            background: var(--tint);
        }
        .summary p { margin: 0; }
        .summary strong { display: block; margin-bottom: 6px; color: var(--heading); }
        nav { margin: 28px 0 8px; }
        details { border: 1px solid var(--line); border-radius: 12px; }
        summary { padding: 14px 18px; color: var(--accent); font-weight: 600; cursor: pointer; }
        nav ol { margin: 0; padding: 0 22px 18px 42px; }
        nav li { margin: 0; padding-left: 2px; }
        nav a { display: inline-block; padding: 7px 0; }
        section { padding: 32px 0 14px; border-bottom: 1px solid var(--line); scroll-margin-top: 24px; }
        section:last-of-type { border: 0; }
        ul { padding-left: 22px; margin: 0 0 20px; }
        li { padding-left: 5px; margin-bottom: 14px; }
        li::marker { color: var(--accent); }
        strong { color: var(--heading); font-weight: 650; }
        a { color: var(--accent); text-underline-offset: 4px; text-decoration-thickness: 1px; }
        a:hover { text-decoration-thickness: 2px; }
        a:focus-visible, summary:focus-visible { outline: 3px solid var(--accent); outline-offset: 4px; border-radius: 3px; }
        code { font-size: 0.85em; background: var(--tint); padding: 3px 6px; border-radius: 5px; }
        footer { margin-top: 16px; padding-top: 20px; border-top: 1px solid var(--line); color: var(--muted); font-size: 13px; }
        footer p { margin: 0; }
        @media (max-width: 600px) {
            body { padding: 16px 10px; }
            main { padding: 30px 22px 24px; border-radius: 16px; }
            h2 { font-size: 21px; }
            section { padding-top: 28px; }
            .summary { padding: 18px; }
        }
        @media (prefers-color-scheme: dark) {
            :root {
                --bg: #10191d;
                --paper: #172429;
                --text: #d2dfe2;
                --muted: #a6bac1;
                --heading: #edf6f7;
                --accent: #7bd7d1;
                --tint: #20373b;
                --line: #30464e;
            }
        }
        @media print {
            body { padding: 0; background: #fff; color: #000; }
            main { max-width: none; padding: 0; border: 0; box-shadow: none; }
            nav, footer { display: none; }
            :root { --paper: #fff; --text: #000; --heading: #000; --muted: #444; --accent: #000; --tint: #f5f5f5; --line: #ccc; }
            h2, h3 { break-after: avoid; }
        }
