/* Om Research — entry gate overlay skin. Colors come from --omr-* vars set inline. */

/* Belt-and-suspenders: ensure the gate and all its children remain interactive even
   when the dialog has not yet been promoted to the browser top layer and the plugin's
   own `body { pointer-events:none }` cover is active. */
#omr-gate,
#omr-gate *,
#omr-gate *::before,
#omr-gate *::after {
        pointer-events: auto !important;
}

#omr-gate,
#omr-gate.omr-gate {
        box-sizing: border-box;
        align-items: center;
        justify-content: center;
        font-family: var(--omr-font, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif);
        color: var(--omr-text, #eaf2fb);
}
#omr-gate::backdrop {
        background: var(--omr-backdrop, rgba(4, 16, 30, .72));
        backdrop-filter: blur(var(--omr-blur, 8px));
}
#omr-gate *,
#omr-gate *::before,
#omr-gate *::after { box-sizing: border-box; }

.omr-gate-shell {
        width: 100%;
        min-height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 28px 16px;
        background: var(--omr-bg, var(--omr-navy, #04101e));
        background-size: cover;
        background-position: center;
}
.omr-gate-card {
        width: 100%;
        max-width: 460px;
        background: var(--omr-card, rgba(9, 24, 44, .92));
        border: 1px solid rgba(255, 255, 255, .08);
        border-radius: var(--omr-radius, 18px);
        padding: 34px 30px;
        box-shadow: 0 24px 60px rgba(0, 0, 0, .45);
        text-align: center;
}
.omr-gate-logo { max-height: 46px; margin: 0 auto 18px; display: block; }
.omr-gate-wordmark { font-size: 20px; font-weight: 800; margin-bottom: 16px; color: var(--omr-text, #fff); }
.omr-gate-h2 { font-size: 22px; line-height: 1.3; margin: 0 0 10px; color: var(--omr-text, #fff); }
.omr-gate-intro { font-size: 14px; line-height: 1.55; color: var(--omr-muted, #9fb2c8); margin: 0 0 20px; }

.omr-gate-check {
        display: flex;
        gap: 10px;
        align-items: flex-start;
        text-align: left;
        font-size: 13.5px;
        line-height: 1.5;
        color: var(--omr-text, #dbe7f5);
        background: rgba(255, 255, 255, .04);
        border: 1px solid rgba(255, 255, 255, .08);
        border-radius: 12px;
        padding: 12px 14px;
        margin: 0 0 10px;
        cursor: pointer;
}
.omr-gate-check input { margin-top: 2px; width: 18px; height: 18px; accent-color: var(--omr-accent, #0ea5e9); flex: 0 0 auto; }

.omr-gate-enter {
        appearance: none;
        border: 0;
        width: 100%;
        margin-top: 10px;
        padding: 14px 18px;
        border-radius: 12px;
        font-size: 15.5px;
        font-weight: 700;
        color: #fff;
        background: linear-gradient(135deg, var(--omr-accent, #0ea5e9), var(--omr-accent2, #38bdf8));
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        transition: opacity .15s ease, transform .05s ease;
}
.omr-gate-enter:hover { opacity: .94; }
.omr-gate-enter:active { transform: translateY(1px); }
.omr-gate-enter:disabled { opacity: .5; cursor: not-allowed; }

.omr-gate-fine { font-size: 11.5px; line-height: 1.5; color: var(--omr-fine, #7f93a9); margin: 16px 0 0; }
.omr-gate-fine a { color: var(--omr-accent, #38bdf8); }
.omr-gate-exit { font-size: 12.5px; margin: 12px 0 0; color: var(--omr-muted, #9fb2c8); }
.omr-gate-exit a { color: var(--omr-accent, #38bdf8); font-weight: 600; }

@media (max-width: 520px) {
        .omr-gate-card { padding: 26px 20px; }
        .omr-gate-h2 { font-size: 20px; }
}
