
        :root {
            --bg: #f0f0ff;
            --surface: #ffffff;
            --text: #000000;
            --muted: #4a4a66;
            --primary: #007;
            --accent: #6555bb;
            --highlight: #dde;
            --border: #ccc;
            --footer-bg: #e0e0f0;
            --footer-foot: #d0d0e0;
        }

        * {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }

        html {
            font-size: 100%;
            -webkit-text-size-adjust: 100%;
        }

        body {
            font-family: "Trebuchet MS", "Lucida Grande", Arial, Helvetica, sans-serif;
            background: var(--bg);
            color: var(--text);
            line-height: 1.7;
            min-height: 100vh;
            display: flex;
            flex-direction: column;
        }

        a {
            color: #334;
            text-decoration: none;
            transition: color 0.2s ease;
        }

        a:hover {
            color: #f35;
            text-decoration: underline;
        }

        .wrap {
            width: 100%;
            max-width: 1100px;
            margin: 0 auto;
            padding: 0 20px;
        }

        /* Header */
        .site-header {
            background: linear-gradient(135deg, #00007a 0%, #6555bb 100%);
            color: #fff;
            padding: 38px 0 34px;
            border-bottom: 4px solid var(--highlight);
            box-shadow: 0 4px 14px rgba(0, 0, 40, 0.18);
        }

        .site-header h1 {
            font-size: clamp(1.7rem, 4.5vw, 2.9rem);
            line-height: 1.2;
            font-weight: 700;
            letter-spacing: -0.5px;
            text-shadow: 1px 2px 4px rgba(0, 0, 0, 0.3);
            word-wrap: break-word;
            overflow-wrap: break-word;
        }

        /* Main */
        main {
            flex: 1;
            padding: 32px 0 44px;
        }

        article,
        .transition,
        .links-block {
            background: var(--surface);
            border: 1px solid var(--border);
            border-radius: 8px;
            padding: 28px 32px;
            margin-bottom: 26px;
            box-shadow: 0 2px 10px rgba(0, 0, 60, 0.06);
        }

        article {
            border-top: 4px solid var(--primary);
            font-size: 1.08rem;
        }

        article h1,
        article h2,
        article h3,
        article h4,
        article h5,
        article h6 {
            color: var(--primary);
            line-height: 1.3;
            margin: 1.2em 0 0.5em;
            text-shadow: #ddd 1px 1px 1px;
        }

        article h2 { font-size: 1.6rem; }
        article h3 { font-size: 1.35rem; }
        article h4 { font-size: 1.15rem; }

        article > :first-child {
            margin-top: 0;
        }

        article p {
            padding: 0;
            margin: 0 0 1em;
        }

        article ul,
        article ol {
            margin: 0 0 1em 1.6em;
        }

        article li {
            margin-bottom: 0.35em;
        }

        article a {
            color: #f11;
        }

        article a:hover {
            color: #c59;
        }

        article blockquote {
            background: var(--bg);
            border-left: 4px solid var(--accent);
            border-radius: 4px;
            padding: 12px 20px;
            margin: 1.2em 0;
            font-style: italic;
        }

        article img {
            max-width: 100%;
            height: auto;
        }

        article table {
            width: 100%;
            border-collapse: collapse;
            margin: 1em 0;
            display: block;
            overflow-x: auto;
        }

        article th,
        article td {
            border: 1px solid var(--border);
            padding: 8px 12px;
            text-align: left;
        }

        article th {
            background: var(--highlight);
        }

        .transition {
            background: var(--highlight);
            border-left: 4px solid var(--accent);
        }

        .transition p {
            padding: 0;
            margin: 0 0 1em;
        }

        .transition p:last-child {
            margin-bottom: 0;
        }

        .transition a {
            color: var(--primary);
            text-decoration: underline;
        }

        /* Links block */
        .links-block {
            background: var(--footer-bg);
            border-color: #b9b9d6;
            overflow: hidden;
        }

        .links-block h3 {
            color: var(--primary);
            font-size: 1.25rem;
            line-height: 1.3;
            padding: 0 0 6px;
            margin: 24px 0 12px;
            border-bottom: 1px dotted #444;
        }

        .links-block h3:first-child {
            margin-top: 0;
        }

        .links-block ul {
            list-style: none;
            margin: 0 0 8px;
            padding: 0;
            column-count: 2;
            column-gap: 36px;
        }

        .links-block li {
            break-inside: avoid;
            padding: 5px 0 5px 16px;
            position: relative;
            border-bottom: 1px solid #c8c8de;
            word-wrap: break-word;
            overflow-wrap: break-word;
        }

        .links-block li::before {
            content: "";
            position: absolute;
            left: 0;
            top: 15px;
            width: 7px;
            height: 7px;
            border-radius: 50%;
            background: var(--accent);
        }

        .links-block li:hover::before {
            background: #f35;
        }

        .links-block a {
            color: #224;
            text-decoration: underline;
        }

        .links-block a:hover {
            color: #f35;
        }

        /* Responsive */
        @media (max-width: 768px) {
            .wrap {
                padding: 0 14px;
            }

            .site-header {
                padding: 26px 0 24px;
            }

            main {
                padding: 20px 0 30px;
            }

            article,
            .transition,
            .links-block {
                padding: 20px 18px;
                margin-bottom: 20px;
            }

            article {
                font-size: 1rem;
            }
        }

        @media (max-width: 560px) {
            .links-block ul {
                column-count: 1;
            }
        }
    