/* Whilo waitlist modal — browse-only mode */
.whilo-waitlist-overlay {
 position: fixed;
 inset: 0;
 z-index: 100000;
 background: rgba(0, 0, 0, 0.72);
 display: flex;
 align-items: center;
 justify-content: center;
 padding: 20px;
 backdrop-filter: blur(4px);
}

.whilo-waitlist-overlay[hidden] {
 display: none !important;
}

.whilo-waitlist-card {
 background: #fff;
 color: #111;
 width: 100%;
 max-width: 440px;
 border-radius: 16px;
 padding: 28px 28px 24px;
 box-shadow: 0 24px 80px rgba(0, 0, 0, 0.45);
 position: relative;
 max-height: 90vh;
 overflow-y: auto;
}

.whilo-waitlist-close {
 position: absolute;
 top: 12px;
 right: 14px;
 border: none;
 background: transparent;
 font-size: 22px;
 line-height: 1;
 cursor: pointer;
 color: #666;
 padding: 4px 8px;
}

.whilo-waitlist-close:hover {
 color: #000;
}

.whilo-waitlist-kicker {
 display: inline-block;
 background: #fff5f8;
 color: #ff0055;
 font-size: 10px;
 font-weight: 800;
 letter-spacing: 0.1em;
 text-transform: uppercase;
 padding: 4px 10px;
 border-radius: 999px;
 border: 1px solid #ffd6e5;
 margin-bottom: 12px;
}

.whilo-waitlist-card h2 {
 font-family: 'Archivo Black', 'Inter', sans-serif;
 font-size: 1.65rem;
 line-height: 1.15;
 margin-bottom: 8px;
}

.whilo-waitlist-card p.whilo-waitlist-lead {
 font-size: 14px;
 line-height: 1.65;
 color: #555;
 margin-bottom: 20px;
}

.whilo-waitlist-field {
 margin-bottom: 14px;
}

.whilo-waitlist-field label {
 display: block;
 font-size: 12px;
 font-weight: 600;
 margin-bottom: 6px;
 color: #333;
}

.whilo-waitlist-field input {
 width: 100%;
 padding: 12px 14px;
 border: 1px solid #e5e5e5;
 border-radius: 8px;
 font-size: 14px;
 font-family: inherit;
}

.whilo-waitlist-field input:focus {
 outline: none;
 border-color: #ff0055;
 box-shadow: 0 0 0 3px rgba(255, 0, 85, 0.12);
}

.whilo-waitlist-submit {
 width: 100%;
 margin-top: 6px;
 padding: 14px;
 border: none;
 border-radius: 8px;
 background: #ff0055;
 color: #fff;
 font-size: 14px;
 font-weight: 700;
 cursor: pointer;
 font-family: inherit;
}

.whilo-waitlist-submit:hover:not(:disabled) {
 background: #e6004d;
}

.whilo-waitlist-submit:disabled {
 opacity: 0.65;
 cursor: not-allowed;
}

.whilo-waitlist-msg {
 font-size: 13px;
 margin-top: 12px;
 min-height: 1.2em;
 line-height: 1.5;
}

.whilo-waitlist-msg.error {
 color: #b91c1c;
}

.whilo-waitlist-msg.ok {
 color: #047857;
 font-weight: 600;
}

.whilo-waitlist-foot {
 margin-top: 14px;
 font-size: 12px;
 color: #888;
 text-align: center;
}

body.whilo-waitlist-gated .dashboard-wrap,
body.whilo-waitlist-gated .header-container {
 pointer-events: none;
 user-select: none;
 opacity: 0.25;
 filter: blur(2px);
}

body.whilo-waitlist-gated-page main .login-card,
body.whilo-waitlist-gated-page main .signup-card {
 pointer-events: none;
 opacity: 0.2;
 filter: blur(3px);
}
