/* --- Global Mouse Effect --- */
body {
    cursor: default; /* Default cursor, magic adds on top */
}

.silis-particle {
    position: absolute;
    pointer-events: none;
    background: radial-gradient(circle, #D4AF37, transparent);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    animation: silis-fade-out 0.8s ease-out forwards;
    z-index: 999999;
    box-shadow: 0 0 8px rgba(212, 175, 55, 0.6);
}

@keyframes silis-fade-out {
    0% { opacity: 1; transform: translate(-50%, -50%) scale(1); }
    100% { opacity: 0; transform: translate(-50%, -100%) scale(0.2); }
}

/* --- Booking Form Styles --- */
.silis-booking-container {
    background-color:  #111;
    color: #eee;
    padding: 30px;
    border-radius: 8px;
    border: 1px solid #333;
    box-shadow: 0 10px 30px rgba(0,0,0,0.5);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    width: 100%;
    box-sizing: border-box;
}

.silis-booking-container form {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.silis-booking-container .silis-row {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
}

.silis-booking-container .silis-field {
    flex: 1;
    min-width: 200px; /* Responsive Breakpoint */
    display: flex;
    flex-direction: column;
}

.silis-booking-container .silis-field.full-width {
    width: 100%;
    flex: 100%;
}

.silis-booking-container .silis-field label {
    font-size: 0.85rem;
    margin-bottom: 6px;
    color: #bbb;
    font-weight: 500;
}

/* === CRITICAL CHANGE HERE === */
/* All input, select, and textarea fields inside the container */
.silis-booking-container .silis-input {
    background: #1a1a1a;
    border: 1px solid #333;
    color: #fff;
    padding: 12px;
    border-radius: 4px;
    font-size: 0.95rem;
    transition: border-color 0.3s, box-shadow 0.3s;
    width: 100%;
    box-sizing: border-box; /* Crucial for layout */
}

/* === CRITICAL CHANGE HERE === */
/* Focus styles for all input types */
.silis-booking-container .silis-input:focus {
    outline: none;
    border-color: #c5a059;
    box-shadow: 0 0 5px rgba(197, 160, 89, 0.3);
}

.silis-booking-container .silis-btn {
    background: #c5a059;
    color: #000;
    border: none;
    padding: 14px;
    font-size: 1rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    cursor: pointer;
    border-radius: 4px;
    transition: background 0.3s, transform 0.1s;
    margin-top: 10px;
    width: 100%;
}

.silis-booking-container .silis-btn:hover {
    background: #e6bd6b;
}

.silis-booking-container .silis-btn:active {
    transform: scale(0.98);
}

.silis-booking-container #silis-message {
    text-align: center;
    font-size: 0.9rem;
    margin-top: 10px;
    min-height: 20px;
}

.silis-booking-container .silis-success { color: #c5a059; }
.silis-booking-container .silis-error { color: #ff6b6b; }
