/* Fondo de cantera/mina de arena con parallax + card de login en glassmorphism. */
body:has(.fi-simple-layout) {
    background: #0f0b07;
}

.quarry-bg {
    position: fixed;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    perspective: 1px;
    transform-style: preserve-3d;
}

.quarry-bg__layer {
    position: absolute;
    inset: -10% -10%;
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: cover;
    will-change: transform;
}

/* Cielo: degradado cálido de atardecer sobre cantera. */
.quarry-bg__sky {
    transform: translateZ(-3px) scale(4);
    background: linear-gradient(180deg, #1a1410 0%, #3a2416 28%, #8a5a22 58%, #c9922a 78%, #e8b866 100%);
}

/* Montañas lejanas: silueta poligonal recortada con clip-path. */
.quarry-bg__mountains-far {
    transform: translateZ(-2px) scale(3);
    background: linear-gradient(180deg, rgba(40,26,15,.85), rgba(25,16,9,.95));
    clip-path: polygon(
        0% 100%, 0% 72%, 8% 65%, 16% 70%, 24% 58%, 33% 68%,
        42% 60%, 50% 71%, 58% 62%, 67% 72%, 76% 63%, 85% 73%,
        93% 66%, 100% 74%, 100% 100%
    );
}

/* Terrazas escalonadas de la cantera: bordes rectos apilados. */
.quarry-bg__terraces {
    transform: translateZ(-1px) scale(2);
    background: linear-gradient(180deg, rgba(58,42,26,.9), rgba(35,25,15,.97));
    clip-path: polygon(
        0% 100%, 0% 82%, 15% 82%, 15% 76%, 32% 76%, 32% 84%,
        48% 84%, 48% 74%, 64% 74%, 64% 80%, 80% 80%, 80% 70%,
        100% 70%, 100% 100%
    );
}

/* Montículos de arena en primer plano: dunas suaves recortadas. */
.quarry-bg__dunes {
    transform: translateZ(0);
    background: linear-gradient(180deg, rgba(180,128,40,1), rgba(120,82,28,1));
    clip-path: polygon(
        0% 100%, 0% 88%, 10% 84%, 22% 90%, 35% 82%, 48% 91%,
        60% 83%, 74% 92%, 88% 85%, 100% 90%, 100% 100%
    );
}

.quarry-bg__vignette {
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 80% 70% at 50% 40%, transparent 0%, rgba(10,7,4,.55) 100%);
}

/* Card de autenticación: glassmorphism sobre el fondo de cantera. */
.fi-simple-layout {
    position: relative;
    z-index: 1;
    background: transparent !important;
}

.fi-simple-main-ctn {
    background: transparent !important;
}

.fi-simple-main {
    background: rgba(30, 22, 14, 0.45) !important;
    backdrop-filter: blur(20px) saturate(140%);
    -webkit-backdrop-filter: blur(20px) saturate(140%);
    border: 1px solid rgba(232, 184, 102, 0.25) !important;
    box-shadow:
        0 8px 32px rgba(0, 0, 0, 0.45),
        inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
    border-radius: 1.25rem !important;
    animation: quarry-card-in .6s cubic-bezier(.22, 1, .36, 1);
}

.fi-simple-main * {
    color: #f5ead9;
}

.fi-simple-main .fi-input-wrp {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(232, 184, 102, 0.3) !important;
}

.fi-simple-main input.fi-input {
    background: transparent !important;
    color: #fff !important;
}

.fi-simple-main input.fi-input::placeholder {
    color: rgba(245, 234, 217, 0.45) !important;
}

.fi-simple-main label {
    color: rgba(245, 234, 217, 0.85) !important;
}

@keyframes quarry-card-in {
    from { opacity: 0; transform: translateY(18px) scale(.98); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

@media (prefers-reduced-motion: reduce) {
    .fi-simple-main { animation: none; }
}

.quarry-credit {
    position: relative;
    z-index: 1;
    display: flex;
    justify-content: center;
    gap: .5rem;
    padding: 1.5rem 1rem 2rem;
    font-size: .8125rem;
    color: rgba(245, 234, 217, 0.55);
}

.quarry-credit__sep {
    color: rgba(245, 234, 217, 0.3);
}
