/* --- Busou Shoujo Machiavellism Theme (Optimized) --- */

[class*="bg-[#F1CBCB]"], 
[class*="bg-[#c9e1e9]"] {
    display: none !important;
}

html, body, div, span, textarea {
    cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cdefs%3E%3Cfilter id='katana-glow'%3E%3CfeDropShadow dx='0' dy='0' stdDeviation='1.5' flood-color='%23424242' flood-opacity='0.8'/%3E%3C/filter%3E%3C/defs%3E%3Cg filter='url(%23katana-glow)'%3E%3Cpath d='M2 30 L30 2 L28 0 L0 28 Z' fill='%23212121'/%3E%3Cpath d='M4 28 L28 4 L26 2 L2 26 Z' fill='%23424242'/%3E%3Cpath d='M6 26 L26 6 L24 4 L4 24 Z' fill='%23616161'/%3E%3C/g%3E%3C/svg%3E") 16 16, auto !important;
}

button, [role="button"], a {
    cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cdefs%3E%3Cfilter id='slash-glow'%3E%3CfeDropShadow dx='0' dy='0' stdDeviation='2' flood-color='%23FF1744' flood-opacity='0.9'/%3E%3C/filter%3E%3C/defs%3E%3Cg filter='url(%23slash-glow)'%3E%3Cpath d='M2 30 L30 2 L28 0 L0 28 Z' fill='%23212121'/%3E%3Cpath d='M4 28 L28 4 L26 2 L2 26 Z' fill='%23424242'/%3E%3Cpath d='M6 26 L26 6 L24 4 L4 24 Z' fill='%23616161'/%3E%3Cpath d='M10 22 L22 10' stroke='%23FF1744' stroke-width='3' opacity='0.8'%3E%3Canimate attributeName='stroke-dasharray' values='0 30;30 0' dur='0.4s' begin='0s' fill='freeze'/%3E%3Canimate attributeName='opacity' values='1;0' dur='0.4s' begin='0s' fill='freeze'/%3E%3C/path%3E%3C/g%3E%3C/svg%3E") 16 16, pointer !important;
}

.bg-gray-100\/90.relative.inline-block {
    background: #1A1A1A !important;
    border-radius: 10px !important;
    border: 3px solid #000000 !important;
    box-shadow: 0 0 10px rgba(255, 23, 68, 0.5), 0 3px 6px rgba(0,0,0,0.4) !important;
    padding: 20px !important;
    position: relative !important;
    isolation: isolate !important;
    overflow: hidden !important;
}

.bg-gray-100\/90.relative.inline-block::before {
    content: '' !important;
    position: absolute !important;
    top: 0; left: 0; width: 100%; height: 100%;
    z-index: 0 !important;
    background: 
        radial-gradient(circle at center, rgba(255, 23, 68, 0.08) 0%, transparent 75%),
        linear-gradient(to bottom right, rgba(255, 23, 68, 0.03), transparent),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M0 50 L50 0 L100 50 L50 100 Z' fill='none' stroke='rgba(255, 23, 68, 0.02)' stroke-width='1'/%3E%3Cpath d='M25 25 L75 25 L75 75 L25 75 Z' fill='none' stroke='rgba(255, 23, 68, 0.02)' stroke-width='1'/%3E%3C/svg%3E"),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cdefs%3E%3Cfilter id='blade-blur'%3E%3CfeGaussianBlur stdDeviation='1'/%3E%3C/filter%3E%3C/defs%3E%3Cg opacity='0.03' filter='url(%23blade-blur)'%3E%3Cpath d='M10 90 L90 10 L85 5 L5 85 Z' fill='%23000000'/%3E%3Cpath d='M90 90 L10 10 L15 5 L95 85 Z' fill='%23000000'/%3E%3C/g%3E%3C/svg%3E");
    background-size: cover, cover, cover, 100% 100% !important;
    background-repeat: no-repeat, no-repeat, repeat, no-repeat !important;
    background-position: center center !important;
    opacity: 0.5 !important;
    pointer-events: none !important;
    animation: sci-fi-pulse 10s infinite alternate ease-in-out !important;
}
@keyframes sci-fi-pulse {
    0% { transform: scale(1); opacity: 0.5; }
    50% { transform: scale(1.005); opacity: 0.6; }
    100% { transform: scale(1); opacity: 0.5; }
}

.bg-gray-100\/90.relative.inline-block:not(.chat-answer-container .bg-gray-100\/90) {
    background: #1A1A1A !important;
    border: 2px solid #FF1744 !important;
    box-shadow: 0 0 8px rgba(255, 23, 68, 0.4) !important;
}

.markdown-body {
    position: relative !important;
    z-index: 1 !important;
    color: #F0F0F0 !important;
    font-family: 'Roboto Mono', 'Segoe UI', monospace !important;
    font-size: 16px !important;
    line-height: 1.7 !important;
    background: transparent !important;
}
.markdown-body strong {
    color: #FF8A80 !important;
    font-weight: bold !important;
}

.markdown-body pre {
    background: #FF1744 !important;
    border: 1px solid #FFCDD2 !important;
    border-radius: 8px !important;
    position: relative !important;
    padding: 15px !important;
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.4), 0 0 8px rgba(255, 23, 68, 0.7) !important;
}

.markdown-body pre::before {
    content: '' !important;
    position: absolute !important;
    top: 0; left: 0; width: 100%; height: 100%;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M0 0 L100 100 M100 0 L0 100' stroke='rgba(0, 0, 0, 0.08)' stroke-width='0.5'/%3E%3C/svg%3E") !important;
    background-size: cover !important;
    background-repeat: repeat !important;
    background-position: center center !important;
    opacity: 0.5 !important;
    z-index: 0 !important;
    pointer-events: none !important;
}

.markdown-body code {
    font-family: 'Fira Code', 'Consolas', monospace !important;
    color: #000000 !important;
    background: rgba(0, 0, 0, 0.03) !important;
    padding: 3px 6px;
    border-radius: 4px;
    text-shadow: 0 0 6px rgba(0, 0, 0, 0.7) !important;
}

.MuiButtonBase-root.MuiButton-root, 
.text-orange-500,
.MuiTypography-root {
    color: #212121 !important;
    font-weight: 600 !important;
    transition: all 0.2s ease !important;
    text-shadow: 0 0 3px rgba(255,255,255,0.2);
    text-transform: uppercase !important;
    letter-spacing: 0.8px;
    background: linear-gradient(45deg, rgba(255, 23, 68, 0.08), rgba(0,0,0,0.08)) !important;
    border-radius: 4px !important;
    padding: 4px 8px !important;
    z-index: 2 !important;
    pointer-events: auto !important;
}
.MuiButtonBase-root.MuiButton-root:hover {
    color: #FFFFFF !important;
    transform: translateY(-1px) scale(1.02) !important;
    text-shadow: 0 0 8px rgba(255, 255, 255, 0.7) !important;
    background: #FF1744 !important;
}

.style_dot-flashing__8L91Q.style_text__zGhNq { display: none !important; }

.flex.items-center.justify-center.w-6.h-5 {
    position: relative !important;
    width: 60px !important;
    height: 60px !important;
    transform: scale(0.9);
}

.flex.items-center.justify-center.w-6.h-5::before {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60'%3E%3Cdefs%3E%3Cfilter id='gear-glow'%3E%3CfeDropShadow dx='0' dy='0' stdDeviation='1.5' flood-color='%23FF1744' flood-opacity='0.7'/%3E%3C/filter%3E%3C/defs%3E%3Cg filter='url(%23gear-glow)'%3E%3Ccircle cx='30' cy='30' r='18' fill='%23212121' stroke='%23FF1744' stroke-width='2'/%3E%3Cpath d='M30 10 L33 15 L30 18 L27 15 Z M30 50 L33 45 L30 42 L27 45 Z M10 30 L15 27 L18 30 L15 33 Z M50 30 L45 27 L42 30 L45 33 Z M15.86 15.86 L18.09 19.09 L21.14 15.86 Z M44.14 15.86 L41.91 19.09 L38.86 15.86 Z M15.86 44.14 L19.09 41.91 L15.86 38.86 Z M44.14 44.14 L41.91 41.09 L38.86 44.14 Z' fill='%23FF1744'/%3E%3Ccircle cx='30' cy='30' r='8' fill='%23000000'/%3E%3CanimateTransform attributeName='transform' attributeType='XML' type='rotate' from='0 30 30' to='360 30 30' dur='2.5s' repeatCount='indefinite'/%3E%3C/g%3E%3C/svg%3E") !important;
    display: block !important;
    width: 60px !important;
    height: 60px !important;
}

@media (max-width: 480px) {
    html, body, div, span, textarea {
        cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 32 32'%3E%3Cdefs%3E%3Cfilter id='katana-glow'%3E%3CfeDropShadow dx='0' dy='0' stdDeviation='1' flood-color='%23424242' flood-opacity='0.8'/%3E%3C/filter%3E%3C/defs%3E%3Cg filter='url(%23katana-glow)'%3E%3Cpath d='M2 30 L30 2 L28 0 L0 28 Z' fill='%23212121'/%3E%3Cpath d='M4 28 L28 4 L26 2 L2 26 Z' fill='%23424242'/%3E%3Cpath d='M6 26 L26 6 L24 4 L4 24 Z' fill='%23616161'/%3E%3C/g%3E%3C/svg%3E") 12 12, auto !important;
    }
    button, [role="button"], a {
        cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 32 32'%3E%3Cdefs%3E%3Cfilter id='slash-glow'%3E%3CfeDropShadow dx='0' dy='0' stdDeviation='1.5' flood-color='%23FF1744' flood-opacity='0.9'/%3E%3C/filter%3E%3C/defs%3E%3Cg filter='url(%23slash-glow)'%3E%3Cpath d='M2 30 L30 2 L28 0 L0 28 Z' fill='%23212121'/%3E%3Cpath d='M4 28 L28 4 L26 2 L2 26 Z' fill='%23424242'/%3E%3Cpath d='M6 26 L26 6 L24 4 L4 24 Z' fill='%23616161'/%3E%3Cpath d='M10 22 L22 10' stroke='%23FF1744' stroke-width='2' opacity='0.8'%3E%3Canimate attributeName='stroke-dasharray' values='0 30;30 0' dur='0.4s' begin='0s' fill='freeze'/%3E%3Canimate attributeName='opacity' values='1;0' dur='0.4s' begin='0s' fill='freeze'/%3E%3C/path%3E%3C/g%3E%3C/svg%3E") 12 12, pointer !important;
    }
    .flex.items-center.justify-center.w-6.h-5 {
        width: 40px !important;
        height: 40px !important;
        transform: scale(0.7);
    }
    .flex.items-center.justify-center.w-6.h-5::before {
        width: 40px !important;
        height: 40px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .bg-gray-100\/90.relative.inline-block::before {
        animation-duration: 20s !important;
        opacity: 0.4 !important;
    }
    .flex.items-center.justify-center.w-6.h-5::before animateTransform {
        dur: 7s !important;
    }
}