/* Background Patterns CSS for Workshop Landing Pages */

/* Base pattern styles */
.pattern-plus,
.pattern-dots,
.pattern-diagonal,
.pattern-diagonal-reverse,
.pattern-squares,
.pattern-waves,
.pattern-hexagon {
    position: relative;
}

.pattern-plus::before,
.pattern-dots::before,
.pattern-diagonal::before,
.pattern-diagonal-reverse::before,
.pattern-squares::before,
.pattern-waves::before,
.pattern-hexagon::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
    opacity: 0.05;
    pointer-events: none;
}

/* Plus Pattern (+) */
.pattern-plus::before {
    background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23PATTERN_COLOR%23' fill-opacity='1'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
    background-repeat: repeat;
}

/* Dots Pattern */
.pattern-dots::before {
    background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23PATTERN_COLOR%23' fill-opacity='1'%3E%3Ccircle cx='2' cy='2' r='2'/%3E%3Ccircle cx='12' cy='12' r='2'/%3E%3C/g%3E%3C/svg%3E");
    background-repeat: repeat;
}

/* Diagonal Lines Pattern */
.pattern-diagonal::before {
    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%3Cg fill='%23PATTERN_COLOR%23' fill-opacity='1'%3E%3Cpath d='M0 40L40 0H20L0 20M40 40V20L20 40'/%3E%3C/g%3E%3C/svg%3E");
    background-repeat: repeat;
}

/* Reversed Diagonal Lines Pattern (מראה) */
.pattern-diagonal-reverse::before {
    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%3Cg fill='%23PATTERN_COLOR%23' fill-opacity='1'%3E%3Cpath d='M40 40L0 0H20L40 20M0 40V20L20 40'/%3E%3C/g%3E%3C/svg%3E");
    background-repeat: repeat;
}

/* Squares Pattern */
.pattern-squares::before {
    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%3Cg fill='%23PATTERN_COLOR%23' fill-opacity='1'%3E%3Crect x='0' y='0' width='20' height='20'/%3E%3C/g%3E%3C/svg%3E");
    background-repeat: repeat;
    opacity: 0.02;
}

/* Waves Pattern */
.pattern-waves::before {
    background-image: url("data:image/svg+xml,%3Csvg width='100' height='20' viewBox='0 0 100 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='none' stroke='%23PATTERN_COLOR%23' stroke-width='2' d='M0 10c10 0 10-10 20-10s10 10 20 10 10-10 20-10 10 10 20 10 10-10 20-10'/%3E%3C/svg%3E");
    background-repeat: repeat;
    opacity: 0.1;
}

/* Hexagon Pattern */
.pattern-hexagon::before {
    background-image: url("data:image/svg+xml,%3Csvg width='56' height='100' viewBox='0 0 56 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23PATTERN_COLOR%23' fill-opacity='1' d='M28 66L0 50V16l28-16 28 16v34L28 66z'/%3E%3C/svg%3E");
    background-repeat: repeat;
    background-size: 56px 100px;
    opacity: 0.03;
}

/* Ensure content is above pattern */
.pattern-plus > *,
.pattern-dots > *,
.pattern-diagonal > *,
.pattern-diagonal-reverse > *,
.pattern-squares > *,
.pattern-waves > *,
.pattern-hexagon > * {
    position: relative;
    z-index: 1;
}

/* For sections with patterns */
section[class*="pattern-"] {
    position: relative;
}