@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

*{
  box-sizing:border-box;
}

body{
  margin:0;
  min-height:100vh;
  font-family:'Inter',sans-serif;
  background:
    radial-gradient(circle at top left,#2563eb33,transparent 30%),
    radial-gradient(circle at bottom right,#7c3aed33,transparent 30%),
    linear-gradient(135deg,#020617,#0f172a,#111827);
  color:white;
  display:flex;
  justify-content:center;
  align-items:center;
  padding:30px;
}

.container{
  width:100%;
  max-width:760px;

  background:rgba(15,23,42,0.75);
  backdrop-filter:blur(18px);

  border:1px solid rgba(255,255,255,0.08);

  border-radius:28px;

  padding:40px;

  box-shadow:
    0 10px 40px rgba(0,0,0,0.45),
    inset 0 1px 0 rgba(255,255,255,0.05);

  position:relative;
  overflow:hidden;
}

.container::before{
  content:"";
  position:absolute;
  inset:-2px;

  background:linear-gradient(
    135deg,
    #3b82f6,
    #8b5cf6,
    #06b6d4
  );

  z-index:-1;

  filter:blur(30px);
  opacity:0.25;
}

h1{
  margin:0 0 35px;
  text-align:center;

  font-size:2.2rem;
  font-weight:700;
  letter-spacing:1px;

  background:linear-gradient(90deg,#60a5fa,#a78bfa,#22d3ee);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

form{
  display:flex;
  flex-direction:column;
  gap:22px;
}

label{
  font-size:0.95rem;
  font-weight:600;
  margin-bottom:6px;
  display:block;
  color:#dbeafe;
}

input,
select{
  width:100%;

  padding:14px 16px;

  border-radius:16px;

  border:1px solid rgba(255,255,255,0.08);

  background:rgba(30,41,59,0.7);

  color:white;

  outline:none;

  transition:
    border-color .2s,
    transform .2s,
    background .2s,
    box-shadow .2s;

  font-size:15px;
}

input::placeholder{
  color:#94a3b8;
}

input:focus,
select:focus{
  border-color:#60a5fa;

  background:rgba(30,41,59,0.95);

  box-shadow:
    0 0 0 4px rgba(96,165,250,0.15),
    0 0 25px rgba(59,130,246,0.25);

  transform:translateY(-1px);
}

input[type="file"]{
  padding:14px;
  cursor:pointer;
}

input[type="file"]::file-selector-button{
  border:none;
  background:linear-gradient(135deg,#2563eb,#7c3aed);
  color:white;
  padding:10px 14px;
  border-radius:10px;
  margin-right:12px;
  cursor:pointer;
  transition:0.2s;
}

input[type="file"]::file-selector-button:hover{
  opacity:0.85;
}

select{
  cursor:pointer;
}

button{
  margin-top:10px;

  padding:16px;

  border:none;
  border-radius:18px;

  background:linear-gradient(
    135deg,
    #2563eb,
    #7c3aed
  );

  color:white;

  font-size:1rem;
  font-weight:700;
  letter-spacing:0.5px;

  cursor:pointer;

  transition:
    transform .2s,
    box-shadow .2s,
    opacity .2s;

  box-shadow:
    0 10px 25px rgba(37,99,235,0.35);
}

button:hover{
  transform:translateY(-2px) scale(1.01);

  box-shadow:
    0 18px 35px rgba(124,92,237,0.4);
}

button:active{
  transform:scale(0.98);
}

#result{
  margin-top:25px;

  text-align:center;

  font-weight:600;

  color:#93c5fd;

  min-height:24px;
}

@media(max-width:700px){

  body{
    padding:16px;
  }

  .container{
    padding:24px;
    border-radius:22px;
  }

  h1{
    font-size:1.7rem;
  }

}
