/*
Theme Name: Ek-sis
Theme URI: 
Author: Antigravity
Author URI: 
Description: Clinical-Avant-Garde WordPress theme based on Lacanian psychoanalysis and architectural void.
Version: 1.0.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ek-sis
*/

/* Scoped Material Symbol weights to prevent conflicts */
#desktop-version-wrapper .material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 300, 'GRAD' 0, 'opsz' 24;
}
#mobile-version-wrapper .material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

/* Shared texture and line systems */
.barred-a-texture {
    background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Ctext x='10' y='30' font-family='EB Garamond' font-size='20' fill='%23000666' fill-opacity='0.03'%3EȺ%3C/text%3E%3C/svg%3E");
}
.cut-left { border-left: 2px solid #ba1a1a; }

/* Shared Background Shader Setup */
.bg-canvas {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    pointer-events: none;
}
#bg-shader-canvas {
    width: 100%;
    height: 100%;
    display: block;
}

/* Desktop specific animations & transitions */
.fade-in-up {
    opacity: 0;
    transform: translateY(20px);
    animation: fadeInUp 0.8s ease-out forwards;
}
@keyframes fadeInUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.card-interactive {
    transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.3s ease;
}
.card-interactive:hover {
    transform: translateY(-8px);
    box-shadow: 0 10px 30px -10px rgba(0, 6, 102, 0.3);
}
.card-interactive:hover img {
    transform: scale(1.05);
}
.card-interactive img {
    transition: transform 0.5s ease;
}

.float-animation {
    animation: float 4s ease-in-out infinite;
}
@keyframes float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-10px); }
}

/* Mobile specific styling elements */
.cut-line {
    height: 1px;
    background: #000666;
    width: 100%;
    position: relative;
}
.cut-line::after {
    content: '';
    position: absolute;
    right: 0;
    top: -2px;
    width: 5px;
    height: 5px;
    background: #ba1a1a;
}
.void-texture {
    background-image: radial-gradient(#000666 0.5px, transparent 0.5px);
    background-size: 12px 12px;
    opacity: 0.05;
}
.barred-a-watermark {
    font-family: 'EB Garamond', serif;
    position: absolute;
    bottom: 8px;
    right: 8px;
    opacity: 0.1;
    font-size: 24px;
}
.clinical-scroll::-webkit-scrollbar {
    width: 4px;
}
.clinical-scroll::-webkit-scrollbar-thumb {
    background: #000666;
}

/* Responsive media and content elements to prevent horizontal overflow */
img, figure, iframe, video, table, pre, code {
    max-width: 100% !important;
    height: auto !important;
    box-sizing: border-box;
}
pre, code {
    white-space: pre-wrap;
    word-wrap: break-word;
    word-break: break-all;
    overflow-x: auto;
}
table {
    display: block;
    width: 100%;
    overflow-x: auto;
}
.page-content * {
    max-width: 100% !important;
    word-wrap: break-word;
}
