/* ==========================================================
CREATE EVENT
========================================================== */
.create-event-hero{
    padding:70px 20px;
    background:#FFFFFF;
}
.create-event-container{
    max-width:900px;
    margin:0 auto;
}
input[type="date"]::-webkit-calendar-picker-indicator {
  cursor: pointer;
  /* Pull the icon closer or adjust layout */
  margin-right: 10px; 
}
input#eventDate {
    max-width: 25%;
}
/* ==========================================================
Cards
========================================================== */
.form-card, .submit-card {
    background: #fff;
    border-radius: 22px;
    padding: 40px 40px 0;
    margin-bottom: 0;
    /* box-shadow: 0 15px 45px rgba(0, 0, 0, .06); */
}
.form-card:first-child {
    padding-top: 0;
}
.form-card h4 {
    margin: 0 0 10px;
    font-size: 18px!important;
    font-weight: 600!important;
}
.form-card .titlewith__radio h4 {
    margin: 0;
}
.divider{
    height:1px;
    background:#E5E5E5;
    margin:25px 0 35px;
}
/* ==========================================================
Fields
========================================================== */
.form-grid{
    display:grid;
    gap:28px;
}
.form-field{
    display:flex;
    flex-direction:column;
}
.form-field label{
    margin-bottom:10px;
    font-weight:600;
}
.form-field input{
    height:56px;
    border:1px solid #DDD;
    border-radius:8px;
    padding:0 22px;
    font-size:16px;
    transition:.25s;background-color: #ffffff;
}
.form-field input:focus{
    outline:none;
    border-color:var(--brand);
    box-shadow:0 0 0 4px rgba(var(--brand-rgb),.12);
}
input[type="date"]:not(:valid):before {
    content: "mm/dd/yyyy";
    color: #a9a9a9;
    margin-right: 0.5em;
}
/* ==========================================================
Listing
========================================================== */
.listing-option{
    display:block;
    border:1px solid #dddddd;
    border-radius:20px;
    padding:28px;
    margin-bottom:24px;
    cursor:pointer;
    transition: border-color .25s, box-shadow .25s, transform .25s;
}
.listing-option:hover{
    border-color:#ADADAD;/*color-mix(in srgb, var(--brand) 20%, transparent);*/
    transform:translateY(-2px);
}
.listing-option.active{
    border-color:#8C8C8C;/*color-mix(in srgb, var(--brand) 75%, transparent);*/
    box-shadow: 0 10px 30px #303030;/*0 10px 30px rgba(var(--brand-rgb),.15);*/
}

.listing-option input{
    margin-right:12px;
}

.listing-content h3{
    display:inline;
    font-size:18px;
}
.listing-price {
    /* color: var(--brand); */
    font-size: 16px;
    font-weight: normal;
    margin: 10px 0 18px;
    font-style: italic;
}
.listing-content p{
    line-height:1.8;
    color:#111111;font-size: 16px;
}
.listing-content a{
    color:#0B75C8;
    text-decoration:none;
    font-weight:600;display: inline-block;
    margin-top: 10px;
}
.listing-content a:hover{
    text-decoration:underline;
}
/* ==========================================================
Expandable Sections
========================================================== */
.listing-expand{
    max-height:0;
    overflow:hidden;
    opacity:0;
    transition: max-height .35s ease, opacity .25s ease, margin .35s ease;
    margin-top:0;
}
.listing-expand.open{
    max-height:350px;
    opacity:1;
    margin-top:10px;
}
.listing-expand p{
    margin-top:0;
}
.listing-expand input{
    width:100%;
    height:54px;
    border:1px solid #DDD;
    border-radius:12px;
    padding:0 18px;
}
.listing-option input[type="radio"]{
    display:none;
}
.custom-radio{
    width:24px;
    height:24px;
    border-radius:50%;
    border:1px solid #dddddd;
    display:inline-block;
    margin-right:16px;
    vertical-align:middle;
    position:relative;
}
.listing-option:hover span.custom-radio {
    border-color: #adadad;
}
.listing-option.active .custom-radio{
    border-color:#8c8c8c;/*color-mix(in srgb, var(--brand) 60%, transparent);*/
}

.listing-option.active .custom-radio:after{
    content:"";
    position:absolute;
    width:12px;
    height:12px;
    background:#303030;/*color-mix(in srgb, var(--brand) 60%, transparent);*/
    border-radius:50%;
    left:5px;
    top:5px;
}
.titlewith__radio {
    display: flex;
    align-items: center;
}
/* ==========================================================
Buttons
========================================================== */
.primary-button {
    background: color-mix(in srgb, var(--brand) 20%, transparent);
    border: none;
    padding: 18px 34px;
    border-radius: 14px;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
    transition: .25s;
    border-radius: 10px;
}

.primary-button:hover{
    background: color-mix(in srgb, var(--brand) 50%, transparent);
}
.submit-card {
    text-align: center;
    box-shadow: none;
    margin: 0;
    border-radius: 0;
    background: transparent;
}
.field-error{
    color:#dc2626;
    font-size:13px;
    margin-top:6px;
    min-height:18px;
    line-height:1.4;
}
.field-invalid{
    border-color:#dc2626 !important;
    box-shadow:0 0 0 2px rgba(220,38,38,.12);
}
#submitEventButton{
    transition:all .25s ease;
}
#submitEventButton:disabled{
    opacity:.8;
    cursor:not-allowed;
}
.button-spinner{
    width:16px;
    height:16px;
    margin-right:8px;
    border:2px solid rgba(255,255,255,.35);
    border-top-color:#fff;
    border-radius:50%;
    display:inline-block;
    vertical-align:middle;
    animation:buttonSpin .7s linear infinite;
}
/* Target the "mm/dd/yyyy" text parts */
input[type="date"]::-webkit-datetime-edit,
input[type="date"]::-webkit-datetime-edit-fields-wrapper,
input[type="date"]::-webkit-datetime-edit-text,
input[type="date"]::-webkit-datetime-edit-month-field,
input[type="date"]::-webkit-datetime-edit-day-field,
input[type="date"]::-webkit-datetime-edit-year-field {
  color: #c0c0c0; /* Match your input placeholder gray */
}

/* Target the calendar icon */
input[type="date"]::-webkit-calendar-picker-indicator {
  opacity: 0.4; /* Soften the icon color to match placeholders */
  filter: grayscale(100%);
}
@keyframes buttonSpin{
    to{
        transform:rotate(360deg);
    }
}
.submission-success {
    text-align: center;
    padding: 60px 30px;
    min-height: calc(100vh - 120px);
    padding: 45px 24px;
    background: #f7f7f5;
}
.submission-success-icon{
    width:80px;
    height:80px;
    border-radius:50%;
    background:#16a34a;
    color:#fff;
    font-size:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0 auto 30px;
}
.submission-reference{
    margin:35px auto;
    padding:18px;
    max-width:320px;
    border:1px solid #ddd;
    border-radius:12px;
    background:#fafafa;
}
.submission-reference span{
    display:block;
    margin-top:8px;
    font-size:20px;
    font-weight:700;
}
.submission-small{
    color:#666;
    margin-top:25px;
}
.submit-another-button {
    margin-top: 35px;
    background: var(--brand);
    color: #fff;
    padding: 15px 40px;
}
select#location-filter {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url(data:image/svg+xml;utf8,<svg fill='black' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>);
    background-repeat: no-repeat;
    background-position: right 8px center;
    padding-right: 28px;
}
#submitevent-headdesc {
    font-size: 20px;
}
#eventSubmissionContainer .form-card h2 {
    margin-bottom: 15px;
}
/* Style the placeholder text color for the date field */
input[type="date"] {
  color: #a9a9a9; /* Adjust hex code to match your exact placeholder gray */
}

/* Ensure selected date text reverts to standard text color once picked */
input[type="date"]:valid {
  color: #000000;
}

/* Change the native calendar picker icon color */
input[type="date"]::-webkit-calendar-picker-indicator {
  opacity: 0.5;
  filter: invert(0.5); /* Adjust opacity or filter to match the desired gray */
  cursor: pointer;
}
.ai_eventdetails img {
    border-top-left-radius: 25px;
    border-top-right-radius: 25px;
}
/* ==========================================================
Responsive
========================================================== */
@media(max-width:768px){
.page-header h1{
    font-size:36px;
}
.form-card, .submit-card{
    padding:28px;
}
}
/* =========================================================
   EVENT PAYMENT SUCCESS
========================================================= */

.payment-success-section {
    min-height: calc(100vh - 120px);
    padding: 45px 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f7f7f5;
}

.payment-success-card {
    width: 100%;
    max-width: 720px;
    padding: 32px 70px;
    background: #fff;
    border: 1px solid #e4e4e4;
    border-radius: 22px;
    text-align: center;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.06);
}

.payment-success-icon {
    width: 50px;
    height: 50px;
    margin: 0 auto 22px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: var(--brand, #00843d);
    color: #fff;
}

.payment-success-label {
    margin-bottom: 25px;

    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;

    color: var(--brand, #00843d);
}

.payment-success-card h1 {
    margin: 0 0 18px;

    font-size: clamp(32px, 5vw, 46px);
    line-height: 1.08;
    font-weight: 700;

    color: #111;
}

.payment-success-intro {
    max-width: 570px;
    margin: 0 auto 38px;

    font-size: 18px;
    line-height: 1.55;

    color: #555;
}


/* DETAILS */

.payment-success-details {
    margin: 0 0 32px;

    border-top: 1px solid #e5e5e5;
    border-bottom: 1px solid #e5e5e5;
}

.success-detail-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;

    padding: 18px 4px;

    border-bottom: 1px solid #e5e5e5;

    text-align: left;
}

.success-detail-row:last-child {
    border-bottom: 0;
}

.success-detail-row span {
    color: #777;
    font-size: 15px;
}

.success-detail-row strong {
    color: #111;
    font-size: 16px;
    font-weight: 600;
    text-align: right;
}


/* NOTE */

.payment-success-note {
    max-width: 560px;
    margin: 0 auto 32px;

    font-size: 15px;
    line-height: 1.6;

    color: #666;
}


/* BUTTONS */

.payment-success-actions {
    display: flex;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
}

.success-primary-button,
.success-secondary-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 50px;
    padding: 0 28px;

    border-radius: 8px;

    font-size: 15px;
    font-weight: 600;

    text-decoration: none;

    transition:
        transform 0.15s ease,
        opacity 0.15s ease;
}

.success-primary-button {
    background: var(--brand, #00843d);
    color: #fff;
}

.success-secondary-button {
    background: #fff;
    color: #111;
    border: 1px solid #ccc;
}

.success-primary-button:hover,
.success-secondary-button:hover {
    transform: translateY(-1px);
}
.submission-success div#eventSubmissionContainer {
    display: flex;
    align-items: center;
    justify-content: center;
}
#submitevent-headdesc span {
    display: block;
    width: 100%;margin-top: 15px;
}
/* MOBILE */

@media (max-width: 767px) {

    .payment-success-section {
        padding: 50px 18px;
    }

    .payment-success-card {
        padding: 42px 22px;
        border-radius: 16px;
    }

    .payment-success-icon {
        width: 62px;
        height: 62px;
    }

    .payment-success-card h1 {
        font-size: 34px;
    }

    .payment-success-intro {
        font-size: 16px;
    }

    .success-detail-row {
        gap: 15px;
        padding: 16px 0;
    }

    .success-detail-row strong {
        max-width: 60%;
    }

    .payment-success-actions {
        flex-direction: column;
    }

    .success-primary-button,
    .success-secondary-button {
        width: 100%;
    }
    .create-event-hero {
        padding: 35px 20px 24px;
    }
    .form-grid {
        display: grid;
        gap: 0px;
    }
    input#eventDate {
        max-width: 100%;text-align: left;
    }
    /* 1. Target iOS Safari's native date text wrapper */
input[type="date"]::-webkit-date-and-time-value {
  text-align: left !important;
  min-height: 1em; /* Prevents text from clipping on some iOS versions */
}
    .form-card, .submit-card {
        padding: 0 10px;
    }
    .listing-option {
        border-radius: 8px;padding: 18px;
    }
    .listing-price {
        margin: 10px 0 8px;
    }
    .primary-button {
        padding: 10px 20px;
        font-size: 16px;
    }
    .submit-card {
    margin: 40px 0 20px;
}
}