/* ===========================
   GENERAL
=========================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:Arial, Helvetica, sans-serif;
}

body{

    background:#eef2f7;

    padding:40px;

}


/* ===========================
   CONTAINER
=========================== */

.container{

    max-width:1000px;

    margin:auto;

    background:white;

    padding:40px;

    border-radius:12px;

    box-shadow:0 8px 25px rgba(0,0,0,.15);

}


/* ===========================
   HEADER
=========================== */

.header{

    text-align:center;

    margin-bottom:35px;

}

.header h1{

    color:#0d6efd;

    font-size:38px;

}

.header p{

    color:#666;

    margin-top:10px;

}


/* ===========================
   SECTION
=========================== */

.section{

    margin-top:35px;

}

.section h2{

    color:#0d6efd;

    margin-bottom:20px;

    border-left:6px solid #0d6efd;

    padding-left:10px;

}


/* ===========================
   ROW
=========================== */

.row{

    display:flex;

    gap:20px;

    margin-bottom:20px;

}


/* ===========================
   FORM GROUP
=========================== */

.form-group{

    flex:1;

    display:flex;

    flex-direction:column;

}


/* ===========================
   LABEL
=========================== */

label{

    margin-bottom:8px;

    font-weight:bold;

    color:#444;

}


/* ===========================
   INPUT
=========================== */

input,

select,

textarea{

    width:100%;

    padding:12px;

    border:1px solid #ccc;

    border-radius:8px;

    font-size:15px;

}


input:focus,

select:focus,

textarea:focus{

    outline:none;

    border:1px solid #0d6efd;

    box-shadow:0 0 5px rgba(13,110,253,.4);

}


/* ===========================
   TEXTAREA
=========================== */

textarea{

    resize:vertical;

}


/* ===========================
   BUTTONS
=========================== */

.buttons{

    margin-top:35px;

    display:flex;

    justify-content:center;

    gap:20px;

}


button{

    padding:14px 35px;

    border:none;

    border-radius:8px;

    cursor:pointer;

    font-size:16px;

    font-weight:bold;

    transition:.3s;

}


#generateBtn{

    background:#0d6efd;

    color:white;

}


#generateBtn:hover{

    background:#084298;

}


button[type="reset"]{

    background:#6c757d;

    color:white;

}


button[type="reset"]:hover{

    background:#565e64;

}


/* ===========================
   MOBILE
=========================== */

@media(max-width:768px){

.row{

    flex-direction:column;

}

.container{

    padding:20px;

}

.header h1{

    font-size:28px;

}

}