/* Pop-up windows: the travel agent email form and the login window.
   Loaded without blocking the page, as they only show after a click
   (each starts hidden by its own style="display:none"). */


/* Login Modal Styles */
.login-purchase-info {
  margin-top: 1.2em;
  margin-bottom: 0.5em;
  color: #234;
  font-size: 1em;
}
.login-purchase-link {
  display: inline-block;
  background: #fff;
  color: #1565c0;
  border: 1px solid #b5d0e6;
  border-radius: 6px;
  padding: 0.55em 1em;
  font-size: 1em;
  font-weight: 500;
  text-decoration: none;
  box-shadow: 0 1px 3px rgba(21,101,192,0.05);
  transition: background 0.2s, color 0.2s;
  margin: 0 0.2em;
}
.login-purchase-link:hover {
  background: #eaf2fb;
  color: #0d47a1;
}

.login-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0,0,0,0.5);
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
}
.login-modal-card {
  background: linear-gradient(90deg, #eaf2fb 0%, #cbe2fa 100%);
  box-shadow: 0 4px 24px rgba(30,60,120,0.10);
  border-radius: 14px;
  max-width: 400px;
  margin: auto;
  text-align: center;
  padding: 2.5em 2em 2em 2em;
  border: 1px solid #b5d0e6;
}
.login-modal-title {
  color: #123;
  margin-bottom: 0.7em;
}
.login-btn-patreon {
  background: #c8432f;
}
.login-btn-main {
  display: inline-block;
  background: #fff;
  color: #1565c0;
  border: 1px solid #b5d0e6;
  border-radius: 6px;
  padding: 0.65em 1.2em;
  font-size: 1em;
  font-weight: 500;
  text-decoration: none;
  box-shadow: 0 1px 3px rgba(21,101,192,0.05);
  transition: background 0.2s;
  margin-top: 1em;
}
.login-btn-main:hover {
  background: #eaf2fb;
}
.login-error {
  color: #c00;
  margin-top: 1em;
  display: none;
}
.login-modal-hr {
  margin: 2em 0 1.5em 0;
  border: 0;
  border-top: 1px solid #cbe2fa;
}

/* Email Modal Styles */
.modal {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0,0,0,0.4);
}
.modal-content {
    background-color: #fefefe;
    padding: 20px;
    border: 1px solid #888;
    width: 80%;
    max-width: 500px;
    border-radius: 5px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.close-button {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
}
.close-button:hover,
.close-button:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}
#emailForm label {
    display: block;
    margin-top: 10px;
}
#emailForm input, #emailForm textarea {
    width: 100%;
    padding: 8px;
    margin-top: 5px;
    box-sizing: border-box;
}
.modal-buttons {
    margin-top: 20px;
    text-align: center;
    display:inline-grid;
    width: 100%;
    grid-template-columns: 1fr 1fr;
}
.modal-buttons button {
    padding: 10px 20px;
    margin-left: 10px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
}
#cancelBtn {
    background-color: #ccc;
}
#sendBtn {
    background-color: #4CAF50;
    color: white;
}
#passengersDiv {
    text-align: center;
    display:inline-grid;
    width: 100%;
    grid-template-columns: 1fr 1fr;
}

#passengerDiv {
    text-align: right;
    display:inline-grid;
    width: 100%;
    grid-template-columns: 1fr 1fr;
}

#stateDiv {
    padding: 10px 0px;
    display:inline-grid;
    width: 100%;
    grid-template-columns: 1fr 1fr;
}

#passengerDiv input {
    text-align: center;
    width: 50px;
}
