* { margin: 0; padding: 0; box-sizing: border-box; }
        body {
            margin: 0;
            font-family: 'Segoe UI', 'Arial', sans-serif;
            background: #050510;
            overflow-x: hidden;
            min-height: 100vh;
            position: relative;
        }
        
        
        .malcorok-bg {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: 0;
            background: linear-gradient(135deg, #0a0515 0%, #150525 50%, #0a0515 100%);
            overflow: hidden;
        }
        .void-mist {
            position: absolute;
            width: 100%;
            height: 100%;
            background: radial-gradient(ellipse at 50% 50%, rgba(50,0,100,0.15) 0%, transparent 70%);
            animation: mistPulse 10s ease-in-out infinite;
        }
        .ruin-column {
            position: absolute;
            width: 20px;
            height: 200px;
            background: linear-gradient(180deg, rgba(80,60,100,0.2), rgba(40,30,50,0.05));
            bottom: 0;
            clip-path: polygon(20% 0%, 80% 0%, 100% 100%, 0% 100%);
        }
        .ruin-column:nth-child(1) { left: 5%; height: 150px; }
        .ruin-column:nth-child(2) { left: 15%; height: 250px; width: 15px; }
        .ruin-column:nth-child(3) { right: 10%; height: 180px; width: 25px; }
        .ruin-column:nth-child(4) { right: 3%; height: 120px; width: 12px; }
        .corruption-pool {
            position: absolute;
            width: 300px;
            height: 300px;
            background: radial-gradient(circle, rgba(100,0,100,0.15) 0%, transparent 70%);
            border-radius: 50%;
            filter: blur(40px);
            bottom: -100px;
            left: -100px;
            animation: poolPulse 8s ease-in-out infinite;
        }
        .corruption-pool:nth-child(2) {
            top: -100px;
            right: -100px;
            left: auto;
            bottom: auto;
            animation-delay: 4s;
        }
        @keyframes mistPulse {
            0%, 100% { opacity: 0.3; transform: scale(1); }
            50% { opacity: 0.6; transform: scale(1.05); }
        }
        @keyframes poolPulse {
            0%, 100% { opacity: 0.1; transform: scale(1); }
            50% { opacity: 0.3; transform: scale(1.2); }
        }
        
        
        .boss-content { display: flex; width: 92%; max-width: 1700px; margin: 80px auto; gap: 30px; position: relative; z-index: 10; min-height: 80vh; align-items: flex-start; }
        .markdown-column { flex: 0.7; background: rgba(0,0,0,0.75); backdrop-filter: blur(10px); border-radius: 20px; padding: 25px; border: 1px solid #ffcc44; max-height: 85vh; overflow-y: auto; color: #e0e0e0; font-family: 'Segoe UI', sans-serif; font-size: 0.9rem; line-height: 1.5; }
        .video-column { flex: 1.3; background: rgba(0,0,0,0.6); backdrop-filter: blur(8px); border-radius: 20px; padding: 20px; border: 1px solid #ffcc44; }
        .markdown-column h1 { color: #ffcc44; font-size: 1.8rem; margin-bottom: 20px; border-bottom: 2px solid #ffcc44; padding-bottom: 8px; }
        .markdown-column h2 { color: #aa66ff; font-size: 1.3rem; margin: 20px 0 10px 0; border-left: 3px solid #aa66ff; padding-left: 12px; }
        .markdown-column h3 { color: #cc88ff; font-size: 1.1rem; margin: 15px 0 8px 0; }
        .markdown-column p { margin-bottom: 12px; }
        .markdown-column .role-tag { display: inline-block; background: rgba(255,200,68,0.2); border: 1px solid #ffcc44; border-radius: 15px; padding: 2px 10px; font-size: 0.7rem; font-weight: bold; margin-right: 8px; color: #ffcc44; }
        .markdown-column .spell-name { color: #cc88ff; font-weight: bold; }
        .markdown-column .important { background: rgba(255,100,100,0.2); border-left: 3px solid #ff6644; padding: 8px 12px; margin: 10px 0; border-radius: 8px; }
        
        .video-container { background: #000; border-radius: 16px; overflow: hidden; position: relative; }
        .video-container video { width: 100%; height: auto; display: block; }
        .video-title { position: absolute; top: 10px; left: 15px; background: rgba(0,0,0,0.7); color: #ffcc44; padding: 5px 14px; border-radius: 20px; font-family: monospace; font-size: 0.85rem; pointer-events: none; z-index: 5; }
        
        .album-player { margin-top: 20px; border-radius: 16px; overflow: hidden; position: relative; cursor: pointer; transition: transform 0.3s ease, box-shadow 0.3s ease; max-width: 400px; margin-left: auto; margin-right: auto; }
        .album-player:hover { transform: scale(1.02); box-shadow: 0 0 25px rgba(255,200,68,0.4); }
        .album-cover { position: relative; width: 100%; aspect-ratio: 16 / 9; overflow: hidden; background: linear-gradient(135deg, #2a1a3a, #1a0a2a); display: flex; align-items: center; justify-content: center; }
        .album-cover img { width: 100%; height: 100%; object-fit: cover; display: block; }
        .album-cover .placeholder { font-size: 4rem; color: #ffcc44; text-shadow: 0 0 10px #ff6600; }
        .album-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.4); display: flex; align-items: center; justify-content: center; transition: background 0.3s ease; }
        .album-player:hover .album-overlay { background: rgba(0,0,0,0.6); }
        .play-btn-overlay { width: 60px; height: 60px; background: rgba(255,200,68,0.9); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 1.8rem; color: #000; transition: transform 0.2s ease; cursor: pointer; border: none; }
        .play-btn-overlay:hover { transform: scale(1.1); background: #ffcc44; }
        .album-label { position: absolute; bottom: 12px; left: 12px; background: rgba(0,0,0,0.6); padding: 4px 10px; border-radius: 20px; font-size: 0.7rem; color: #ffcc44; font-family: monospace; backdrop-filter: blur(4px); }
        
        .back-button { position: fixed; top: 20px; left: 20px; background: rgba(0,0,0,0.7); backdrop-filter: blur(5px); border: 1px solid #ffcc44; color: #ffcc44; padding: 10px 20px; border-radius: 30px; cursor: pointer; font-family: monospace; transition: 0.2s; text-align: center; font-weight: bold; z-index: 100; }
        .back-button:hover { background: #ffcc44; color: #000; }
        
        @media (max-width: 1000px) {
            .boss-content { flex-direction: column; width: 95%; margin: 100px auto 40px; }
            .markdown-column { max-height: 50vh; flex: 1; }
            .video-column { flex: 1; }
            .album-player { max-width: 300px; }
        }
        .markdown-column {
            max-height: none !important;
            overflow: visible !important;
        }
        .video-container {
            position: relative;
        }
        .video-activate-btn {
            position: absolute;
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%);
            width: 92px;
            height: 92px;
            border-radius: 999px;
            border: 2px solid rgba(255, 204, 68, 0.9);
            background: rgba(0, 0, 0, 0.72);
            color: #ffcc44;
            font-size: 2.15rem;
            line-height: 1;
            cursor: pointer;
            z-index: 6;
            box-shadow: 0 14px 32px rgba(0,0,0,0.34);
            transition: transform 0.2s ease, background 0.2s ease, opacity 0.2s ease;
        }
        .video-activate-btn:hover {
            transform: translate(-50%, -50%) scale(1.05);
            background: rgba(0, 0, 0, 0.82);
        }
        .video-activate-btn.is-hidden {
            opacity: 0;
            pointer-events: none;
        }
        @media (max-width: 768px) {
            body { overflow-x: hidden; }
            .back-button {
                position: sticky !important;
                top: 12px !important;
                left: auto !important;
                display: flex;
                justify-content: center;
                align-items: center;
                width: calc(100% - 24px);
                max-width: 360px;
                margin: 12px auto 0;
                padding: 12px 16px !important;
                border-radius: 18px !important;
            }
            .boss-content {
                width: calc(100% - 24px) !important;
                margin: 16px auto 28px !important;
                gap: 16px !important;
                min-height: auto !important;
            }
            .markdown-column,
            .video-column {
                width: 100% !important;
                padding: 16px !important;
                border-radius: 16px !important;
            }
            .video-title {
                position: static !important;
                display: block;
                margin: 0 0 10px 0;
                text-align: center;
            }
            .video-controls {
                position: static !important;
                opacity: 1 !important;
                background: none !important;
                padding: 12px 0 0 !important;
                flex-wrap: wrap;
            }
            .video-btn {
                flex: 1 1 140px;
                min-height: 44px;
            }
            .video-list {
                gap: 8px !important;
                justify-content: stretch !important;
            }
            .video-list-btn {
                flex: 1 1 calc(50% - 8px);
                min-height: 44px;
            }
            .album-player {
                width: 100% !important;
                max-width: none !important;
            }
            .play-btn-overlay {
                width: 56px;
                height: 56px;
            }
            .video-activate-btn {
                width: 76px;
                height: 76px;
                font-size: 1.8rem;
            }
        }
        .tactic-accordion-list {
            display: flex;
            flex-direction: column;
            gap: 14px;
            margin-top: 18px;
            padding-bottom: 10px;
        }
        .tactic-accordion {
            border: 1px solid rgba(255, 204, 68, 0.75);
            border-radius: 18px;
            background: rgba(3, 10, 20, 0.72);
            overflow: hidden;
            box-shadow: 0 10px 26px rgba(0,0,0,0.24);
            transition: border-color 0.28s ease, box-shadow 0.28s ease, background 0.28s ease;
        }
        .tactic-accordion summary {
            list-style: none;
            cursor: pointer;
            padding: 16px 20px;
            color: #ffcc44;
            font-size: 1.08rem;
            font-weight: 700;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 16px;
            user-select: none;
            transition: background 0.28s ease, color 0.28s ease;
        }
        .tactic-accordion summary::-webkit-details-marker {
            display: none;
        }
        .tactic-accordion summary::after {
            content: '+';
            width: 28px;
            height: 28px;
            border-radius: 999px;
            border: 1px solid rgba(78, 192, 255, 0.45);
            background: rgba(78, 192, 255, 0.08);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            font-size: 1.25rem;
            line-height: 1;
            color: #4ec0ff;
            flex: 0 0 auto;
            transition: transform 0.28s ease, background 0.28s ease, border-color 0.28s ease;
        }
        .tactic-accordion[open] summary::after {
            content: '−';
            transform: rotate(180deg);
        }
        .tactic-accordion-body {
            border-top: 1px solid rgba(255, 204, 68, 0.35);
            display: grid;
            grid-template-rows: 0fr;
            transition: grid-template-rows 0.32s ease, padding 0.32s ease, border-color 0.32s ease;
            padding: 0 20px;
        }
        .tactic-accordion-content {
            overflow: hidden;
        }
        .tactic-accordion-body p {
            margin: 14px 0 0;
        }
        .tactic-accordion-body p:first-child {
            margin-top: 16px;
        }
        .tactic-accordion-note {
            margin-top: 18px;
            color: #4ec0ff;
            font-size: 1rem;
            font-weight: 700;
        }
        .tactic-phase {
            color: #4ec0ff;
            font-weight: 700;
        }
        .tactic-accordion[open] {
            border-color: rgba(255, 204, 68, 0.95);
            box-shadow: 0 16px 34px rgba(0,0,0,0.32);
            background: rgba(4, 14, 28, 0.84);
        }
        .tactic-accordion[open] summary {
            background: rgba(255, 204, 68, 0.08);
        }
        .tactic-accordion[open] .tactic-accordion-body {
            grid-template-rows: 1fr;
            padding: 0 20px 18px;
        }
        @media (max-width: 480px) {
            .back-button {
                width: calc(100% - 16px);
                max-width: none;
                margin-top: 8px;
                font-size: 0.9rem !important;
            }
            .boss-content {
                width: calc(100% - 16px) !important;
                margin: 12px auto 24px !important;
            }
            .markdown-column,
            .video-column {
                padding: 12px !important;
            }
            .tactic-accordion-list {
                gap: 12px;
                padding-bottom: 18px;
            }
            .tactic-accordion summary {
                padding: 14px 16px;
            }
            .tactic-accordion-body {
                padding: 0 16px;
            }
            .tactic-accordion[open] .tactic-accordion-body {
                padding: 0 16px 16px;
            }
            .video-activate-btn {
                width: 68px;
                height: 68px;
                font-size: 1.55rem;
            }
        }
        @media (max-width: 768px) {
            .markdown-column {
                max-height: none !important;
                overflow: visible !important;
                font-size: 0.98rem !important;
                line-height: 1.58 !important;
            }
            .markdown-column h1 {
                font-size: 1.75rem !important;
                line-height: 1.1 !important;
            }
            .markdown-column h2 {
                font-size: 1.14rem !important;
            }
            .markdown-column h3 {
                font-size: 1rem !important;
            }
            .markdown-column p {
                font-size: 0.98rem !important;
                line-height: 1.58 !important;
            }
            .tactic-accordion summary {
                font-size: 1rem !important;
            }
        }
        @media (max-width: 480px) {
            .markdown-column {
                max-height: none !important;
                overflow: visible !important;
                font-size: 0.92rem !important;
                line-height: 1.55 !important;
            }
            .markdown-column h1 {
                font-size: 1.55rem !important;
                line-height: 1.08 !important;
            }
            .markdown-column h2 {
                font-size: 1.04rem !important;
            }
            .markdown-column h3 {
                font-size: 0.96rem !important;
            }
            .markdown-column p {
                font-size: 0.92rem !important;
                line-height: 1.55 !important;
            }
            .tactic-accordion summary {
                font-size: 0.94rem !important;
            }
        }
