:root { --primary: #0f74bd; --primary-light: #0f74bd; --bg: #050505; --text: #ffffff; --card-bg: rgba(255, 255, 255, 0.03); --border: rgba(255, 255, 255, 0.1); --font: 'Space Grotesk'!important; --section-spacing: clamp(80px, 15vh, 180px); --content-gap: clamp(40px, 5vh, 60px); --grid-gap: 24px; --header-height: 80px; --nav-gap: 0.1rem !important; --card: #ffffff; --radius: 20px; --shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); --bg-soft: #f8fafc; --ring: rgba(15, 116, 189, 0.3); --nav-color: #334155; --nav-hover: #0f74bd; --dropdown-bg: #ffffff; --ham-size: 40px; --ham-bar-w: 24px; --ham-bar-h: 2px; --ham-gap: 6px; --ham-color: #334155; --muted: #64748b; --text-main: #000000; --primary-hover: #095a8f; --drawer-w: 280px; --bg-hover: #f1f5f9; }

*, *::before, *::after { box-sizing: border-box; }

body.nav-open { overflow: hidden; height: 100dvh; touch-action: none; overscroll-behavior: contain; }

main { max-width: 1100px; margin: 30px auto; padding: 0 20px; box-sizing: border-box; }

input, select, textarea, button, .btn { font-size: 1rem !important; }

header {margin-left: 68px !important; display: flex; justify-content: space-between; align-items: center; height: var(--header-height); padding: 0 1.5rem; background: none !important; position: sticky; top: 20; z-index: 1000; border-bottom: none !important; }

header nav { display: flex; align-items: center; gap: var(--nav-gap); margin: 0; }

.logo2 { height: 100px; width: auto; max-width: 180px; object-fit: contain; display: block; margin: auto !important; }

.logo2-img { height: 100px; width: auto; display: block; }

.nav-link, .subnav-link { display: inline-flex; align-items: center; gap: 6px !important; padding: 10px 20px !important; color: var(--nav-color); text-decoration: none; border-radius: 20px; line-height: 1; transition: all .2s; font-weight: 600; font-size: 0.95rem !important; letter-spacing: 0.02em; }

.nav-link:hover, .subnav-link:hover { color: var(--nav-hover); }

.nav-icon, .subnav-link svg { width: 20px; height: 20px; display: inline-block; vertical-align: middle; flex: 0 0 20px; }

.nav-item { position: relative; }

.has-subnav .subnav { position: absolute; top: 120%; right: 0; min-width: 20px; padding: 6px; background: var(--dropdown-bg); border: 1px solid var(--border); border-radius: 20px; box-shadow: var(--shadow); display: none; z-index: 1000; }

.has-subnav:hover .subnav, .has-subnav:focus-within .subnav { display: block; }

.hamburger { appearance: none; -webkit-appearance: none; background: transparent !important; border: 0 !important; border-radius: 0 !important; margin: 0; padding: 0 !important; width: var(--ham-size); height: var(--ham-size); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; position: relative; z-index: 2147483647 !important; -webkit-tap-highlight-color: transparent !important; outline: none !important; box-shadow: none !important; top: -5px !important; }

.hamburger span { position: absolute; left: 50%; width: var(--ham-bar-w); height: var(--ham-bar-h); background: var(--ham-color); border-radius: 999px; transform: translateX(-50%); transition: transform .22s ease, opacity .18s ease, top .22s ease, background-color .2s; will-change: transform, opacity, top; margin-top: 0 !important; pointer-events: none; }

.hamburger span:nth-child(1) { top: calc(54% - var(--ham-gap) - var(--ham-bar-h)); }

.hamburger span:nth-child(2) { top: 50%; transform: translate(-50%, 50%); }

.hamburger span:nth-child(3) { top: calc(-18% + var(--ham-gap)); }

.hamburger.is-open span:nth-child(1) { top: 50%; transform: translate(-50%, -50%) rotate(45deg); }

.hamburger.is-open span:nth-child(2) { opacity: 0; transform: translate(-50%, -50%) scaleX(.5); }

.hamburger.is-open span:nth-child(3) { top: 50%; transform: translate(-50%, -50%) rotate(-45deg); }

@media (hover:hover) { .hamburger:hover span { background: transparent; } }

.card { background: var(--card); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow); margin-bottom: 24px; max-width: 100%; box-sizing: border-box; }

.card .head { padding: 14px 18px 0; }

.card .body { padding: 18px; }

.card h3 { color: var(--primary); margin: 0 0 6px; }

.card-header-flex { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; flex-wrap: wrap; gap: -1px !important; }

.card-header-flex h4 { margin: 0; font-size: 1.1rem; color: #0f74bd; font-weight: 700; }

.section { border: 1px solid var(--border); border-radius: 20px; padding: 20px; background: #fff; margin-bottom: 24px; max-width: 100%; box-sizing: border-box; }

.section[style*="border-color:#fecaca"] { max-width: 100%; margin-left: auto; margin-right: auto; margin-top: 10px !important; }

.btn { display: inline-flex; align-items: center; gap: 8px; border: 1px solid var(--border); border-radius: 20px; padding: 0.6rem 1rem; background: #fff; color: #ffffff; cursor: pointer; transition: all .2s; font-weight: 600; font-size: 0.9rem; min-width: 0; }

.btn:hover { border-color: #cbd5e1; background: #f8fafc; transform: translateY(-1px); box-shadow: 0 10px 22px rgba(2, 8, 23, .06); }

.btn.primary { border: none; color: #fff; background: #0f74bd; box-shadow: 0 4px 6px -1px rgba(15, 116, 189, 0.2); }

.btn.primary:hover { background: var(--primary-hover); box-shadow: 0 14px 36px rgba(15, 116, 189, .28); }

.btn.danger { border-color: #ffd1d6; background: #fff1f2; color: #b42318; }

.actions { display: flex; gap: 10px; flex-wrap: wrap; }

.field { display: grid; gap: 8px; margin-bottom: 16px; margin: 10px 0 14px; }

.field label { font-size: 0.85rem; color: #64748b; font-weight: 600; text-transform: uppercase; letter-spacing: 0.02em; }

.field input, .field textarea, .field select { width: 100%; padding: 10px 14px; border-radius: 20px; border: 1px solid var(--border); background: #fff; outline: none; transition: all .2s; font-size: 0.95rem; font-family: inherit; color: #000000; }

.field textarea { min-height: 110px; resize: vertical; }

.field input:focus, .field textarea:focus, .field select:focus { border-color: var(--primary); box-shadow: 0 0 0 4px var(--ring); ring: 2px solid var(--ring); }

.input-group, .input-prefix-wrapper { display: flex; align-items: center; border: 1px solid var(--border); border-radius: 20px; background: #fff; overflow: hidden; transition: border-color 0.2s, box-shadow 0.2s; width: 100%; max-width: 100%; margin-bottom: 0; }

.input-group:focus-within, .input-prefix-wrapper:focus-within { border-color: var(--primary); box-shadow: 0 0 0 3px var(--ring); }

.input-prefix-wrapper .prefix { padding: 0 0 0 1rem; color: var(--muted); font-size: 0.95rem; user-select: none; white-space: nowrap; }

.input-group-prefix { display: flex; align-items: center; gap: 8px; padding: 0 12px; background: #f1f5f9; border-right: 1px solid var(--border); color: #ffffff !important; font-size: 0.9rem; font-weight: 600; height: 42px; user-select: none; white-space: nowrap; }

.input-group-prefix svg { width: 18px; height: 18px; fill: currentColor; display: block; }

.input-group input, .input-prefix-wrapper input { border: none !important; box-shadow: none !important; border-radius: 0 !important; background: transparent !important; flex: 1; padding: 0 12px !important; height: 42px; font-size: 0.95rem; outline: none !important; min-width: 0; }

.input-prefix-wrapper input { padding-left: 4px !important; }

.col2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }

.badge { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 20px; border: 1px solid transparent; background: #fff; color: #000000; font-size: 0.75rem; font-weight: 700; text-transform: uppercase; }

.badge.ok { border-color: #bbf7d0; background: #dcfce7; color: #0f74bd; }

.badge.warn { border-color: #fed7aa; background: #ffedd5; color: #c2410c; }

.badge.neutral { background: #f1f5f9; color: #475569; border-color: #e2e8f0; }

.muted, .hint, .small-muted { color: #6b7280; }

.small-muted { font-size: .9rem; display: block; }

.data-row { display: flex; justify-content: space-between; align-items: center; padding: 12px 0;}

.data-row:last-child { border-bottom: none; }

.data-label { color: #64748b; font-size: 0.9rem; font-weight: 500; flex: 1; }

.data-value { color: #000000; font-weight: 600; text-align: right; max-width: 65%; overflow-wrap: break-word; flex: 2; }

.progress { width: 100%; height: 8px; border-radius: 999px; background: #eef2f7; overflow: hidden; border: 1px solid #e5e7eb; }

.progress > span { display: block; height: 100%; width: 0%; background: linear-gradient(90deg, #0f74bd, #095a8f); }

.editable-group .edit-layer { display: none; }

.editable-group .view-layer { display: block; animation: fadeIn 0.3s ease; }

.editable-group.editing .edit-layer { display: block; animation: fadeIn 0.3s ease; }

.editable-group.editing .view-layer { display: none; }

.editable-group.editing .btn-edit-trigger { display: none; }

@keyframes fadeIn { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: translateY(0); } }

.events-grid { width: 100%; max-width: 2000px !important; margin: 30px auto; padding: 0 24px; display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 24px; }

.event-card { position: relative; height: 340px; border-radius: 20px; background: #e2e8f0; overflow: hidden; cursor: pointer; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); isolation: isolate; border: 1px solid var(--border); display: flex; flex-direction: column; }

.event-card:hover { transform: translateY(-8px) scale(1.01); box-shadow: 0 20px 40px -5px rgba(0, 0, 0, 0.2); border-color: var(--primary); }

.event-banner-wrap, .event-cover { height: 180px; width: 100%; background: var(--bg-soft); position: relative; overflow: hidden; }

.event-banner-img, .event-img, .ec-bg { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s ease; }

.event-card:hover .event-banner-img, .event-card:hover .event-img { transform: scale(1.03); }

.ec-bg { position: absolute; inset: 0; z-index: 0; }

.event-card:hover .ec-bg { transform: scale(1.1); }

.ec-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.3) 40%, rgba(0,0,0,0.85) 90%); z-index: 1; transition: opacity 0.3s; }

.event-card:hover .ec-overlay { background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.5) 40%, rgba(0,0,0,0.95) 100%); }

.date-badge, .card-date { position: absolute; top: 12px; left: 12px; background: rgba(255, 255, 255, 0.95); backdrop-filter: blur(4px); padding: 6px 12px; border-radius: 20px; text-align: center; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12); color: #000000; line-height: 1.1; min-width: 55px; z-index: 10; }

.date-badge b, .card-date .day { display: block; font-size: 1.2rem; color: var(--primary); line-height: 1; font-weight: 800; letter-spacing: -0.05em; }

.date-badge span, .card-date .month { font-size: 0.75rem; text-transform: uppercase; font-weight: 700; color: #334155; margin-top: 2px; display: block; }

.ec-date { position: absolute; top: 16px; right: 16px; width: 54px; height: 54px; background: rgba(255, 255, 255, 0.15); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 20px; display: flex; flex-direction: column; align-items: center; justify-content: center; z-index: 2; box-shadow: 0 8px 16px rgba(0,0,0,0.1); }

.ec-date b { font-size: 1.2rem; line-height: 1; color: #fff; font-weight: 800; }

.ec-date span { font-size: 0.65rem; text-transform: uppercase; color: rgba(255,255,255,0.8); font-weight: 700; margin-top: 2px; }

.card-status, .ec-status { position: absolute; top: 16px; right: 16px; padding: 6px 12px; border-radius: 20px; font-size: 0.7rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; backdrop-filter: blur(8px); z-index: 10; box-shadow: 0 2px 4px rgba(0,0,0,0.1); }

.ec-status { left: 16px; right: auto; background: rgba(0, 0, 0, 0.4); color: rgba(255,255,255,0.9); border: 1px solid rgba(255,255,255,0.1); display: flex; align-items: center; gap: 6px; }

.card-status.live, .ec-status.published { background: rgba(16, 185, 129, 0.9); color: white; }

.ec-status.published { background: rgba(16, 185, 129, 0.2); color: #6ee7b7; border-color: rgba(16, 185, 129, 0.3); }

.card-status.draft, .ec-status.draft { background: rgba(255, 255, 255, 0.9); color: #64748b; }

.ec-status.draft { background: rgba(255, 255, 255, 0.1); color: #cbd5e1; }

.ec-dot { width: 6px; height: 6px; border-radius: 50%; background: currentColor; }

.published .ec-dot { box-shadow: 0 0 8px currentColor; animation: pulse 2s infinite; }

@keyframes pulse { 0% { opacity: 1; } 50% { opacity: 0.4; } 100% { opacity: 1; } }

.event-body, .card-content { padding: 20px; flex: 1; display: flex; flex-direction: column; }

.ec-content { position: absolute; bottom: 0; left: 0; width: 100%; padding: 24px; z-index: 2; transform: translateY(0); transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); }

.event-card:hover .ec-content { transform: translateY(-8px); }

.event-title, .card-title, .ec-title { font-size: 1.15rem; font-weight: 700; margin-bottom: 8px; color: #0f74bd; line-height: 1.3; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

.ec-title { color: #fff; font-size: 1.3rem; margin: 0 0 6px 0; line-height: 1.2; text-shadow: 0 2px 10px rgba(0,0,0,0.5); }

.event-meta, .card-info, .ec-meta { font-size: 0.9rem; color: #64748b; margin-bottom: 12px; display: flex; align-items: center; gap: 6px; font-weight: 500; }

.ec-meta { color: rgba(255, 255, 255, 0.75); }

.event-footer, .card-footer { margin-top: auto; padding-top: 16px; border-top: 1px solid #f1f5f9; display: flex; justify-content: space-between; align-items: center; color: var(--muted); font-size: 0.85rem; }

.ec-action { height: 0; opacity: 0; overflow: hidden; transition: all 0.3s ease; }

.event-card:hover .ec-action { height: 42px; opacity: 1; margin-top: 12px; }

.ec-btn { width: 100%; padding: 10px; background: #fff; color: #000000; border-radius: 20px; font-weight: 600; font-size: 0.9rem; border: none; cursor: pointer; display: flex; justify-content: center; align-items: center; gap: 8px; box-shadow: 0 4px 12px rgba(0,0,0,0.3); }

.ec-btn:hover { background: #f8fafc; color: var(--primary); }

.dropdown-menu { position: absolute; top: 100%; right: 0; margin-top: 10px; background: #fff; border: 1px solid var(--border); border-radius: 20px; box-shadow: var(--shadow); min-width: 220px; display: none; z-index: 50; overflow: hidden; padding: 10px !important; }

.dropdown-menu.show { display: block; animation: fadeIn 0.1s ease; }

.dropdown-item { display: flex; align-items: center; gap: 12px; padding: 12px 16px; color: #334155; text-decoration: none; font-size: 0.95rem; cursor: pointer; transition: background 0.1s; border-radius: 20px; margin-bottom: 2px; }

.dropdown-item:hover { background: none !important; color: #fff !important; padding-left: 20px; }

#editor-view, #overview-view { display: none; max-width: 100%; box-sizing: border-box; }

#overview-view { animation: fadeIn 0.3s ease; }

.editor-top-bar { display: flex; align-items: center; gap: 16px; margin-bottom: 30px; }

.back-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: 44px; padding: 0 18px; border: 1px solid var(--border); border-radius: 20px; background: #fff !important; color: #0f74bd !important; cursor: pointer; transition: all 0.25s cubic-bezier(0.2, 0.8, 0.2, 1); box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); font-size: 0.95rem; font-weight: 600; text-decoration: none; user-select: none; }

.back-btn:hover { background: #f8fafc; border-color: #cbd5e1; color: var(--primary); transform: translateX(-2px); box-shadow: 0 4px 8px -2px rgba(0, 0, 0, 0.1); }

.back-btn i { font-size: 1rem; transition: transform 0.2s ease; }

.back-btn:hover i { transform: translateX(-3px); }

.back-btn:active { transform: scale(0.97); }

.toast-container { position: fixed; bottom: 20px; right: 20px; display: flex; flex-direction: column; gap: 10px; z-index: 10000; pointer-events: none; }

.toast-item { background: #ffffff; color: #0f74bd; padding: 16px 20px; border-radius: 20px; box-shadow: 0 10px 30px rgba(0,0,0,0.15), 0 4px 6px rgba(0,0,0,0.05); display: flex; align-items: center; gap: 12px; min-width: 300px; max-width: 400px; font-family: 'Space Grotesk', sans-serif; font-size: 0.95rem; pointer-events: auto; opacity: 0; transform: translateX(100%); animation: slideIn 0.4s cubic-bezier(0.16, 1, 0.3, 1) forwards; }

.toast-item.success i { color: #10b981; } .toast-item.error i { color: #ef4444; } .toast-item.info { border-left-color: #3b82f6; } .toast-item.info i { color: #3b82f6; } .toast-item.hiding { animation: slideOut 0.4s cubic-bezier(0.16, 1, 0.3, 1) forwards; }

.toast { position: fixed; right: 20px; bottom: 20px; background: #0f74bd; color: #fff; padding: 12px 20px; border-radius: 20px; box-shadow: 0 12px 24px rgba(2, 8, 23, .18); opacity: 0; pointer-events: none; transition: all 0.3s ease; transform: translateY(10px); z-index: 3000; font-size: .95rem; font-weight: 500; }

.toast.show { opacity: 1; transform: translateY(0); } .toast.ok { background: #059669; } .toast.err { background: #dc2626; }

@keyframes slideIn { from { opacity: 0; transform: translateX(100%); } to { opacity: 1; transform: translateX(0); } }

@keyframes slideOut { from { opacity: 1; transform: translateX(0); } to { opacity: 0; transform: translateX(100%); } }

#merchant-logo-preview { width: 600px; height: 600px; max-width: 100%; border-radius: 20px; border: 1px solid var(--border); object-fit: cover; background: #f8fafc; }

.logo-preview-box { width: 260px; height: 140px; border: 1px solid var(--border); border-radius: 20px; background: transparent !important; display: flex; align-items: center; justify-content: center; padding: 10px; box-sizing: border-box; }

.logo-preview-box.checker { background: linear-gradient(45deg, #eef2f7 25%, transparent 25%) 0 0/18px 18px, linear-gradient(-45deg, #eef2f7 25%, transparent 25%) 0 0/18px 18px, linear-gradient(45deg, transparent 75%, #eef2f7 75%) 0 0/18px 18px, linear-gradient(-45deg, transparent 75%, #eef2f7 75%) 0 0/18px 18px, #fff; }

.logo-preview-box .preview-logo { max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; border: 0; background: transparent !important; }

.careers-intro { max-width: 800px; margin: 0 auto 24px; text-align: center; }

.careers-intro p { margin: auto !important; }

.job-foot { position: relative; border-radius: 20px; overflow: hidden; padding: 12px 16px; }

.job-foot::before { content: ""; position: absolute; inset: 0; background: #0f74bd; border-radius: 20px; z-index: 0; }

.job-foot .apply-btn { position: relative; z-index: 1; }

.job-description { margin-top: 20px; padding-top: 10px; }

.careers-section { margin-top: 40px; text-align: center; }

.benefits-grid { display: grid; gap: 20px; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); margin-top: 20px; }

.benefit-item h3 { font-size: 1.1rem; margin-bottom: 6px; }

.benefit-item p { font-size: 0.95rem; color: #555; }

.job-location { font-size: 0.9rem; color: #475569; display: block; white-space: normal; line-height: 1.35; margin-top: 4px; }

#careers-content, .container, .job-listings, .job-item, .job-title { position: relative; z-index: 1; }

.switch { position: relative; display: inline-block; width: 44px; height: 24px; }

.switch input { opacity: 0; width: 0; height: 0; }

.switch .slider { position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; transition: .4s; border-radius: 20px; }

.switch .slider:before { position: absolute; content: ""; height: 18px; width: 18px; left: 3px; bottom: 3px; background-color: white; transition: .4s; border-radius: 50%; }

.switch input:checked + .slider { background-color: #059669; }

.switch input:focus + .slider { box-shadow: 0 0 1px #059669; }

.switch input:checked + .slider:before { transform: translateX(20px); }

.switch-sm { position: relative; display: inline-block; width: 34px; height: 18px; }

.switch-sm input { opacity: 0; width: 0; height: 0; }

.switch-sm .slider { position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; transition: .4s; border-radius: 20px; }

.switch-sm .slider:before { position: absolute; content: ""; height: 12px; width: 12px; left: 3px; bottom: 3px; background-color: white; transition: .4s; border-radius: 50%; }

.switch-sm input:checked + .slider { background-color: var(--primary); }

.switch-sm input:checked + .slider:before { transform: translateX(16px); }

.ticket-group-badge { font-size: 0.7rem; color: var(--primary); background: #e0f2fe; padding: 2px 8px; border-radius: 20px; margin-right: 8px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.03em; }

.ticket-editable-row { margin-bottom: 12px; border: 1px solid var(--border); border-radius: 20px; background: var(--card); transition: all 0.2s; overflow: hidden; }

.date-picker-wrapper { position: relative; border: 1px solid var(--border); border-radius: 20px; padding: 10px 12px; background: #fff; display: flex; align-items: center; gap: 10px; transition: border-color 0.2s; }

.wizard-container { position: relative; overflow: hidden; padding: 5px; }

.wizard-step { display: none; animation: fadeIn 0.4s ease; }

.wizard-step.active { display: block; }

.step-indicators {margin-top: 5px; display: flex; gap: 8px; justify-content: center; margin-bottom: 20px; }

.step-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--border); transition: all 0.3s; }

.step-dot.active { background: var(--primary); transform: scale(1.2); }

.step-dot.completed { background: #707070; }

.role-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(100px, 1fr)); gap: 12px; margin-top: 10px; }

.role-option { border: 1px solid var(--border); border-radius: 20px; padding: 12px; text-align: center; cursor: pointer; transition: all 0.2s; background: #fff; }

.role-option:hover { border-color: var(--primary); background: var(--bg-soft); }

.role-option.selected { border: 1px; border-color: var(--primary); background: #e0f2fe; color: var(--primary); box-shadow: 0 0 0 2px var(--primary); }

.role-option i { font-size: 1.4rem; margin-bottom: 8px; display: block; }

.role-option span { font-size: 0.85rem; font-weight: 600; }

.glass-picker-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }

.role-chip { display: flex; align-items: center; justify-content: center; padding: 10px 8px; background: rgba(241, 245, 249, 0.6); border: 1px solid rgba(0, 0, 0, 0.05); border-radius: 20px; font-size: 0.85rem; color: #64748b; cursor: pointer; transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1); user-select: none; text-align: center; }

.role-chip:hover { background: rgba(255, 255, 255, 0.8); transform: translateY(-1px); box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05); }

.role-chip.active { background: rgba(15, 116, 189, 0.1); border-color: var(--primary); color: var(--primary); font-weight: 600; box-shadow: 0 4px 12px rgba(15, 116, 189, 0.15); }

.social-view-item { display: flex; align-items: center; gap: 12px; padding: 10px 0; border-bottom: 1px solid #f1f5f9; color: #334155; font-weight: 500; text-decoration: none; font-size: 0.95rem; transition: all 0.2s; }

.social-view-item:last-child { border-bottom: none; }

.social-view-item svg { width: 20px; height: 20px; fill: #94a3b8; flex-shrink: 0; transition: fill 0.2s; }

.social-view-item:hover { color: var(--primary); }

.social-view-item:hover svg { fill: var(--primary); }

.btn-delete-event { width: 40px; height: 40px; border-radius: 50%; border: 1px solid none !important; background: none !important; color: #dc2626; display: none; align-items: center; justify-content: center; cursor: pointer; transition: all 0.2s; }

.btn-delete-event:hover { background: #fee2e2; transform: scale(1.05); }

.editor-footer { position: sticky; bottom: 0; background: #fff; padding: 16px 20px; border-top: 1px solid var(--border); margin: 20px -20px -20px; display: flex; justify-content: flex-end; gap: 12px; border-radius: 0 0 20px 20px; z-index: 100; }

.slug-chip { background: #eef2f7; border: 1px solid #cbd5e1; border-radius: 20px; padding: 2px 10px; font-size: 0.8rem; cursor: pointer; transition: all 0.2s; color: #475569; }

.slug-chip:hover { background: #e0f2fe; border-color: #7dd3fc; color: #0f74bd; }

.media-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 16px; margin-top: 12px; align-items: start; }

.media-box { border: 2px dashed var(--border); border-radius: 20px; padding: 12px; position: relative; background: var(--bg-soft); transition: all 0.2s; display: flex; flex-direction: column; justify-content: center; align-items: center; overflow: hidden; width: 100%; min-height: 20px; text-align: center; }

.media-box:hover { border-color: var(--primary); background: transparent !important; }

.media-box.has-file { border-style: solid; padding: 0; background: #000; }

#box-square { aspect-ratio: 1 / 1; } #box-video { aspect-ratio: 1 / 1; } #box-rect { aspect-ratio: 16 / 7; grid-column: 1 / -1; }

.media-preview { width: 100%; height: 100%; object-fit: cover; position: absolute; inset: 0; z-index: 1; }

.media-overlay { position: relative; z-index: 2; pointer-events: none; padding: 10px; text-align: center; }

.media-actions { position: absolute; bottom: 10px; right: 10px; z-index: 3; display: flex; gap: 6px; opacity: 0; transition: opacity 0.2s; }

.media-box:hover .media-actions { opacity: 1; }

.req-badge { position: absolute; top: 10px; left: 10px; background: #dc2626; color: #fff; font-size: 0.7rem; padding: 2px 8px; border-radius: 20px; font-weight: 700; z-index: 3; text-transform: uppercase; }

.opt-badge { position: absolute; top: 10px; left: 10px; background: rgba(0,0,0,0.5); color: #fff; font-size: 0.7rem; padding: 2px 8px; border-radius: 20px; z-index: 3; }

.upload-btn { width: 32px; height: 32px; border-radius: 50%; background: #fff; border: 1px solid var(--border); color: var(--primary); cursor: pointer; display: flex; align-items: center; justify-content: center; pointer-events: auto; box-shadow: 0 4px 6px rgba(0,0,0,0.1); }

.upload-btn:hover { transform: scale(1.1); }

.box-progress { position: absolute; bottom: 0; left: 0; right: 0; height: 4px; background: rgba(255,255,255,0.3); z-index: 4; display: none; }

.box-progress-bar { height: 100%; background: #10b981; width: 0%; transition: width 0.2s; }

.color-input-wrapper { display: flex; gap: 12px; align-items: center; }

.color-preview-btn { width: 42px; height: 42px; border-radius: 20px; border: 1px solid var(--border); cursor: pointer; position: relative; overflow: hidden; box-shadow: inset 0 2px 4px rgba(0,0,0,0.1); background-color: #fff; }

.color-preview-btn input[type="color"] { position: absolute; top: -50%; left: -50%; width: 200%; height: 200%; cursor: pointer; border: none; padding: 0; margin: 0; opacity: 0; }

.color-hex-input { font-family: monospace; letter-spacing: 1px; text-transform: uppercase; font-weight: 600; width: 100px; }

.dropper-btn { background: var(--bg-soft); border: 1px solid var(--border); color: var(--muted); width: 42px; height: 42px; border-radius: 20px; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: all 0.2s; }

.dropper-btn:hover { background: #e0f2fe; color: var(--primary); border-color: var(--primary); }

.segmented-control { display: flex; background: transparent !important; padding: 4px; border-radius: 20px; border: 1px solid var(--border); gap: 4px; }

.segmented-control label { flex: 1; text-align: center; padding: 8px 12px; border-radius: 20px; cursor: pointer; font-size: 0.9rem; font-weight: 500; color: #64748b; transition: all 0.2s; user-select: none; display: flex; align-items: center; justify-content: center; gap: 6px; }

.segmented-control input[type="radio"] { display: none; }

.segmented-control label:has(input:checked) { background: #fff; color: #fff !important; box-shadow: 0 2px 4px rgba(0,0,0,0.05); font-weight: 600; }

.category-grid { display: flex; flex-wrap: nowrap; overflow-x: auto; gap: 12px; padding-bottom: 4px; scrollbar-width: none; -ms-overflow-style: none; margin-top: 4px; }

.category-grid::-webkit-scrollbar { display: none; }

.option-card {margin: 5px; border: 1px solid #0f74bd; border-radius: 20px; padding: 10px 16px; background: #fff; cursor: pointer; display: flex; align-items: center; gap: 8px; font-size: 0.9rem; font-weight: 500; color: #64748b; transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1); user-select: none; flex: 0 0 auto; width: 110px; min-height: 80px; flex-direction: column; justify-content: center; text-align: center; }

.option-card:hover {background: none !important; border-color: var(--primary); transform: translateY(-1px); }

.option-card:active {background-color: none !important; transform: translateY(0); }

.option-card:has(input:checked) { background: transparent !important; border: none !important; color: var(--primary); box-shadow: 0 0 0 1px var(--primary); font-weight: 900; }

.option-card input { display: none; }

.date-smart-wrapper { position: relative; background: #fff; border: 1px solid var(--border); border-radius: 20px; padding: 12px 14px; display: flex; align-items: center; gap: 12px; transition: all 0.2s; cursor: pointer; z-index: 1; overflow: hidden; }

.date-smart-wrapper:hover { border-color: var(--primary); background: #f8fafc; transform: translateY(-1px); }

.date-smart-wrapper:focus-within { border-color: var(--primary); box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.1); }

.date-smart-icon { font-size: 1.2rem; color: var(--muted); pointer-events: none; }

.date-smart-text { display: flex; flex-direction: column; pointer-events: none; }

.date-smart-label { font-size: 0.65rem; text-transform: uppercase; color: var(--muted); font-weight: 700; letter-spacing: 0.5px; }

.date-smart-value { font-size: 0.95rem; font-weight: 600; color: #0f74bd; margin-top: 2px; }

.date-smart-input { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; z-index: 10; appearance: none; }

.tz-picker-btn { background: var(--bg-soft); border: 1px solid var(--border); border-radius: 20px; padding: 12px; width: 100%; text-align: left; display: flex; align-items: center; justify-content: space-between; cursor: pointer; transition: all 0.2s; }

.tz-picker-btn:hover { background: #e2e8f0; }

.tz-modal-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.6); backdrop-filter: blur(4px); z-index: 10000; display: none; align-items: center; justify-content: center; opacity: 0; transition: opacity 0.3s ease; }

.tz-modal-overlay.open { display: flex; opacity: 1; }

.tz-modal-card { background: #000 !important; color: #fff !important; width: 90%; max-width: 400px; height: 80vh; border-radius: 20px; box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1); display: flex; flex-direction: column; transform: scale(0.95) translateY(20px); transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1); }

.tz-modal-overlay.open .tz-modal-card { transform: scale(1) translateY(0); }

.tz-search-header { padding: 16px; border-bottom: 1px solid var(--border); }

.tz-search-input { width: 100%; padding: 12px; border-radius: 20px; border: 1px solid var(--border); background: var(--bg-soft); font-size: 1rem; color: #0f74bd; }

.tz-search-input:focus { outline: none; border-color: var(--primary); background: #fff; }

.tz-list { flex: 1; overflow-y: auto; padding: 8px; }

.tz-item { padding: 12px 16px; border-radius: 20px; cursor: pointer; display: flex; align-items: center; gap: 12px; transition: background 0.1s; }

.tz-item:hover { background: #f1f5f9; }

.tz-item.active { background: #ecfdf5; color: var(--primary); }

.tz-region { font-size: 0.75rem; color: var(--muted); }

.tz-city { font-weight: 600; font-size: 1rem; }

.tz-offset { margin-left: auto; font-family: monospace; font-size: 0.85rem; background: #e2e8f0; padding: 2px 6px; border-radius: 20px; color: #475569; }

.schedule-preview-card { background: #f8fafc; border: 1px solid var(--border); border-radius: 20px; padding: 12px 16px; display: flex; align-items: center; gap: 16px; cursor: pointer; transition: all 0.2s; margin-top: 12px; }

.schedule-preview-card:hover { background: #fff; border-color: var(--primary); box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05); }

.schedule-icon-box { width: 40px; height: 40px; background: #fff; border: 1px solid var(--border); border-radius: 20px; display: flex; align-items: center; justify-content: center; color: var(--primary); font-size: 1.1rem; }

.schedule-info { display: flex; flex-direction: column; gap: 2px; }

.schedule-date { font-weight: 700; font-size: 1rem; color: #0f74bd; }

.schedule-time { font-size: 0.85rem; color: #64748b; font-weight: 500; }

.schedule-dashboard { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; cursor: pointer; transition: all 0.2s; }

.schedule-dashboard:hover .schedule-card { border-color: var(--primary); background: #f8fafc; transform: translateY(-2px); box-shadow: 0 4px 6px -1px rgba(0,0,0,0.05); }

.schedule-card { background: #fff; border: 1px solid var(--border); border-radius: 20px; padding: 12px; display: flex; align-items: center; gap: 10px; transition: all 0.2s; }

.sc-icon { width: 36px; height: 36px; border-radius: 20px; display: flex; align-items: center; justify-content: center; font-size: 1rem; flex-shrink: 0; }

.sc-icon.start { background: #ecfdf5; color: #10b981; }

.sc-icon.end { background: #fef2f2; color: #ef4444; }

.sc-info { display: flex; flex-direction: column; overflow: hidden; }

.sc-label { font-size: 0.7rem; font-weight: 700; color: var(--muted); text-transform: uppercase; letter-spacing: 0.5px; }

.sc-value { font-size: 0.9rem; font-weight: 600; color: #000000; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin-top: 2px; line-height: 1.2; }

.sc-timezone { grid-column: 1 / -1; display: flex; align-items: center; justify-content: center; gap: 8px; font-size: 0.8rem; color: var(--muted); font-weight: 500; padding-top: 8px; border-top: 1px dashed var(--border); margin-top: 4px; text-align: center; }

.session-row { display: grid; grid-template-columns: 1.5fr 1fr 1fr 40px; gap: 12px; margin-bottom: 12px; align-items: start; padding: 10px; background: #fff; border: 1px solid var(--border); border-radius: 20px; }

.session-row input { width: 100%; padding: 10px; border: 1px solid var(--border); border-radius: 20px; background: #fff; }

.remove-session-btn { height: 42px; width: 100%; border: 1px solid #fee2e2; background: #fef2f2; color: #ef4444; border-radius: 20px; cursor: pointer; display: flex; align-items: center; justify-content: center; }

.pac-container { z-index: 10000 !important; border-radius: 20px; margin-top: 4px; box-shadow: 0 10px 30px rgba(0,0,0,0.15); border: none; }

.filter-tabs { display: inline-flex; background: #f1f5f9; padding: 6px; border-radius: 20px; margin-bottom: 24px; border: 1px solid var(--border); position: relative; box-shadow: inset 0 2px 4px rgba(0,0,0,0.03); }

.filter-tab { padding: 10px 24px; border-radius: 15px; font-weight: 600; font-size: 0.9rem; color: #64748b; cursor: pointer; border: none; background: transparent; transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1); position: relative; z-index: 2; }

.filter-tab:hover { color: #0f74bd; }

.filter-tab.active { background: #fff; color: var(--primary); box-shadow: 0 4px 12px -2px rgba(0,0,0,0.1), 0 2px 4px -1px rgba(0,0,0,0.05); transform: scale(1.02); }

.create-wrapper { display: inline-flex; background: #f1f5f9; padding: 5px; border: none; box-shadow: inset 0 2px 4px rgba(0,0,0,0.03); position: relative; vertical-align: bottom; }

.create-btn-styled { padding: 8px 20px; border-radius: 20px; font-weight: 700; font-size: 0.9rem; border: none; cursor: pointer; display: flex; align-items: center; gap: 8px; transition: all 0.2s cubic-bezier(0.25, 0.8, 0.25, 1); background: #fff; color: var(--primary); box-shadow: 0 4px 12px -2px rgba(0,0,0,0.1), 0 2px 4px -1px rgba(0,0,0,0.05); }

.create-btn-styled:hover { transform: translateY(-1px) scale(1.02); box-shadow: 0 8px 16px -4px rgba(0,0,0,0.1); color: #ffffff !important; }

.create-btn-styled i { font-size: 1rem; }

.ov-header { height: 220px; border-radius: 20px; position: relative; overflow: hidden; margin-bottom: 30px; background: #0f74bd; border: 1px solid var(--border); }

.ov-bg { width: 100%; height: 100%; object-fit: cover; opacity: 0.6; }

.ov-overlay { position: absolute; inset: 0; background: linear-gradient(0deg, #000000 0%, transparent 100%); display: flex; align-items: flex-end; padding: 24px; }

.ov-title-block { width: 100%; display: flex; justify-content: space-between; align-items: flex-end; }

.ov-title { font-size: 2rem; font-weight: 800; color: #fff; line-height: 1.1; margin-bottom: 8px; text-shadow: 0 2px 10px rgba(0,0,0,0.5); }

.ov-meta { color: #cbd5e1; font-size: 0.95rem; display: flex; gap: 12px; font-weight: 500; }

.ov-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; margin-bottom: 30px; }

.stat-card { background: #fff; border: 1px solid var(--border); border-radius: 20px; padding: 20px; display: flex; flex-direction: column; transition: transform 0.2s; }

.stat-card:hover { transform: translateY(-4px); border-color: var(--primary); }

.stat-label { font-size: 0.8rem; color: var(--muted); font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 8px; }

.stat-val { font-size: 1.8rem; font-weight: 800; color: #000000; line-height: 1; }

.stat-trend { font-size: 0.85rem; margin-top: 6px; font-weight: 500; }

.trend-up { color: #10b981; } .trend-down { color: #ef4444; }

.action-grid { display: grid; grid-template-columns: 2fr 1fr; gap: 24px; }

.quick-actions { background: #fff; border: 1px solid var(--border); border-radius: 20px; padding: 24px; }

.qa-btn-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 16px; }

.qa-btn { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; background: var(--bg-soft); border: 1px solid var(--border); border-radius: 20px; padding: 16px; gap: 8px; font-size: 0.85rem; font-weight: 500; color: var(--text-main); transition: all 0.2s ease; cursor: pointer; }

.qa-btn:hover { background: #fff; border-color: var(--primary); color: var(--primary); transform: translateY(-2px); box-shadow: 0 4px 12px rgba(0,0,0,0.05); }

.qa-btn i { font-size: 1.5rem; margin-bottom: 4px; }

.link-box { display: flex; align-items: center; background: #0f74bd; color: #ffffff !important; border-radius: 20px; padding: 4px 4px 4px 16px; margin-top: 16px; }

.link-url { color: #ffffff; font-family: monospace; font-size: 0.9rem; flex: 1; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }

.copy-btn { background: #ffffff; color: #0f74bd; border: none; padding: 8px 16px; border-radius: 20px; cursor: pointer; font-weight: 600; font-size: 0.85rem; }

.copy-btn:hover { background: #ffffff; border: 1px #ffffff !important; color: #0f74bd; }

.ov-controls { display: flex; justify-content: flex-end; margin-bottom: 16px; }

.time-pill-container { background: #e2e8f0 !important; padding: 4px; border-radius: 20px; display: inline-flex; gap: 2px; }

.time-pill { padding: 6px 16px; border-radius: 20px; border: none; background: transparent; font-size: 0.85rem; font-weight: 600; color: #0f74bd; cursor: pointer; transition: all 0.2s; }

.time-pill.active { background: #0f74bd !important; color: #ffffff !important; box-shadow: 0 2px 4px rgba(0,0,0,0.05); }

.ticket-select-list { display: flex; flex-direction: column; gap: 8px; max-height: 300px; overflow-y: auto; margin: 16px 0; }

.ticket-select-item { display: flex; align-items: center; justify-content: space-between; padding: 12px; border: 1px solid var(--border); border-radius: 20px; cursor: pointer; transition: all 0.2s; }

.ticket-select-item:hover { background: #f8fafc; border-color: var(--primary); }

.ticket-select-item.selected { background: #eff6ff; border-color: var(--primary); }

.ticket-check { width: 20px; height: 20px; border-radius: 50%; border: 2px solid #cbd5e1; display: flex; align-items: center; justify-content: center; color: white; font-size: 0.7rem; }

.ticket-select-item.selected .ticket-check { background: var(--primary); border-color: var(--primary); }

.gen-link-box { background: #0f74bd; color: #fff; padding: 12px; border-radius: 20px; display: none; align-items: center; gap: 10px; margin-top: 16px; font-family: monospace; font-size: 0.85rem; }

.gen-link-box.show { display: flex; animation: fadeIn 0.3s ease; }

.ai-console { background: rgb(21, 24, 46); border-radius: 20px; padding: 24px; color: #fff !important; position: relative; overflow: hidden; margin-bottom: 30px; border: none; box-shadow: 0 20px 40px -10px rgba(2, 6, 23, 0.7); }

.ai-console::after { content: ""; position: absolute; top: -50px; right: -50px; width: 20px; height: 200px; background: radial-gradient(circle, rgba(99, 102, 241, 0.3) 0%, transparent 70%); z-index: 0; pointer-events: none; }

.ai-header { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 24px; position: relative; z-index: 2; }

.ai-badge { display: inline-flex; align-items: center; gap: 6px; background: rgba(99, 102, 241, 0.2); border: 1px solid rgba(99, 102, 241, 0.4); color: #a5b4fc; padding: 4px 10px; border-radius: 20px; font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; }

.ai-model-tag { font-family: monospace; font-size: 0.7rem; color: #64748b; border: 1px solid #334155; padding: 2px 6px; border-radius: 20px; text-transform: uppercase; }

.ai-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 16px; position: relative; z-index: 2; }

.ai-card, .ai-suggestion { background: rgba(30, 41, 59, 0.4); border: 1px solid rgba(148, 163, 184, 0.1); border-radius: 20px; padding: 20px; transition: all 0.3s ease; cursor: pointer; position: relative; overflow: hidden; }

.ai-card:hover, .ai-suggestion:hover { background: rgba(30, 41, 59, 0.9); transform: translateY(-4px); border-color: rgba(148, 163, 184, 0.3); }

.ai-card.growth { box-shadow: 0 0 25px rgba(16, 185, 129, 0.2), inset 0 0 20px rgba(16, 185, 129, 0.05); border: 1px solid rgba(16, 185, 129, 0.5); }

.ai-card.risk { box-shadow: 0 0 25px rgba(239, 68, 68, 0.2), inset 0 0 20px rgba(239, 68, 68, 0.05); border: 1px solid rgba(239, 68, 68, 0.5); }

.ai-card.strategy { box-shadow: 0 0 25px rgba(139, 92, 246, 0.2), inset 0 0 20px rgba(139, 92, 246, 0.05); border: 1px solid rgba(139, 92, 246, 0.5); }

.ai-card.content { box-shadow: 0 0 25px rgba(245, 158, 11, 0.2), inset 0 0 20px rgba(245, 158, 11, 0.05); border: 1px solid rgba(245, 158, 11, 0.5); }

.ai-card.growth:hover { box-shadow: 0 0 35px rgba(16, 185, 129, 0.4); } .ai-card.risk:hover { box-shadow: 0 0 35px rgba(239, 68, 68, 0.4); } .ai-card.strategy:hover { box-shadow: 0 0 35px rgba(139, 92, 246, 0.4); } .ai-card.content:hover { box-shadow: 0 0 35px rgba(245, 158, 11, 0.4); }

.ai-insight-header, .ai-sug-title { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; font-weight: 700; font-size: 0.95rem; color: #f1f5f9; }

.ai-icon-box { width: 32px; height: 32px; border-radius: 20px; display: flex; align-items: center; justify-content: center; font-size: 0.9rem; background: rgba(255,255,255,0.05); }

.ai-insight-body, .ai-sug-desc { font-size: 0.85rem; color: #94a3b8; line-height: 1.5; margin-bottom: 12px; }

.ai-data-point { font-size: 0.75rem; color: #64748b; font-family: monospace; margin-top: 8px; padding-top: 8px; border-top: 1px dashed #334155; }

.ai-action-btn { font-size: 0.8rem; font-weight: 600; color: #ffffff; background: transparent; border: none; padding: 10px; display: flex; align-items: center; gap: 6px; margin-top: auto; }

.ai-impact { margin-top: 12px; display: inline-block; font-size: 0.7rem; font-weight: 700; color: #6ee7b7; background: rgba(16, 185, 129, 0.1); padding: 2px 8px; border-radius: 4px; }

.contact-editor-wrapper { margin-top: 16px; border: 1px solid var(--border); border-radius: 20px; background: #fff; overflow: hidden; display: none; }

.ce-header { padding: 12px 16px; background: var(--bg-soft); border-bottom: 1px solid var(--border); display: flex; justify-content: space-between; align-items: center; }

.ce-table-container, div[style*="overflow-x:auto"] { max-height: 300px; overflow-y: auto; width: 100%; -webkit-overflow-scrolling: touch; display: block; }

.ce-table { width: 100%; border-collapse: collapse; font-size: 0.9rem; }

.ce-table th { text-align: left; padding: 8px 12px; font-size: 0.75rem; color: var(--muted); text-transform: uppercase; position: sticky; top: 0; background: #fff; z-index: 1; border-bottom: 1px solid var(--border); }

.ce-table td { padding: 4px; border-bottom: 1px solid #f1f5f9; }

.ce-input { width: 100%; padding: 6px 8px; border: 1px solid transparent; border-radius: 20px; font-family: inherit; font-size: 0.9rem; }

.ce-input:focus { border-color: var(--primary); background: #f8fafc; outline: none; }

.ce-row.invalid .ce-input[name="contact"] { color: #ef4444; background: #fef2f2; }

.ce-btn-icon { width: 28px; height: 28px; display: flex; align-items: center; justify-content: center; border-radius: 20px; cursor: pointer; color: var(--muted); background: transparent; border: none; }

.ce-btn-icon:hover { background: #fee2e2; color: #ef4444; }

.history-table { width: 100%; border-collapse: separate; border-spacing: 0 8px; margin-top: 10px; }

.history-row { background: #fff; box-shadow: 0 2px 4px rgba(0,0,0,0.02); transition: transform 0.2s; }

.history-row td { padding: 12px 16px; border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }

.history-row td:first-child { border-left: 1px solid var(--border); border-radius: 20px 0 0 20px; }

.history-row td:last-child { border-right: 1px solid var(--border); border-radius: 0 20px 20px 0; }

.history-row:hover { transform: translateY(-2px); box-shadow: 0 4px 12px rgba(0,0,0,0.05); }

.camp-status { font-size: 0.7rem; font-weight: 700; text-transform: uppercase; padding: 2px 8px; border-radius: 20px; display: inline-block; }

.camp-status.sent { background: #dcfce7; color: #16a34a; } .camp-status.scheduled { background: #e0f2fe; color: #0284c7; } .camp-status.failed { background: #fee2e2; color: #dc2626; }

.import-group { display: flex; gap: 8px; margin-bottom: 12px; }

.btn-import { flex: 1; background: #fff; border: 1px dashed var(--border); color: var(--muted); padding: 8px; border-radius: 20px; font-size: 0.8rem; cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 6px; transition: all 0.2s; }

.btn-import:hover {background: transparent!important; border-color: var(--primary); color: var(--primary); background: #f0f9ff; }

#artist-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 16px; }

#artist-list .media-box { background: rgba(255, 255, 255, 0.7); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border: 1px solid rgba(255, 255, 255, 0.6); box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03); border-radius: 20px; padding: 12px; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); display: flex; flex-direction: row; align-items: center; gap: 14px; text-align: left; min-height: auto; }

#artist-list .media-box:hover { background: rgba(255, 255, 255, 0.9); transform: translateY(-4px) scale(1.01); box-shadow: 0 12px 24px -8px rgba(0, 0, 0, 0.15); border-color: var(--primary); }

#artist-list .media-box img { width: 56px; height: 56px; border-radius: 20px; object-fit: cover; border: 1px solid rgba(0,0,0,0.05); box-shadow: 0 2px 4px rgba(0,0,0,0.1); }

#artist-list .media-box div[style*="font-weight:700"] { font-size: 1rem !important; color: #0f74bd; margin-bottom: 2px; }

#artist-list .media-box div[style*="color:var(--muted)"] { font-size: 0.8rem !important; opacity: 0.8; }

#artist-list .delete-icon { width: 32px; height: 32px; display: flex; align-items: center; justify-content: center; border-radius: 20px; color: #94a3b8; transition: all 0.2s; background: transparent; }

#artist-list .delete-icon:hover { background: #fee2e2; color: #ef4444; transform: scale(1.1); }

#artist-results.dropdown-menu { background: rgba(255, 255, 255, 0.95); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border: 1px solid rgba(255, 255, 255, 0.5); box-shadow: 0 20px 40px -5px rgba(0, 0, 0, 0.15); border-radius: 20px; overflow: hidden; padding: 6px; }

.service-plan-card { height: 100%; display: flex; flex-direction: column; position: relative; background: #ffffff; border: 1px solid var(--border); border-radius: 20px; padding: 24px; cursor: pointer; transition: all 0.2s; z-index: 1; }

.service-plan-card:hover { border-color: var(--primary); transform: translateY(-2px); box-shadow: 0 10px 20px -5px rgba(0,0,0,0.1); background: rgba(15, 116, 189, 0.05); }

.service-plan-card ul.plan-features { flex: 1; margin-bottom: 24px; }

.plan-icon { width: 48px; height: 48px; background: #f1f5f9; border-radius: 20px; display:flex; align-items:center; justify-content:center; font-size: 1.2rem; color: #64748b; margin-bottom: 16px; }

.plan-icon.highlight { background: rgba(15, 116, 189, 0.1); color: var(--primary); }

.plan-price { font-size: 1.5rem; font-weight: 700; margin-bottom: 16px; color: var(--text-main); }

.plan-features { list-style: none; padding: 0; margin: 0 0 20px 0; text-align: left; }

.plan-features li { margin-bottom: 8px; font-size: 0.9rem; color: var(--muted); display:flex; gap:8px; align-items:center; }

.plan-features li i { color: #10b981; }

.file-preview-card { display: flex; align-items: center; background: #f8fafc; border: 1px solid var(--border); border-radius: 20px; padding: 12px; margin-top: 12px; gap: 12px; }

.file-preview-card .icon { width: 40px; height: 40px; background: #fee2e2; color: #ef4444; border-radius: 20px; display: flex; align-items: center; justify-content: center; font-size: 1.2rem; }

.file-preview-card .info { flex: 1; }

.file-preview-card .filename { font-weight: 600; font-size: 0.9rem; color: var(--text-main); }

.file-preview-card .meta { font-size: 0.75rem; color: var(--muted); }

.file-preview-card .actions { display: flex; gap: 8px; }

.btn-icon-sm { width: 32px; height: 32px; border-radius: 20px; border: 1px solid var(--border); background: white; color: var(--text-main); display: flex; align-items: center; justify-content: center; cursor: pointer; transition: all 0.2s; text-decoration: none; }

.btn-icon-sm:hover { background: var(--bg-hover); border-color: var(--primary); color: var(--primary); }

.text-xs { font-size: 0.75rem; }

#eb-service-modal .tz-modal-card { display: flex; flex-direction: column; max-height: 85vh; overflow: hidden; }

#eb-service-modal .tz-modal-card > div:last-child { overflow-y: auto; flex: 1; }

#eb-service-modal .grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; align-items: stretch; padding-bottom: 10px; }

#eb-service-modal p.text-sm.muted { margin-top: 24px; padding-top: 16px; border-top: 1px solid var(--border); position: relative; z-index: 2; background: transparent; }

#ov-qr-box i { font-size: 2.5rem; }

html.dark { color-scheme: dark; --primary: #0f74bd; --primary-hover: #7dd3fc; --muted: #94a3b8; --card: #0a0a0a; --border: #262626; --bg-soft: #171717; --ring: rgba(56, 189, 248, 0.3); --shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.8); --nav-color: #cbd5e1; --dropdown-bg: #0a0a0a; }

html.dark body { background: #000000 !important; color: #f1f5f9; }

html.dark header nav.active { background: #0b1220 !important; border-bottom: 1px solid #253049 !important; }


.logo-img{ height: 40px !important; border-radius: 1px !important;}

html.dark main, html.dark section { background: transparent !important; }

html.dark .card, html.dark .event-card, html.dark .dropdown-menu { background: var(--card); border-color: var(--border); }

html.dark main > .card { background: transparent !important; border: 0 !important; box-shadow: none !important; }

html.dark main > .card .head, html.dark main > .card .body { background: transparent !important; }

html.dark .section { background: var(--card); border-color: var(--border); }

html.dark .section[style*="border-color:#fecaca"], html.dark .section.danger { background: #2a0f12 !important; border-color: #5a1f25 !important; color: #ffd8db !important; }

html.dark .banner { background: #0f1a2b !important; border-color: #253049 !important; }

html.dark .event-banner-wrap, html.dark .event-cover { background: #0f1a2b; }

html.dark .event { background: #0b1220 !important; border: 1px solid #253049 !important; box-shadow: 0 10px 28px rgba(0, 0, 0, .45) !important; }

html.dark .field input, html.dark .field textarea, html.dark .field select, html.dark gmpx-place-autocomplete, html.dark .autocomplete-input { background: #000000 !important; border-color: #334155 !important; color: #e6edf7 !important; box-shadow: none !important; }

html.dark .field label { color: #c7d1e0 !important; } html.dark ::placeholder { color: #9aa4b2 !important; } html.dark input:disabled, html.dark textarea:disabled, html.dark select:disabled { opacity: .7; }

html.dark .input-group, html.dark .input-prefix-wrapper { background: #000000; border-color: #334155; }

html.dark .input-group-prefix { background: #0f74bd; border-color: #334155; color: #94a3b8; }

html.dark .input-group input { color: #fff; }

html.dark .btn { background: #0f74bd !important; border-color: #334155 !important; color: #e6edf7 !important; box-shadow: none; }

html.dark .btn:hover { border-color: #34415f; box-shadow: 0 10px 22px rgba(0, 0, 0, .45); background: #334155 !important; }

html.dark .btn.primary { background: linear-gradient(180deg, var(--primary), var(--primary-hover)) !important; color: #0a0f1a !important; border: none !important; }

html.dark .btn.danger { background: #3a1217 !important; color: #ffc4c9 !important; border-color: #5a1f25 !important; }

html.dark .back-btn { background: #0f74bd; border-color: #334155; color: #94a3b8; }

html.dark .back-btn:hover { background: #2d3b55; color: #fff; border-color: var(--primary); }

html.dark .btn-delete-event { background: #450a0a; border-color: #7f1d1d; color: #f87171; }

html.dark .btn-import { background: #000000; border-color: #334155; }

html.dark .btn-import:hover { background: #0f74bd; border-color: var(--primary); }

html.dark .btn-icon-sm { background: rgba(255,255,255,0.05); border-color: rgba(255,255,255,0.1); color: #cbd5e1; }

html.dark table { width: 100%; background: #0b1220 !important; border-collapse: collapse; }

html.dark thead th { background: #0f1a2b !important; color: #cfe1ff !important; border-bottom: 1px solid #253049 !important; }

html.dark tbody tr { border-top: 1px solid #253049 !important; }

html.dark tbody tr:hover { background: #0f1a2b !important; }

html.dark td, html.dark th { color: #e6edf7 !important; } html.dark .empty { color: #9aa4b2 !important; } html.dark .data-label { color: #94a3b8; } html.dark .data-value { color: #f1f5f9; } html.dark .data-row { border-color: #334155; }

html.dark .badge { background: #0f1a2b !important; border-color: #34415f !important; color: #e6edf7 !important; }

html.dark .badge.ok { background: #0d1f17 !important; border-color: #1b3a2b !important; color: #6ae0a7 !important; }

html.dark .badge.warn { background: #2a1c0c !important; border-color: #4c2d0e !important; color: #ffcf8a !important; }

html.dark .badge.neutral { background: #334155; color: #cbd5e1; border-color: #475569; }

html.dark .pill { background: #142033 !important; color: #cfe9ff !important; }

html.dark .progress { background: #0f1a2b !important; border: 1px solid #253049 !important; }

html.dark .progress > span { background: linear-gradient(90deg, #7dc4ff, #9bd3ff) !important; }

html.dark .logo-preview-box { background: #0b1220 !important; border-color: #253049 !important; }

html.dark .date-badge { background: #0f1a2b; color: #e6edf7; }

html.dark .date-badge b, html.dark .card-date .day { color: #fff; } html.dark .card-date { background: rgba(30, 41, 59, 0.9); } html.dark .card-status.draft { background: rgba(30, 41, 59, 0.8); color: #cbd5e1; } html.dark .toast { background: #0f1a2b; color: #e6edf7; } html.dark .toast.ok { background: #065f46; } html.dark .toast.err { background: #7f1d1d; } html.dark .event-title, html.dark .card-title { color: #f1f5f9; } html.dark .card-info, html.dark .card-footer { color: #94a3b8; } html.dark .dropdown-item { color: #cbd5e1; } html.dark .dropdown-item:hover { background: #000000; color: var(--primary); }

html.dark .ticket-editable-row { background: #0f74bd !important; border-color: #334155 !important; }

html.dark .ticket-editable-row > div:first-child { background-color: rgba(0, 0, 0, 0.03) !important; }

html.dark .ticket-edit-body { background-color: #000000 !important; border-top-color: #334155 !important; }

html.dark .ticket-editable-row input, html.dark .ticket-editable-row textarea, html.dark .ticket-editable-row select { background-color: #0f74bd !important; color: #f1f5f9 !important; border-color: #334155 !important; }

html.dark .ticket-editable-row .btn:not(.primary):not(.danger) { background-color: transparent !important; color: var(--muted) !important; }

html.dark .ticket-editable-row div[style*="font-weight:700"] { color: #f1f5f9 !important; }

html.dark .ticket-editable-row div[style*="color:var(--muted)"], html.dark .ticket-editable-row .small-muted { color: #94a3b8 !important; }

html.dark .ticket-editable-row span[style*="color:var(--primary)"] { color: var(--primary) !important; }

html.dark .ticket-group-badge { background: rgba(56, 189, 248, 0.2); }

html.dark .role-option { background: var(--card); }

html.dark .role-option:hover { background: #0f74bd; }

html.dark .role-option.selected { background: #000000; color: #fff; }

html.dark .role-chip { background: rgba(30, 41, 59, 0.5); border-color: rgba(255, 255, 255, 0.05); color: #94a3b8; }

html.dark .role-chip:hover { background: rgba(30, 41, 59, 0.8); }

html.dark .role-chip.active { background: rgba(15, 116, 189, 0.2); color: #0f74bd; border-color: #0f74bd; }

html.dark .social-view-item { border-color: #334155; color: #cbd5e1; }

html.dark .social-view-item svg { fill: #64748b; }

html.dark .social-view-item:hover { color: var(--primary); }

html.dark .social-view-item:hover svg { fill: var(--primary); }

html.dark .editor-footer { background: var(--card); border-color: var(--border); }

html.dark .slug-chip { background: #0f74bd; border-color: #334155; color: #cbd5e1; }

html.dark .slug-chip:hover { background: #0c4a6e; border-color: #0ea5e9; color: #fff; }

html.dark .media-box { background: #000000; border-color: #334155; }

html.dark .media-box:hover { background: #0f74bd; }

html.dark .date-picker-wrapper, html.dark .date-smart-wrapper { background: #000000; border-color: #334155; }

html.dark .date-picker-wrapper span, html.dark .date-picker-wrapper i { color: #cbd5e1 !important; }

html.dark .date-smart-value { color: #fff; }

html.dark .segmented-control { background: #000000; border-color: #334155; }

html.dark .segmented-control label { color: #94a3b8; }

html.dark .segmented-control label:has(input:checked) { background: #0f74bd; color: var(--primary); }

html.dark .option-card { background: #000000; border-color: #334155; color: #94a3b8; }

html.dark .option-card:hover { background: #0f74bd; }

html.dark .option-card:has(input:checked) { background: #0f74bd; color: var(--primary); }

html.dark .tz-picker-btn { background: #000000; border-color: #334155; color: #fff; }

html.dark .tz-modal-card { background: #0f74bd; } html.dark .tz-item:hover { background: #334155; } html.dark .tz-item.active { background: #064e3b; } html.dark .tz-offset { background: #334155; color: #cbd5e1; }

html.dark .tz-search-input { background: #0f74bd; color: #fff; border-color: #334155; }

html.dark .schedule-preview-card, html.dark .schedule-card { background: #0f74bd; border-color: #334155; }

html.dark .schedule-preview-card:hover, html.dark .schedule-dashboard:hover .schedule-card { background: #000000; border-color: var(--primary); }

html.dark .schedule-icon-box { background: #000000; border-color: #334155; }

html.dark .schedule-date { color: #f1f5f9; } html.dark .schedule-time { color: #94a3b8; } html.dark .sc-icon.start { background: #064e3b; color: #34d399; } html.dark .sc-icon.end { background: #450a0a; color: #f87171; } html.dark .sc-value { color: #f1f5f9; } html.dark .sc-timezone { border-top-color: #334155; } html.dark .color-preview-btn { border-color: #334155; }

html.dark .session-row { background: #0f74bd; border-color: #334155; }

html.dark .filter-tabs { background: #000000;  }

html.dark .filter-tab.active { background: #0f74bd; color: #fff; box-shadow: 0 4px 12px rgba(0,0,0,0.3); }

html.dark .create-wrapper { background: #000000; border-color: #334155; }

html.dark .create-btn-styled { background: #0f74bd; color: #fff; box-shadow: 0 4px 12px rgba(0,0,0,0.3); }

html.dark .create-btn-styled:hover { background: var(--primary); color: #000000; }

html.dark .ov-header { background: var(--card) !important; border-color: var(--border) !important; }

html.dark .stat-card, html.dark .quick-actions { background: #000000; border-color: #334155; }

html.dark .stat-val { color: #fff; }

html.dark .qa-btn { background: #000000; border-color: #334155; color: #cbd5e1; }

html.dark .qa-btn:hover { background: #0f74bd; color: #fff; border-color: var(--primary); }

html.dark .time-pill-container { background: #0f74bd; } html.dark .time-pill.active { background: #334155; color: #fff; }

html.dark .contact-editor-wrapper { background: #0f74bd; border-color: #334155; }

html.dark .ce-header { background: #000000; border-color: #334155; }

html.dark .ce-table th { background: #0f74bd; border-color: #334155; }

html.dark .ce-input { background: transparent; color: #f1f5f9; }

html.dark .ce-input:focus { background: #000000; }

html.dark .ce-row.invalid .ce-input[name="contact"] { background: #450a0a; color: #fca5a5; }

html.dark .history-row { background: #0f74bd; } html.dark .history-row td { border-color: #334155; }

html.dark #artist-list .media-box { background: rgba(30, 41, 59, 0.6); border: 1px solid rgba(255, 255, 255, 0.08); box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.3); }

html.dark #artist-list .media-box:hover { background: rgba(30, 41, 59, 0.9); border-color: var(--primary); }

html.dark #artist-list .media-box img { border-color: rgba(255, 255, 255, 0.1); }

html.dark #artist-list div[style*="color:#000000"] { color: #f1f5f9 !important; }

html.dark #artist-results.dropdown-menu { background: none; border: 1px solid rgba(255, 255, 255, 0.1); }

html.dark #artist-list .delete-icon:hover { background: #450a0a; color: #f87171; }

html.dark .service-plan-card { background: rgba(30, 41, 59, 0.6); border-color: rgba(255, 255, 255, 0.1); color: #f8fafc; }

html.dark .service-plan-card:hover { background: rgba(30, 41, 59, 0.9); border-color: var(--primary); }

html.dark .plan-price { color: #f1f5f9; } html.dark .plan-features li { color: #cbd5e1; }

html.dark .plan-icon { background: rgba(255, 255, 255, 0.1); color: #cbd5e1; }

html.dark .plan-icon.highlight { background: rgba(15, 116, 189, 0.2); color: #0f74bd; }

html.dark .file-preview-card { background: rgba(30, 41, 59, 0.5); border-color: rgba(255,255,255,0.1); }

html.dark .hamburger span { background: #e6edf7 !important; }

@media (min-width: 1024px) { .grid { display: block; column-count: 2; column-gap: 2px; } .grid > .card, .grid > .section { break-inside: avoid; margin-bottom: 24px; display: inline-block; width: 100%; } .grid-2 { display: grid; grid-template-columns: 1.2fr 0.8fr; gap: 2px; align-items: start; } .section.danger { column-span: all; margin-top: 20px; max-width: 100%; } .job-description { margin-top: 20px; } }

@media (max-width: 1023px) { .grid, .grid-2, .action-grid { display: grid; grid-template-columns: 1fr; gap: 18px; } .job-description { margin-top: 1px; } .col2 { grid-template-columns: 1fr; } .ov-grid { grid-template-columns: repeat(2, 1fr); } .events-grid { grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); } }

@media (min-width: 769px) { .hamburger { display: none !important; } .logo2 { display: none !important; } .grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; align-items: start; } }

@media (max-width: 768px) { footer { margin-top: -80px !important; } header nav { position: fixed !important; top: 0; right: 0 !important; left: auto !important; height: 100dvh; width: var(--drawer-w) !important; background: #fff; transform: translateX(100%); visibility: hidden; pointer-events: none; transition: transform .28s ease, visibility .28s step-end; z-index: 2147483647 !important; padding: 14px 14px 18px; display: flex; flex-direction: column; align-items: stretch; gap: .01rem !important; overflow: auto; box-shadow: none; margin: 0 !important; padding-right: max(12px, env(safe-area-inset-right)); } header nav.active { transform: translateX(0) !important; visibility: visible; pointer-events: auto; box-shadow: -16px 0 32px rgba(0, 0, 0, .18); } header nav::before { content: none !important; display: none !important; } body::before { content: ""; position: fixed; top: 0; left: 0; bottom: 0; right: var(--drawer-w) !important; background: rgba(0, 0, 0, .55); opacity: 0; pointer-events: none; transition: opacity .2s ease; z-index: 2147483646 !important; } body.nav-open::before { opacity: 1; pointer-events: auto; } .has-subnav > .nav-link { display: none !important; } .has-subnav .subnav { position: static !important; display: block !important; padding: 0 !important; margin: 0 !important; border: 0 !important; box-shadow: none !important; background: transparent !important; min-width: auto !important; } .nav-link, .subnav-link { width: 100%; display: flex !important; align-items: center; justify-content: flex-start; gap: .55rem; padding: 1.2rem .9rem !important; margin: 0; border-radius: 0px !important; color: #222; text-align: left; font-size: 1rem; } .nav-icon, .subnav-link svg { width: 22px; height: 22px; flex: 0 0 22px; display: inline-block; vertical-align: middle; } main { padding: 0 16px; margin-top: 16px; } .ov-header { height: auto; min-height: 200px; } .ov-overlay { position: relative; background: #000000; padding: 24px 20px; } .ov-title-block { flex-direction: column; align-items: flex-start; gap: 20px; } .ov-title { font-size: 1.6rem; } .ov-title-block .btn { width: 100%; justify-content: center; } .ov-grid { grid-template-columns: 1fr; gap: 12px; } .filter-tabs { width: 100%; display: flex; padding: 4px; overflow-x: auto; -webkit-overflow-scrolling: touch; } .filter-tab { flex: 1; white-space: nowrap; padding: 10px 12px; font-size: 0.85rem; text-align: center; } .editor-top-bar { flex-direction: column; align-items: stretch; gap: 12px; } .editor-top-bar > div { width: 100%; display: flex; flex-direction: column; gap: 8px; } #preview-event-link { width: 100%; justify-content: center; margin-left: 0; } .col2, .grid-2, .grid-3 { grid-template-columns: 1fr !important; gap: 16px !important; } .session-row { grid-template-columns: 1fr 1fr !important; grid-template-areas: "date date" "start end" "del del"; gap: 10px; padding: 10px; background: #f8fafc; border-radius: 20px; border: 1px solid var(--border); } .session-row > div:nth-child(1) { grid-area: date; } .session-row > div:nth-child(2) { grid-area: start; } .session-row > div:nth-child(3) { grid-area: end; } .session-row > button { grid-area: del; width: 100%; margin-top: 4px !important; height: 36px !important; background: #fee2e2 !important; color: #ef4444 !important; border-color: #fca5a5 !important; } .remove-session-btn { width: 100%; margin-top: 4px; } .editor-footer { flex-direction: column-reverse; padding: 12px; gap: 10px; bottom: 0; } .editor-footer .btn { width: 100%; justify-content: center; padding: 14px; } .tz-modal-card { width: 100% !important; height: 100dvh !important; max-width: none !important; border-radius: 0 !important; transform: translateY(0); } .event-card { height: 300px; } .back-btn { width: 40px; height: 40px; background: #fff; border: 1px solid var(--border); border-radius: 50%; justify-content: center; padding: 0; } .back-btn:hover { transform: none; border-color: var(--primary); } .back-text { display: none; } .media-grid, #gallery-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 10px !important; } .segmented-control { flex-direction: column; } .segmented-control label { width: 100%; margin-bottom: 2px; } }

@media (max-width: 600px) { main { padding: 0 12px; margin-top: 16px; } .events-grid { grid-template-columns: 1fr !important; } .media-grid { grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)) !important; gap: 10px; } #box-rect { aspect-ratio: 16/9; } #box-video { width: 100%; max-width: none; } .editor-footer { margin: 20px -12px -20px -12px !important; padding: 12px 16px; flex-direction: column-reverse; gap: 10px; } .editor-footer .btn { width: 100%; justify-content: center; } .ov-header { height: auto; min-height: 180px; border-radius: 20px; } .ov-overlay { padding: 16px; } .ov-title { font-size: 1.5rem; word-break: break-word; } .ov-meta { flex-direction: column; gap: 6px; align-items: flex-start; } .qa-btn-row { flex-direction: column; } .tz-modal-card, .tz-modal-card[style*="max-width"] { width: 95% !important; max-width: 95% !important; max-height: 85vh; margin: auto; } #eb-service-modal .grid-2 { grid-template-columns: 1fr; } .service-plan-card { min-height: auto; } }

@media (min-width: 1600px) { .events-grid { grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); } }
.nav-link, .subnav-link {
    text-transform: uppercase;
    letter-spacing: 0.05em;
}
@media (min-width: 1200px) {
    header {
        max-width: 1265px !important;
        margin-left: auto;
        margin-right: auto;
        width: 100%;
        margin-top: 1px !important;
    }
}
.logo-img {
    height: 40px !important;
    border-radius: 1px !important;
    filter: grayscale(100%) brightness(500%) contrast(500%) !important;
    -webkit-filter: grayscale(100%) brightness(500%) contrast(500%) !important;
}
header {
    position: fixed !important;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    -webkit-backdrop-filter: blur(12px);
}

body {
    padding-top: 80px;
}
.ov-title-block > div:first-child {
    display: flex;
    flex-direction: column;
    align-items: flex-start !important;
    text-align: left !important;
}

.ov-title {
    text-align: left !important;
    margin-right: auto;
}
.ov-meta svg {
    width: 18px;
    height: 18px;
    display: inline-block;
    vertical-align: text-bottom;
    margin-right: 6px;
    opacity: 0.9;
}

.ov-meta span {
    display: inline-flex;
    align-items: center;
}
.ov-title {
    text-transform: uppercase !important;
    letter-spacing: 0.02em !important;
}
h4{
    color: #ffffff !important;
}

/* Waitlist Styles */
.waitlist-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 16px;
    margin-top: 20px;
}

.wl-card {
    background: var(--bg-soft);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 20px;
    transition: all 0.2s ease;
}

.wl-card:hover {
    border-color: var(--primary);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

.wl-header {
    display: flex;
    gap: 12px;
    align-items: center;
    margin-bottom: 12px;
    padding-bottom: 12px;
    border-bottom: 1px dashed var(--border);
}

.wl-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--primary);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.9rem;
}

.wl-meta { flex: 1; }
.wl-name { font-weight: 700; color: var(--text-main); font-size: 0.95rem; }
.wl-email { font-size: 0.8rem; color: var(--muted); }
.wl-date { font-size: 0.7rem; color: var(--muted); margin-top: 2px; }

.wl-motivation {
    font-size: 0.85rem;
    color: var(--text-main);
    background: rgba(255,255,255,0.05);
    padding: 10px;
    border-radius: 8px;
    margin-bottom: 12px;
    font-style: italic;
    line-height: 1.4;
}

.wl-assets {
    display: flex;
    gap: 8px;
    margin-bottom: 12px;
}

.asset-chip {
    font-size: 0.75rem;
    padding: 4px 10px;
    border-radius: 20px;
    background: #e0f2fe;
    color: #0284c7;
    text-decoration: none;
    font-weight: 600;
}

.wl-socials {
    font-size: 0.75rem;
    margin-bottom: 12px;
}

.social-row {
    display: flex;
    justify-content: space-between;
    margin-bottom: 4px;
    border-bottom: 1px solid rgba(255,255,255,0.05);
    padding-bottom: 2px;
}

.s-plat { font-weight: 600; text-transform: capitalize; color: var(--muted); }
.s-link { color: var(--primary); text-decoration: none; max-width: 120px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.wl-actions {
    display: flex;
    gap: 10px;
    margin-top: 15px;
}

.wl-actions button {
    flex: 1;
    padding: 8px;
    font-size: 0.85rem;
}

.wl-status-badge {
    text-align: center;
    padding: 8px;
    border-radius: 8px;
    font-weight: 700;
    font-size: 0.85rem;
    margin-top: 10px;
}
.wl-status-badge.ok { background: #dcfce7; color: #16a34a; }
.wl-status-badge.warn { background: #fee2e2; color: #dc2626; }

/* --- Waitlist Configuration Styling --- */

/* 1. The Requirement Cards (CV, Motivation, Socials) */
.checkbox-card {
    display: flex;
    align-items: center;
    position: relative;
    padding: 12px 16px;
    background: var(--bg-card); /* Default card background */
    border: 1px solid var(--border);
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    user-select: none;
}

.checkbox-card:hover {
    border-color: var(--primary);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

/* Hide the actual checkbox input */
.checkbox-card input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

/* The text and icon inside */
.checkbox-card span {
    font-size: 0.9rem;
    font-weight: 500;
    color: var(--text-main);
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
}

.checkbox-card i {
    font-size: 1.1rem;
    color: var(--muted);
    transition: color 0.2s;
}

/* --- Active/Checked State --- */
/* Uses the :has pseudo-class for modern browsers */
.checkbox-card:has(input:checked) {
    border-color: var(--primary);
    background: rgba(15, 116, 189, 0.08); /* Very light blue tint */
    box-shadow: 0 4px 12px rgba(15, 116, 189, 0.15);
}

/* Fallback for older browsers: target label if input is nested differently, 
   but since input is inside label, :has is best. Alternatively: */
.checkbox-card input:checked + span {
    color: var(--primary);
}

.checkbox-card input:checked + span i {
    color: var(--primary);
}

/* Add a checkmark indicator */
.checkbox-card input:checked + span::after {
    content: '\f00c'; /* FontAwesome Check */
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    margin-left: auto;
    color: var(--primary);
    font-size: 0.9rem;
}

/* 2. Ticket Settings Sub-Section (Nested Look) */
#wl-ticket-settings {
    background: rgba(0, 0, 0, 0.03); /* Subtle darkening for contrast */
    border-left: 3px solid var(--primary);
    border-radius: 0 12px 12px 0;
    padding: 20px;
    margin: 16px 0;
    animation: fadeIn 0.3s ease-in-out;
}

/* Dark mode adjustment for the nested section */
html.dark #wl-ticket-settings {
    background: rgba(255, 255, 255, 0.05);
}

/* 3. Animation for the whole config area */
#wl-config-area {
    animation: slideDown 0.3s ease-out;
    transform-origin: top;
}

@keyframes slideDown {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

/* 4. Input & Select Tweaks for this section */
#wl-config-area select,
#wl-config-area input[type="text"], 
#wl-config-area input[type="datetime-local"] {
    background: var(--bg-card); /* Ensure inputs pop against the grey background */
}

.media-actions { 
    position: absolute; 
    bottom: 8px; 
    right: 8px; 
    z-index: 3; 
    display: flex; 
    gap: 6px; 
    opacity: 0; 
    transition: opacity 0.2s; 
}

.upload-btn { 
    width: 28px; 
    height: 28px; 
    border-radius: 50%; 
    background: #fff; 
    border: 1px solid var(--border); 
    color: var(--primary); 
    cursor: pointer; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    pointer-events: auto; 
    box-shadow: 0 4px 6px rgba(0,0,0,0.1); 
    flex-shrink: 0;
    padding: 0;
    font-size: 0.75rem;
}

/* Add this to your style.css or within a <style> block in the <head> */

.picker-dialog {
    position: fixed !important;
    top: 5% !important; /* Pushes it near the top of the viewport */
    left: 50% !important;
    transform: translateX(-50%) !important;
    z-index: 999999 !important; /* Ensures it stays above your other modals */
}

.picker-dialog-bg {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    height: 100vh !important;
    width: 100vw !important;
    z-index: 999998 !important;
}