* { margin:0; padding:0; box-sizing:border-box; }
        body {
            background: linear-gradient(135deg, #e8f4f8 0%, #d1e9f0 100%);
            font-family: system-ui, -apple-system, 'Segoe UI', sans-serif;
            padding: 20px;
        }
        .double-border {
            max-width: 1400px;
            margin: 0 auto;
            background: #ffffff;
            border: 2px solid #f1c40f;
            border-radius: 24px;
            box-shadow: 0 20px 30px -15px rgba(0,0,0,0.2), inset 0 1px 0 0 #fff8e0;
            overflow: hidden;
        }
        .container {
            display: grid;
            grid-template-columns: 260px 1fr;
            gap: 0;
        }
        .sidebar {
            background: #fefcf5;
            border-right: 2px solid #fdebb3;
            padding: 24px 16px;
        }
        .sidebar h3 {
            font-size: 1.4rem;
            color: #b45f06;
            border-left: 5px solid #f39c12;
            padding-left: 15px;
            margin-bottom: 25px;
        }
        .mobile-chapter-nav {
            display: none;
        }
        .chapter-list {
            list-style: none;
        }
        .chapter-list li {
            margin-bottom: 6px;
        }
        .chapter-list a {
            display: block;
            padding: 8px 12px;
            text-decoration: none;
            color: #2c3e50;
            border-radius: 12px;
            transition: all 0.2s;
            font-weight: 500;
            position: relative;
            z-index: 5;
            pointer-events: auto;
            touch-action: manipulation;
            -webkit-tap-highlight-color: rgba(59, 130, 246, 0.22);
        }
        .chapter-list a:hover {
            background: #fdebd0;
            transform: translateX(3px);
        }
        .chapter-list .active {
            background: #3b82f6;
            color: white;
            box-shadow: 0 2px 5px rgba(59,130,246,0.3);
        }
        .main-content {
            padding: 30px 35px;
            background: white;
            min-width: 0;
            font-size: 18px;
        }
        .learning-card-section {
            margin: 22px 0 28px;
        }
        .learning-card-figure {
            margin: 0;
        }
        .learning-card-image {
            display: block;
            width: 100%;
            max-width: 100%;
            height: auto;
            margin: 0 auto;
            padding: 0;
            background: #ffffff;
            border: 1px solid #dbe5ee;
            border-radius: 14px;
            box-shadow: 0 6px 18px rgba(15, 23, 42, 0.08);
        }
        .footer-nav {
            margin-top: 45px;
            padding-top: 20px;
            border-top: 2px solid #f0e6d2;
            display: flex;
            justify-content: space-between;
            gap: 12px;
        }
        .footer-nav a {
            padding: 8px 24px;
            background: #f1f5f9;
            text-decoration: none;
            color: #1e40af;
            border-radius: 40px;
            font-weight: 500;
            transition: 0.2s;
            position: relative;
            z-index: 5;
            pointer-events: auto;
            touch-action: manipulation;
            -webkit-tap-highlight-color: rgba(59, 130, 246, 0.22);
        }
        .footer-nav a:hover {
            background: #e2e8f0;
            transform: translateY(-2px);
        }
        footer {
            text-align: center;
            margin-top: 30px;
            padding: 15px;
            color: #64748b;
            border-top: 1px dashed #e2e8f0;
            font-size: inherit;
        }
        footer a {
            color: #92400e;
            font-weight: 700;
            text-decoration: none;
        }
        footer .footer-extra {
            font-weight: 700;
            color: inherit;
        }
        footer a:hover { color: #78350f; text-decoration: none; }
        h2 {
            color: #173b73;
            margin: 20px 0 15px;
            padding: 11px 15px 11px 17px;
            background: linear-gradient(90deg, #fff1a8 0%, #fff8d7 58%, #fffdf3 100%);
            border-left: 7px solid #e7a814;
            border-radius: 10px 7px 10px 7px;
            line-height: 1.45;
            overflow-wrap: anywhere;
        }
        h3 {
            color: #17586a;
            margin: 20px 0 10px;
            padding: 9px 13px;
            background: linear-gradient(90deg, #d8f6fa 0%, #edfaff 62%, #f8fdff 100%);
            border-left: 6px solid #18b8c7;
            border-radius: 9px 6px 9px 6px;
            line-height: 1.45;
            overflow-wrap: anywhere;
        }
        p, li { line-height: 1.8; }
        ul, ol { padding-left: 1.5rem; margin: 12px 0; }
        .main-content pre {
            background: #2d2f36 !important;
            color: #f8f8f2 !important;
            padding: 15px;
            border-radius: 12px;
            overflow-x: auto;
            font-family: 'JetBrains Mono', monospace;
            margin: 15px 0;
        }
        .main-content pre *,
        .main-content pre code,
        .main-content pre code * {
            color: #f8f8f2 !important;
            background: transparent !important;
            font-family: inherit;
        }
        code { overflow-wrap: anywhere; }
        .main-content table {
            width: 100%;
            border-collapse: collapse;
            margin: 15px 0;
            background: #fefce8 !important;
            color: #1f2937 !important;
        }
        .main-content table tr {
            background: transparent !important;
            color: #1f2937 !important;
        }
        .main-content table th,
        .main-content table td {
            border: 1px solid #fcd34d;
            padding: 10px;
            text-align: left;
            vertical-align: top;
            background: #fffdf0 !important;
            color: #1f2937 !important;
            overflow-wrap: anywhere;
        }
        .main-content table th {
            background: #fffbeb !important;
            color: #111827 !important;
            font-weight: 700;
        }
        .main-content table th *,
        .main-content table td * {
            color: inherit !important;
            background: transparent !important;
        }
        .main-content table code {
            color: #111827 !important;
            background: rgba(15, 23, 42, 0.08) !important;
            padding: 0.08rem 0.28rem;
            border-radius: 0.28rem;
        }
        svg, img, video, canvas {
            max-width: 100%;
            height: auto;
        }
        .tip, .warning, .highlight {
            padding: 12px 18px; border-radius: 16px; margin: 15px 0;
        }
        .tip { background: #e0f2fe; border-left: 6px solid #0ea5e9; }
        .warning { background: #fee2e2; border-left: 6px solid #ef4444; }
        .highlight { background: #fef9c3; border: 1px solid #facc15; }
        @media (max-width: 860px) {
            html, body { overflow-x: hidden; }
            body { padding: 12px; }
            .container { display: block; }
            .sidebar { display: none; }
            .mobile-chapter-nav {
                display: block;
                position: fixed;
                top: 14px;
                left: 14px;
                z-index: 1000;
                width: auto;
                padding: 0;
                background: transparent;
                border: 0;
                pointer-events: none;
            }
            .mobile-chapter-nav summary {
                min-height: 46px;
                max-width: calc(100vw - 28px);
                padding: 8px 13px;
                border-radius: 12px;
                background: #fff7df;
                border: 1px solid #f7d682;
                box-shadow: 0 8px 20px rgba(146, 64, 14, 0.18);
                color: #92400e;
                font-weight: 700;
                cursor: pointer;
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 10px;
                list-style: none;
                user-select: none;
                pointer-events: auto;
                touch-action: manipulation;
                -webkit-tap-highlight-color: rgba(245, 158, 11, 0.22);
                position: relative;
                z-index: 1002;
            }
            .mobile-chapter-nav summary::-webkit-details-marker { display: none; }
            .mobile-nav-current {
                color: #1e40af;
                font-size: 0.92rem;
                font-weight: 600;
                overflow-wrap: anywhere;
                text-align: right;
            }
            .mobile-chapter-nav .chapter-list {
                display: none;
                margin: 0;
                padding: 70px 14px 18px;
                width: min(84vw, 340px);
                max-height: none;
                position: fixed;
                top: 0;
                bottom: 0;
                left: 0;
                overflow-y: auto;
                -webkit-overflow-scrolling: touch;
                background: #fefcf5;
                border-right: 2px solid #fdebb3;
                box-shadow: 14px 0 30px rgba(15, 23, 42, 0.18);
                z-index: 1001;
                pointer-events: auto;
            }
            .mobile-chapter-nav[open] .chapter-list { display: block; }
            .mobile-chapter-nav .chapter-list a {
                min-height: 44px;
                display: flex;
                align-items: center;
                position: relative;
                z-index: 1002;
                pointer-events: auto;
            }
            .main-content {
                padding: 24px 18px;
                position: relative;
                z-index: 1;
            }
            .main-content a {
                position: relative;
                z-index: 2;
                pointer-events: auto;
            }
            .footer-nav {
                flex-wrap: wrap;
                position: relative;
                z-index: 30;
                pointer-events: auto;
            }
            .footer-nav a { flex: 1 1 120px; min-height: 44px; display: flex; align-items: center; justify-content: center; text-align: center; position: relative; z-index: 31; pointer-events: auto; }
        }
