/* ============================================

   EMS Core - Design System Foundation

   Modern, Professional UI Design System

   ============================================ */

@import url(https://db.onlinewebfonts.com/c/d8c3c276bfc50eb876897d00332d505e?family=Quincy+CF);

@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');



:root {

    /* ============================================

       COLOR PALETTE - Primary Colors

       ============================================ */

    --ems-primary: #9E663D;

    --ems-primary-rgb: 158, 102, 61;

    --ems-primary-darker: #7d4d2d;

    --ems-primary-deep: #855230;

    --ems-primary-surface: #f5efe9;

    --ems-secondary: #0f0f0f;

    --ems-secondary-rgb: 15, 15, 15;

    --ems-white: #ffffff;

    --ems-white-rgb: 255, 255, 255;

    /* Special Gray-800 for shadows/overlay if needed */

    --ems-black-rgb: 0, 0, 0;



    /* Indigo-500 */

    --ems-primary-hover: #0f0f0f;

    --ems-secondary-hover: #9E663D;

    /* Indigo-600 */

    --ems-primary-dark: #0f0f0f;

    /* Alias for hover/dark */

    --ems-primary-light: #818cf8;

    /* Indigo-400 */

    --ems-primary-focus: rgba(var(--ems-primary-rgb), 0.15);



    --ems-accent: #3b82f6;

    /* Blue-500 */



    /* Semantic Colors */

    --ems-success: #9E663D;

    /* Green-500 */

    --ems-success-bg: #dcfce7;

    --ems-success-text: #166534;

    --ems-success-border: #86efac;



    --ems-error: #ef4444;

    /* Red-500 */

    --ems-error-rgb: 239, 68, 68;

    --ems-error-focus: rgba(var(--ems-error-rgb), 0.25);

    --ems-error-bg: #fee2e2;

    --ems-error-text: #991b1b;

    --ems-error-border: #fca5a5;



    --ems-warning: #f59e0b;

    /* Amber-500 */

    --ems-warning-bg: #fef3c7;

    --ems-warning-text: #92400e;

    --ems-warning-border: #fde047;



    --ems-info: #3b82f6;

    /* Blue-500 */

    --ems-info-bg: #e0e7ff;

    --ems-info-text: #3730a3;

    --ems-info-border: #c7d2fe;



    /* Neutral Colors */

    --ems-text-primary: #111827;

    /* Gray-900 */

    --ems-text-secondary: #374151;

    /* Gray-700 */

    --ems-text-muted: #6b7280;

    /* Gray-500 */

    --ems-text-muted-light: #4b5563;



    --ems-border: #d1d5db;

    /* Gray-300 */

    --ems-border-light: #e5e7eb;

    /* Gray-200 */

    --ems-border-hover: #9ca3af;



    --ems-bg: #f8fafc;

    --ems-bg-surface: #ffffff;

    --ems-bg-secondary: #f1f5f9;

    /* Gray-100 */

    --ems-bg-tertiary: #e2e8f0;

    /* Gray-200 */

    --ems-surface-hover: #f9fafb;



    /* Slate palette */

    --ems-slate-50: #f8fafc;

    --ems-slate-100: #f1f5f9;

    --ems-slate-200: #e2e8f0;

    --ems-slate-300: #cbd5e1;

    --ems-slate-400: #94a3b8;

    --ems-slate-500: #64748b;

    --ems-slate-600: #475569;

    --ems-slate-700: #334155;

    --ems-slate-800: #1e293b;

    --ems-slate-900: #0f172a;



    /* Verification badge tokens */

    --ems-verified-text: #16a34a;

    --ems-verified-bg: #ecfdf5;

    --ems-verified-border: #d1fae5;

    --ems-pending-text: #d97706;

    --ems-pending-bg: #fffbeb;

    --ems-pending-border: #fef3c7;

    --ems-unverified-text: #dc2626;

    --ems-unverified-bg: rgba(var(--ems-error-rgb), 0.1);

    --ems-unverified-border: rgba(var(--ems-error-rgb), 0.2);

    --ems-verified-bg-tint: rgba(34, 197, 94, 0.12);

    --ems-verified-border-tint: rgba(34, 197, 94, 0.25);

    --ems-pending-bg-tint: rgba(245, 158, 11, 0.12);

    --ems-pending-border-tint: rgba(245, 158, 11, 0.25);



    /* Extended status / UI tokens */

    --ems-success-vivid: #22c55e;

    --ems-success-notice-bg: #b5f9d4;

    --ems-emerald-600: #059669;

    --ems-emerald-700: #047857;

    --ems-emerald-800: #065f46;

    --ems-emerald-300: #6ee7b7;

    --ems-emerald-50: #ecfdf5;

    --ems-emerald-200: #a7f3d0;

    --ems-red-50: #fef2f2;

    --ems-red-200: #fecaca;

    --ems-red-700: #b91c1c;

    --ems-rose-500: #e11d48;

    --ems-rose-50: #fff1f2;

    --ems-rose-100: #ffe4e6;

    --ems-orange-700: #c2410c;

    --ems-orange-50: #fff7ed;

    --ems-orange-100: #ffedd5;

    --ems-orange-300: #fdba74;

    --ems-blue-600: #2563eb;

    --ems-blue-800: #1e40af;

    --ems-blue-50: #eff6ff;

    --ems-blue-200: #dbeafe;

    --ems-sky-50: #f0f9ff;

    --ems-sky-100: #e0f2fe;

    --ems-sky-500: #0ea5e9;

    --ems-sky-600: #0369a1;

    --ems-sky-200: #bae6fd;

    --ems-sky-900: #0c4a6e;

    --ems-green-700: #15803d;

    --ems-green-200: #bbf7d0;

    --ems-amber-200: #fde68a;

    --ems-amber-700: #b45309;

    --ems-violet-50: #f3e8ff;

    --ems-violet-700: #7e22ce;

    --ems-violet-200: #e9d5ff;

    --ems-indigo-700: #4338ca;

    --ems-blue-100: #eef6ff;

    --ems-blue-300: #93c5fd;

    --ems-blue-400: #bfdbfe;

    --ems-cyan-800: #155e75;

    --ems-red-50-soft: #fff7f7;

    --ems-warning-icon-bg: rgba(245, 158, 11, 0.12);

    --ems-error-icon-bg: rgba(220, 38, 38, 0.1);

    --ems-info-icon-bg: rgba(37, 99, 235, 0.1);

    --ems-overlay-dark: rgba(0, 0, 0, 0.5);

    --ems-overlay-secondary: rgba(var(--ems-secondary-rgb), 0.6);

    --ems-border-subtle: #edf2f7;

    --ems-admin-bg: #f0f0f7;

    --ems-admin-border: #e0e0e9;

    --ems-google-blue: #4285f4;

    --ems-google-red: #d93025;

    --ems-bootstrap-danger: #dc3545;

    --ems-icon-stroke: #33363F;

    --ems-brand-indigo: #6366f1;



    /* ============================================

       TYPOGRAPHY

       ============================================ */

    --ems-font-family: 'Quincy CF', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;

    --ems-font-montserrat: 'Montserrat', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, monospace;



    /* Type Scale */

    --ems-h1-size: 32px;

    --ems-h1-line: 1.2;

    --ems-h1-weight: 700;



    --ems-h2-size: 24px;

    --ems-h2-line: 1.3;

    --ems-h2-weight: 600;



    --ems-h3-size: 20px;

    --ems-h3-line: 1.4;

    --ems-h3-weight: 600;



    --ems-h4-size: 18px;

    --ems-h4-line: 1.5;

    --ems-h4-weight: 600;



    --ems-body-large-size: 16px;

    --ems-body-large-line: 1.6;

    --ems-body-large-weight: 400;



    --ems-body-size: 14px;

    --ems-body-line: 1.6;

    --ems-body-weight: 400;



    --ems-small-size: 13px;

    --ems-small-line: 1.5;

    --ems-small-weight: 400;



    --ems-xs-size: 12px;

    --ems-xs-line: 1.4;



    --ems-caption-size: 11px;

    --ems-caption-line: 1.4;

    --ems-caption-weight: 500;



    --ems-font-weight-regular: 400;

    --ems-font-weight-medium: 500;

    --ems-font-weight-semibold: 600;

    --ems-font-weight-bold: 700;

    --ems-line-height-base: 1.5;



    /* ============================================

       SPACING SYSTEM

       ============================================ */

    --ems-space-xs: 4px;

    --ems-space-sm: 8px;

    --ems-space-md: 16px;

    --ems-space-lg: 24px;

    --ems-space-xl: 32px;

    --ems-space-2xl: 48px;



    /* Legacy Spacing Aliases */

    --ems-space-1: 4px;

    --ems-space-2: 8px;

    --ems-space-3: 12px;

    --ems-space-4: 16px;

    --ems-space-5: 20px;

    --ems-space-6: 24px;

    --ems-space-8: 32px;

    --ems-space-10: 40px;

    --ems-space-12: 48px;

    --ems-space-16: 64px;



    /* ============================================

       BORDER RADIUS

       ============================================ */

    --ems-radius-sm: 6px;

    --ems-radius-xs: 4px;

    --ems-radius-md: 8px;

    --ems-radius-lg: 12px;

    --ems-radius-xl: 16px;

    --ems-radius-full: 9999px;



    /* ============================================

       SHADOWS

       ============================================ */

    --ems-shadow-sm: 0 1px 2px 0 rgba(var(--ems-black-rgb), 0.05);

    --ems-shadow-md: 0 4px 6px -1px rgba(var(--ems-black-rgb), 0.1), 0 2px 4px -1px rgba(var(--ems-black-rgb), 0.06);

    --ems-shadow-lg: 0 10px 15px -3px rgba(var(--ems-black-rgb), 0.1), 0 4px 6px -2px rgba(var(--ems-black-rgb), 0.05);

    --ems-shadow-xl: 0 20px 25px -5px rgba(var(--ems-black-rgb), 0.1), 0 10px 10px -5px rgba(var(--ems-black-rgb), 0.04);

    --ems-shadow-card: 0 10px 30px rgba(var(--ems-black-rgb), 0.05);

    --ems-shadow-dropdown: 0 4px 12px rgba(var(--ems-black-rgb), 0.12);

    --ems-shadow-footer-up: 0 -4px 10px rgba(var(--ems-black-rgb), 0.05);



    /* ============================================

       TRANSITIONS

       ============================================ */

    --ems-transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);

    --ems-transition-normal: 250ms cubic-bezier(0.4, 0, 0.2, 1);

    --ems-transition-slow: 400ms cubic-bezier(0.4, 0, 0.2, 1);



    /* ============================================

       Z-INDEX SCALE

       ============================================ */

    --ems-z-dropdown: 1000;

    --ems-z-sticky: 1020;

    --ems-z-fixed: 1030;

    --ems-z-modal-backdrop: 1040;

    --ems-z-modal: 1050;

    --ems-z-popover: 1060;

    --ems-z-tooltip: 1070;

    --ems-z-modal-overlay-elevated: 99999;

    --ems-z-modal-elevated: 100000;

    --ems-z-modal-overlay-stacked: 100999;

    --ems-z-modal-stacked: 101000;

    --ems-z-dropdown-menu-elevated: 100001;

    --ems-z-topmost: 100002;

    --ems-z-emulation-banner: 999999;

    --ems-z-emulation-modal: 1000000;



    /* Specific Component Values */

    --ems-password-toggle-size: 30px;

    --ems-password-icon-size: 20px;

    --ems-password-input-padding-right: 45px;

    --ems-ripple-size: 300px;

    --ems-link-underline-height: 2px;

    --ems-link-underline-offset: -2px;

    --ems-transform-hover-y: -2px;

    --ems-transform-focus-y: -1px;

    --ems-transform-slide-y: -10px;



    /* Layout */

    --ems-container-width: 1400px;

    --ems-container-padding: 16px;

    --ems-auth-form-width: 600px;

    --ems-border-width: 1px;

    --ems-header-height: 64px;

    --ems-header-logo-height: 40px;

    --ems-header-bg: var(--ems-bg-surface);

    --ems-header-border: var(--ems-border-light);

    --ems-header-link: var(--ems-text-primary);

    --ems-header-link-hover: var(--ems-primary);

    --ems-header-link-active: var(--ems-primary);

    --ems-header-submenu-bg: var(--ems-bg-surface);

    --ems-header-logo-max-width: 220px;

    --ems-header-submenu-min-width: 220px;

    --ems-header-site-name-max: 40vw;

    --ems-z-header: var(--ems-z-sticky);



    /* Breakpoints (documentation / JS; media queries keep matching literals) */

    --ems-breakpoint-sm: 640px;

    --ems-breakpoint-md: 768px;

    --ems-breakpoint-lg: 1024px;

    --ems-wp-admin-bar-sm: 782px;



    /* Isolation / banner extras */

    --ems-overlay-workflow: rgba(20, 24, 29, 0.66);

    --ems-glass-surface: rgba(255, 255, 255, 0.7);

    --ems-glass-card: rgba(255, 255, 255, 0.65);

    --ems-glass-border: rgba(255, 255, 255, 0.5);

    --ems-glass-inset: inset 0 1px 0 rgba(255, 255, 255, 0.6);

    --ems-shadow-glass: 0 20px 40px rgba(0, 0, 0, 0.03), var(--ems-glass-inset);

    --ems-shadow-glass-card: 0 10px 20px rgba(0, 0, 0, 0.01);

    --ems-shadow-glass-card-hover: 0 20px 30px rgba(158, 102, 61, 0.06);

    --ems-primary-mid: #c59b7b;

    --ems-family-tip-bg: #f0f7ff;

    --ems-family-tip-border: #0073aa;

    --ems-family-tip-text: #013243;

    --ems-warning-banner-bg: #fff8e5;

    --ems-warning-banner-border: #dba617;

    --ems-warning-banner-text: #8a6d1d;

    --ems-warning-banner-accent: #f0d58c;

    --ems-warning-banner-strong: #996800;

    --ems-terms-bg: #f5f3ff;

    --ems-terms-border: #c4b5fd;

    --ems-terms-text: #1e1b4b;

    --ems-terms-title: #5b21b6;

    --ems-terms-icon: #6d28d9;

    --ems-terms-accent: #7c3aed;

    --ems-link: #2563eb;

    --ems-link-hover: #1d4ed8;

    --ems-text-body: #1f2937;



    /* Aliases for ems-ui.css compatibility (to be refactored out) */

    --ems-color-primary: var(--ems-primary);

    --ems-color-primary-hover: var(--ems-primary-hover);

    --ems-color-primary-light: var(--ems-primary-light);

    --ems-color-primary-focus: var(--ems-primary-focus);

    --ems-color-bg: var(--ems-bg);

    --ems-color-surface: var(--ems-bg-surface);

    --ems-color-surface-hover: var(--ems-surface-hover);

    --ems-color-bg-secondary: var(--ems-bg-secondary);

    --ems-color-text-main: var(--ems-text-primary);

    --ems-color-text-secondary: var(--ems-text-secondary);

    --ems-color-text-muted: var(--ems-text-muted);

    --ems-color-text-muted-light: var(--ems-text-muted-light);

    --ems-color-border: var(--ems-border);

    --ems-color-border-light: var(--ems-border-light);

    --ems-color-border-hover: var(--ems-border-hover);

    --ems-color-success-bg: var(--ems-success-bg);

    --ems-color-success-text: var(--ems-success-text);

    --ems-color-success-border: var(--ems-success-border);

    --ems-color-warning-bg: var(--ems-warning-bg);

    --ems-color-warning-text: var(--ems-warning-text);

    --ems-color-warning-border: var(--ems-warning-border);

    --ems-color-info-bg: var(--ems-info-bg);

    --ems-color-info-text: var(--ems-info-text);

    --ems-color-info-border: var(--ems-info-border);

    --ems-color-danger-bg: var(--ems-error-bg);

    --ems-color-danger-text: var(--ems-error-text);

    --ems-color-danger-border: var(--ems-error-border);

    --ems-color-error: var(--ems-error);

    --ems-color-white: var(--ems-white);

    --ems-color-neutral-light: var(--ems-bg-secondary);

    --ems-color-neutral-hover: var(--ems-border-light);

    --ems-danger: var(--ems-error);

    --ems-text-tertiary: var(--ems-text-muted);

    --ems-font-size-h1: var(--ems-h1-size);

    --ems-font-size-h2: var(--ems-h2-size);

    --ems-font-size-h3: var(--ems-h3-size);

    --ems-font-size-base: var(--ems-body-size);

    --ems-font-size-sm: var(--ems-small-size);

    --ems-font-size-xs: var(--ems-xs-size);

    --ems-font-size-lg: var(--ems-body-large-size);

}



/* ============================================

   RESPECT REDUCED MOTION

   ============================================ */

@media (prefers-reduced-motion: reduce) {

    #ems-plugin *,

    #ems-plugin *::before,

    #ems-plugin *::after,

    #ems-plugin-modals *,

    #ems-plugin-modals *::before,

    #ems-plugin-modals *::after,

    .ems-plugin-scope *,

    .ems-plugin-scope *::before,

    .ems-plugin-scope *::after,

    .ems-page-loader *,

    .ems-page-loader *::before,

    .ems-page-loader *::after {

        animation-duration: 0.01ms !important;

        animation-iteration-count: 1 !important;

        transition-duration: 0.01ms !important;

    }

}



/* ============================================

   BASE TYPOGRAPHY (scoped to EMS plugin container)

   ============================================ */

#ems-plugin,

#ems-plugin-modals,

.ems-plugin-scope {

    font-family: var(--ems-font-montserrat);

    color: var(--ems-text-primary);

    line-height: 1.5;

}



#ems-plugin h1,

#ems-plugin h2,

#ems-plugin h3,

#ems-plugin h4,

#ems-plugin h5,

#ems-plugin h6,

#ems-plugin-modals h1,

#ems-plugin-modals h2,

#ems-plugin-modals h3,

#ems-plugin-modals h4,

#ems-plugin-modals h5,

#ems-plugin-modals h6,

.ems-plugin-scope h1,

.ems-plugin-scope h2,

.ems-plugin-scope h3,

.ems-plugin-scope h4,

.ems-plugin-scope h5,

.ems-plugin-scope h6 {

    font-family: var(--ems-font-family);

}



#ems-plugin p,

#ems-plugin span,

#ems-plugin li,

#ems-plugin a,

#ems-plugin button,

#ems-plugin input,

#ems-plugin select,

#ems-plugin textarea,

#ems-plugin-modals p,

#ems-plugin-modals span,

#ems-plugin-modals li,

#ems-plugin-modals a,

#ems-plugin-modals button,

#ems-plugin-modals input,

#ems-plugin-modals select,

#ems-plugin-modals textarea,

.ems-plugin-scope p,

.ems-plugin-scope span,

.ems-plugin-scope li,

.ems-plugin-scope a,

.ems-plugin-scope button,

.ems-plugin-scope input,

.ems-plugin-scope select,

.ems-plugin-scope textarea {

    font-family: var(--ems-font-montserrat);

}



/* ============================================

   UTILITY CLASSES

   ============================================ */

.ems-fade-in {

    animation: fadeIn var(--ems-transition-slow) ease-out;

}



.ems-slide-up {

    animation: slideUp var(--ems-transition-slow) ease-out;

}



@keyframes fadeIn {

    from {

        opacity: 0;

    }



    to {

        opacity: 1;

    }

}



@keyframes slideUp {

    from {

        opacity: 0;

        transform: translateY(20px);

    }



    to {

        opacity: 1;

        transform: translateY(0);

    }

}



.ems-hidden {

    display: none !important;

}

body.ems-plugin-page .tribe-tickets__tickets-item-quantity.ems-native-qty-hidden{
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

img{
    width:100%;
    height:auto;
}