
/* Custom Theme: Vandy */
body.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 {
    --primary-color: #1c1c1c;
    background: linear-gradient(135deg, #1c1c1c 0%, #b49248 100%) !important;
    min-height: 100vh !important;
    background-attachment: fixed !important;
}

/* Apply same background to container for seamless appearance */
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 {
    background: transparent !important;
}

.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .card {
    background: rgba(255, 255, 255, 0.95) !important;
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
    border-top: 4px solid #b49248 !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1) !important;
    border-radius: 12px !important;
}

.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .btn-primary,
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 button[type="submit"] {
    background: #1c1c1c !important;
    border-color: #1c1c1c !important;
    color: #ffffff !important;
    font-weight: 600 !important;
}

.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .btn-primary:hover,
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 button[type="submit"]:hover,
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 #submitBtn:hover {
    background: color-mix(in srgb, #1c1c1c 85%, black) !important;
    border-color: color-mix(in srgb, #1c1c1c 85%, black) !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.25) !important;
}

.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .btn-primary:active,
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .btn-primary:focus,
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 button[type="submit"]:active,
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 button[type="submit"]:focus {
    background: color-mix(in srgb, #1c1c1c 75%, black) !important;
    border-color: color-mix(in srgb, #1c1c1c 75%, black) !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2) !important;
}

.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .list-group-item {
    border-left: 4px solid #b49248 !important;
    padding-left: 16px !important;
}

.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .form-control:focus {
    border-color: #b49248 !important;
    box-shadow: 0 0 0 0.2rem rgba(180, 146, 72, 0.25) !important;
}

/* Outline buttons - use accent color */
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .btn-outline-primary {
    color: #b49248 !important;
    border-color: #b49248 !important;
    background: rgba(255, 255, 255, 0.9) !important;
    font-weight: 600 !important;
}

.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .btn-outline-primary:hover {
    background: #b49248 !important;
    border-color: #b49248 !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
    transform: translateY(-1px) !important;
}

/* Active/Checked state for button toggle groups */
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .btn-check:checked + .btn-outline-primary,
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .btn-outline-primary:active,
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .btn-outline-primary.active {
    background: #b49248 !important;
    border-color: #b49248 !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2), inset 0 2px 8px rgba(0, 0, 0, 0.15) !important;
    font-weight: 700 !important;
    transform: translateY(0) !important;
}

/* Icons inside active/checked buttons */
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .btn-check:checked + .btn-outline-primary .bi,
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .btn-outline-primary:active .bi,
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .btn-outline-primary.active .bi {
    color: #ffffff !important;
}

/* Event detail icons - use custom theme's accent color */
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .bi-calendar-event-fill[style*="color: var(--primary-color)"],
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .bi-clock-fill[style*="color: var(--primary-color)"],
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .bi-geo-alt-fill[style*="color: var(--primary-color)"],
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .bi-calendar-event-fill,
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .bi-clock-fill,
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .bi-geo-alt-fill {
    color: #b49248 !important;
}

/* Taken/Disabled option styling - "Show taken options" feature */
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .list-group-item input:disabled + label {
    color: #b49248 !important;
    cursor: not-allowed !important;
    opacity: 0.6 !important;
    text-decoration: line-through !important;
}

.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .list-group-item input:disabled ~ small {
    color: #1c1c1c !important;
    font-weight: 600 !important;
}

.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .list-group-item:has(input:disabled) {
    background: color-mix(in srgb, #b49248 15%, transparent) !important;
    border-color: color-mix(in srgb, #b49248 40%, transparent) !important;
    opacity: 0.75 !important;
}

.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .list-group-item:has(input:disabled):hover {
    background: color-mix(in srgb, #b49248 15%, transparent) !important;
    border-color: color-mix(in srgb, #b49248 40%, transparent) !important;
    cursor: not-allowed !important;
    transform: none !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1) !important;
}

/* Keep navbar logo "signup" text default teal regardless of custom theme */
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .brand-text-white {
    color: #01A2B4 !important;
}

/* Button fill is too close to the page background to read on its own.
   Give it a visible edge wherever it is not sitting on a card. */
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .btn-primary,
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 button[type="submit"],
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 #submitBtn {
    border: 2px solid #777777 !important;
}

/* Inside a card the background is near-white, so no edge is needed. Reset the
   whole border (not just its color) so these buttons keep their exact previous
   geometry - a same-color 2px border is invisible but still 4px of extra box. */
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .card .btn-primary,
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .card button[type="submit"],
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .card #submitBtn,
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .modal-content .btn-primary,
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .modal-content button[type="submit"],
.theme-custom-b9de750c-2d9e-4157-a68e-198274d570c8 .modal-content #submitBtn {
    border: none !important;
}
