/* Military Boot Camp Theme */
.military-bg {
    background: linear-gradient(135deg, rgba(107, 142, 35, 0.9), rgba(47, 47, 47, 0.9)), 
                url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><path d="M0,0 L15,15 M15,0 L0,15 M30,0 L45,15 M45,0 L30,15 M60,0 L75,15 M75,0 L60,15 M90,0 L100,15 M100,0 L90,15" stroke="rgba(139,69,19,0.1)" stroke-width="1"/><path d="M0,30 L15,45 M15,30 L0,45 M30,30 L45,45 M45,30 L30,45 M60,30 L75,45 M75,30 L60,45 M90,30 L100,45 M100,30 L90,45" stroke="rgba(139,69,19,0.1)" stroke-width="1"/><path d="M0,60 L15,75 M15,60 L0,75 M30,60 L45,75 M45,60 L30,75 M60,60 L75,75 M75,60 L60,75 M90,60 L100,75 M100,60 L90,75" stroke="rgba(139,69,19,0.1)" stroke-width="1"/><path d="M0,90 L15,100 M15,90 L0,100 M30,90 L45,100 M45,90 L30,100 M60,90 L75,100 M75,90 L60,100 M90,90 L100,100 M100,90 L90,100" stroke="rgba(139,69,19,0.1)" stroke-width="1"/></svg>');
    background-size: 200px 200px;
    min-height: 100vh;
}

.boot-camp-hero {
    background: linear-gradient(135deg, rgba(30, 58, 138, 0.95), rgba(153, 27, 27, 0.95)), 
                url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="50" cy="50" r="2" fill="rgba(255,255,255,0.1)"/><circle cx="20" cy="30" r="1" fill="rgba(255,255,255,0.05)"/><circle cx="80" cy="20" r="1.5" fill="rgba(255,255,255,0.05)"/><circle cx="75" cy="80" r="1" fill="rgba(255,255,255,0.05)"/><circle cx="10" cy="70" r="0.8" fill="rgba(255,255,255,0.05)"/></svg>');
    background-size: 300px 300px;
    position: relative;
    border-bottom: 8px solid #B8860B;
}

.boot-camp-hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 60 60"><polygon points="30,5 35,20 50,20 40,30 45,45 30,35 15,45 20,30 10,20 25,20" fill="rgba(184,134,11,0.1)"/></svg>');
    background-size: 200px 200px;
    opacity: 0.3;
    animation: military-march 8s linear infinite;
}

@keyframes military-march {
    0% { transform: translateX(-50px) translateY(0px); }
    25% { transform: translateX(0px) translateY(-25px); }
    50% { transform: translateX(50px) translateY(0px); }
    75% { transform: translateX(0px) translateY(25px); }
    100% { transform: translateX(-50px) translateY(0px); }
}

/* Military Stencil Font Styling */
.military-stencil {
    font-family: 'Impact', 'Arial Black', sans-serif;
    font-weight: 900;
    letter-spacing: 3px;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
}

.combat-text {
    text-shadow: 4px 4px 8px rgba(0, 0, 0, 0.8), 
                 0 0 10px rgba(184, 134, 11, 0.5);
}

/* Military Button Styles */
.military-button {
    font-family: 'Impact', 'Arial Black', sans-serif;
    font-weight: 900;
    letter-spacing: 2px;
    text-transform: uppercase;
    border: 2px solid transparent;
    transition: all 0.3s ease;
}

.military-button:hover {
    border-color: #B8860B;
    text-shadow: 0 0 8px #B8860B;
}

/* Enlist Button Animation */
.enlist-button {
    animation: enlist-pulse 2s infinite;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.8);
    position: relative;
    overflow: hidden;
}

.enlist-button::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
    transition: left 0.5s;
}

.enlist-button:hover::before {
    left: 100%;
}

@keyframes enlist-pulse {
    0%, 100% { transform: scale(1); box-shadow: 0 0 20px rgba(34, 197, 94, 0.5); }
    50% { transform: scale(1.05); box-shadow: 0 0 30px rgba(34, 197, 94, 0.8); }
}

/* Military Card Hover Effects */
.military-card {
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
}

.military-card::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: linear-gradient(45deg, transparent, rgba(184, 134, 11, 0.1), transparent);
    transform: rotate(-45deg);
    transition: all 0.5s ease;
    opacity: 0;
}

.military-card:hover::before {
    animation: sweep 0.6s ease-in-out;
    opacity: 1;
}

@keyframes sweep {
    0% { transform: translateX(-100%) rotate(-45deg); }
    100% { transform: translateX(100%) rotate(-45deg); }
}

/* Rank Progression Indicators */
.rank-stripe {
    background: linear-gradient(45deg, #B8860B, #FFD700, #B8860B);
    height: 4px;
    margin: 2px 0;
    border-radius: 2px;
}

/* Military Progress Bars */
.progress-bar-military {
    background: linear-gradient(45deg, #2F2F2F, #6B8E23, #2F2F2F);
    border: 2px solid #B8860B;
    border-radius: 0;
}

/* Combat Ready Styling */
.combat-ready {
    border: 3px solid #DC2626;
    background: linear-gradient(45deg, #7F1D1D, #DC2626, #7F1D1D);
    animation: combat-ready-glow 2s infinite;
}

@keyframes combat-ready-glow {
    0%, 100% { box-shadow: 0 0 15px rgba(220, 38, 38, 0.5); }
    50% { box-shadow: 0 0 25px rgba(220, 38, 38, 0.8); }
}

/* Drill Sergeant Alert */
.drill-alert {
    background: linear-gradient(45deg, #7F1D1D, #DC2626);
    border: 3px solid #FBBF24;
    animation: urgent-flash 1.5s infinite;
}

@keyframes urgent-flash {
    0%, 100% { border-color: #FBBF24; }
    50% { border-color: #F59E0B; }
}

/* Military Shadows and Depth */
.military-shadow {
    box-shadow: 
        0 10px 15px -3px rgba(0, 0, 0, 0.3), 
        0 4px 6px -2px rgba(0, 0, 0, 0.2), 
        0 0 0 2px rgba(184, 134, 11, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

/* Camouflage Pattern Overlay */
.camo-pattern {
    background-image: 
        radial-gradient(ellipse at top, rgba(107, 142, 35, 0.3) 0%, transparent 50%),
        radial-gradient(ellipse at bottom, rgba(139, 69, 19, 0.3) 0%, transparent 50%),
        radial-gradient(ellipse at left, rgba(47, 47, 47, 0.3) 0%, transparent 50%),
        radial-gradient(ellipse at right, rgba(75, 85, 99, 0.3) 0%, transparent 50%);
    background-size: 120px 80px, 100px 120px, 140px 60px, 80px 100px;
    background-position: 0 0, 60px 40px, 30px 80px, 90px 20px;
}

/* Custom Scrollbar - Military Theme */
::-webkit-scrollbar {
    width: 12px;
}

::-webkit-scrollbar-track {
    background: linear-gradient(45deg, #2F2F2F, #1F2937);
    border-radius: 6px;
}

::-webkit-scrollbar-thumb {
    background: linear-gradient(45deg, #B8860B, #6B8E23, #8B4513);
    border-radius: 6px;
    border: 2px solid #2F2F2F;
}

::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(45deg, #FFD700, #9ACD32, #A0522D);
}

/* Border styling for gold accents */
.border-gold {
    border-color: #B8860B;
}

/* Military typography for emphasis */
.text-military {
    font-family: 'Impact', 'Arial Black', sans-serif;
    text-transform: uppercase;
    letter-spacing: 2px;
}