:root{
    --black:#000;
    --white:#fff;
    --accent:#fe8d14;
    --accent-hover:#e97d0f;
    --bg:#f8f8f6;
    --card:#fff;
    --section:#fcfcfa;
    --text:#111;
    --muted:rgba(0,0,0,.65);
    --border:rgba(0,0,0,.1);
    --radius:5px;
    --transition:.3s ease;
  }
  *{
    box-sizing:border-box;
  }
  body{
    font-family:Inter,Arial,sans-serif;
    background:var(--bg);
    margin:0;
    padding:30px;
    color:var(--text);
  }
  .container{
    max-width:900px;
    margin:auto;
  }
  .card{
    background:var(--card);
    padding:40px;
    border-radius:var(--radius);
    box-shadow:0 20px 50px rgba(0,0,0,.08);
    border:1px solid var(--border);
  }
  h1{
    text-align:center;
    color:var(--black);
    font-size:34px;
    margin-bottom:10px;
  }
  p{
    text-align:center;
    color:var(--muted);
  }
  .section{
    margin-bottom:28px;
    padding:25px;
    border-radius:var(--radius);
    background:var(--section);
    border:1px solid var(--border);
  }
  h2{
    font-size:20px;
    color:var(--black);
    margin-bottom:18px;
    border-left:4px solid var(--accent);
    padding-left:12px;
  }
  label{
    display:block;
    margin:12px 0 6px;
    color:var(--muted);
    font-weight:600;
  }
  input,
  textarea,
  select{
    width:100%;
    padding:14px;
    border:1px solid rgba(0,0,0,.15);
    border-radius:var(--radius);
    font-size:15px;
    background:var(--white);
    color:var(--black);
    transition:var(--transition);
  }
  textarea{
    min-height:120px;
    resize:vertical;
  }
  input:hover,
  textarea:hover,
  select:hover{
    border-color:var(--accent);
  }
  input:focus,
  textarea:focus,
  select:focus{
    outline:none;
    border-color:var(--accent);
    box-shadow:0 0 0 3px rgba(254,141,20,.15);
  }
  input::placeholder,
  textarea::placeholder{
    color:rgba(0,0,0,.4);
  }
  .options label{
    display:inline-flex;
    align-items:center;
    margin-right:15px;
    font-weight:500;
    color:var(--muted);
  }
  .options input{
    width:auto;
    margin-right:8px;
    accent-color:var(--accent);
  }
  button{
    width:100%;
    padding:16px;
    background:var(--black);
    color:var(--accent);
    border:none;
    border-radius:var(--radius);
    font-size:16px;
    font-weight:700;
    cursor:pointer;
    transition:var(--transition);
  }
  button:hover{
    background:var(--accent);
    color:var(--black);
    transform:translateY(-2px);
  }
  #message{
    text-align:center;
    font-weight:600;
    margin-top:18px;
  }
  @media(max-width:600px){
    body{
      padding:15px;
    }
    .card{
      padding:20px;
    }
    .section{
      padding:18px;
    }
    h1{
      font-size:26px;
    }
  }

  #message{
    display:block;
    margin-top:20px;
    padding:15px;
    border-radius:8px;
    text-align:center;
    font-size:15px;
    font-weight:600;
}

.success-message{
    color:#16803c;
}

.error-message{
    color:#d00000;
}