* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    background-color: #05021a;
    /* El azul oscuro de tu fondo */
    display: flex;
    justify-content: center;
    align-items: flex-start;
    min-height: 100vh;
    overflow-x: hidden;
}

/* EL LIENZO: Mantiene la forma del fondo siempre */
.main-container {
    width: 100vw;
    max-width: 500px;
    /* Proporción exacta de tu imagen 640x1600 */
    aspect-ratio: 640 / 1600;

    background-image: url('/casting1/formulario/fondo.avif');
    background-size: 100% 100%;
    background-position: center;
    background-repeat: no-repeat;

    position: relative;
    margin: 0 auto;
}

/* EL FORMULARIO: Capa invisible que cubre todo el lienzo */
.casting-form {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* SECCIÓN 1: La Hoja Beige (formula.svg) */
.hoja-area {
    position: absolute;
    width: 86%;
    /* Un poco menos para que no toque los bordes */
    left: 7%;
    top: 13%;
    /* Ajusta para que empiece justo debajo de 'FORMULARIO' */
    height: 48%;
    /* Definimos un alto para que no crezca hacia abajo */
}

.svg-base {
    width: 100%;
    display: block;
}

/* Inputs internos de la hoja */
.inputs-layer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.inp {
    position: absolute;
    left: 8%;
    width: 84%;
    height: 6.5%;
    background: transparent;
    border: none;
    outline: none;
    font-size: 4vw;
    /* Escala con el ancho de la pantalla */
    color: #000000;
}

/* Coordenadas para encajar en los cuadros blancos de tu formula.svg */
.i-nombre {
    top: 20.8%;
}

.i-edad {
    top: 37.8%;
}

.i-numero {
    top: 55%;
}

.i-mail {
    top: 72.5%;
}

.i-zona {
    top: 90%;
}

.i-personajes {
    top: 105.9%;
}

/* SECCIÓN 2: Elementos sobre el fondo oscuro */
.extras-area {
    position: absolute;
    width: 100%;
    left: 0;
    /* Bajamos este valor para que el input de videos NO toque la hoja beige */
    top: 71.5%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

/* El input del link de video */
.pill-input {
    width: 80%;
    height: 4.5%;
    /* Altura relativa al total del fondo */
    min-height: 40px;
    border-radius: 50px;
    border: 2px solid #f2a93a;
    background: white;
    text-align: center;
    font-size: 16px;
    outline: none;
}

/* Botones SVG */
.btn-asset {
    cursor: pointer;
    background: none;
    border: none;
    width: 100%;
    /* El botón ocupa todo el ancho para poder centrar su contenido */
    display: flex;
    justify-content: center;
    padding: 0;
    margin: 0;
}

.btn-asset img {
    width: 80%;
    /* Controlamos el tamaño real del botón aquí */
    max-width: 280px;
    display: block;
}

/* Ajuste específico para separar el botón ENVIAR del de SUBIR CV */
.btn-submit-container {
    margin-top: 5px;
}

/* Flecha y texto final */
.footer-tag {
    position: absolute;
    bottom: 3%;
    right: 8%;
    color: white;
    font-size: 3vw;
    text-align: right;
    line-height: 1.2;
}