 :root { --red: #C00000; --black: #000; }
    body { font-family: 'Inter', sans-serif; margin: 0; line-height: 1.6; color: var(--black); }
    .container { padding: 0 20px; max-width: 1600px; margin: 0 auto; }
    .header-main { border-bottom: 8px solid var(--black); padding: 40px 0 20px; margin-bottom: 30px; display: flex; align-items: center; justify-content: space-between; }
    .header-main h1 { font-size: 44px; font-weight: 900; margin: 0; text-transform: uppercase; }
    .workspace { display: grid; grid-template-columns: 250px 1fr 350px; gap: 40px; }
    .toc-col { position: sticky; top: 20px; }
    .toc-title { font-size: 10px; font-weight: 900; text-transform: uppercase; color: var(--red); margin-bottom: 15px; }
    .toc-item { display: block; text-decoration: none; color: #666; font-size: 13px; font-weight: 600; margin-bottom: 10px; border-left: 1px solid #ddd; padding-left: 15px; }
    .content-area { order: 2; }
    .sidebar-area { order: 3; }
    .auto-link {
        color: inherit;
        color: var(--red);
        text-decoration: none;
        border-bottom: 1px solid var(--red);
        font-weight: 600;
    }
    .auto-link:hover { background: var(--red); color: #fff; }
    .section { margin-bottom: 60px; }
    .section h2 { font-size: 28px; font-weight: 900; text-transform: uppercase; border-bottom: 5px solid var(--black); margin-bottom: 25px; }
    .infobox { overflow: hidden;border: 2px solid var(--black); width: 100%; margin-bottom: 30px; background: #fff; }
    .infobox-t { width: 100%; border-collapse: collapse; }
    .infobox-t td { padding: 12px; font-size: 13px; border-bottom: 1px solid #eee; vertical-align: top; }
    .label { font-weight: 900; text-transform: uppercase; background: #f9f9f9; width: 40%; }
    .grid-res { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
    .res-item { padding: 10px; border: 1px solid #eee; text-decoration: none; color: #000; font-weight: 700; font-size: 13px; display: flex; justify-content: space-between; align-items: center; }
    #map { height: 400px; width: 100%; margin-top: 40px; border: 2px solid #000; }
    .entity-image-container { text-align: center; border-bottom: 1px solid #eee; padding: 0; overflow: hidden; }
    .entity-image-container img { max-width: 100%; height: auto; display: block; margin: 0 auto; }
    @media (max-width: 1024px) {
        .workspace { display: flex; flex-direction: column; }
        .toc-col { display: none; }
        .header-main { border: 0px solid; flex-direction: column; align-items: flex-start; gap: 20px; }
        .header-main h1 { font-size: 30px; }
        .content-area { order: 1; }
        .sidebar-area { order: 2; margin-top: 40px; border-top: 4px solid #000; padding-top: 40px; }
        .grid-res { grid-template-columns: 1fr; }
    }