:root {
    --vdm-navy: #0B1F6B;
    --vdm-blue: #007BFF;
    --vdm-blue-interaction: #006FE6;
    --vdm-gold: #F4B400;
    --vdm-red: #E10600;
    --vdm-red-soft: #FFF0EF;
    --vdm-red-ink: #9C201B;
    --vdm-white: #FFFFFF;
    --vdm-background: #F7F8FC;
    --vdm-text: #172033;
    --vdm-muted: #687386;
    --vdm-border: #DCE2EC;
    --vdm-success: #176B38;
    --vdm-success-soft: #EAF8EF;
    --vdm-warning: #855B00;
    --vdm-warning-soft: #FFF6D8;
    --vdm-info: #0759C7;
    --vdm-info-soft: #EDF5FF;

    --vdm-font-family: 'Montserrat', 'Avenir Next', 'Segoe UI', sans-serif;
    --vdm-font-size-xs: 0.75rem;
    --vdm-font-size-sm: 0.875rem;
    --vdm-font-size-md: 1rem;
    --vdm-font-size-lg: 1.25rem;
    --vdm-font-size-xl: 1.75rem;
    --vdm-font-size-2xl: 2rem;
    --vdm-font-size-display: clamp(2.5rem, 5vw, 4.5rem);
    --vdm-line-height-tight: 1.2;
    --vdm-line-height-normal: 1.5;
    --vdm-line-height-relaxed: 1.65;
    --vdm-font-weight-regular: 400;
    --vdm-font-weight-medium: 500;
    --vdm-font-weight-semibold: 600;
    --vdm-font-weight-bold: 700;
    --vdm-font-weight-extrabold: 800;
    --vdm-letter-spacing-wide: 0.04em;

    --vdm-space-1: 0.25rem;
    --vdm-space-2: 0.5rem;
    --vdm-space-3: 0.75rem;
    --vdm-space-4: 1rem;
    --vdm-space-5: 1.25rem;
    --vdm-space-6: 1.5rem;
    --vdm-space-8: 2rem;
    --vdm-space-10: 2.5rem;
    --vdm-space-12: 3rem;
    --vdm-radius-sm: 0.5rem;
    --vdm-radius-md: 0.75rem;
    --vdm-radius-lg: 1.125rem;
    --vdm-radius-xl: 1.5rem;
    --vdm-radius-pill: 999px;
    --vdm-shadow-card: 0 8px 26px rgba(11, 31, 107, 0.07);
    --vdm-shadow-raised: 0 18px 48px rgba(11, 31, 107, 0.12);

    --vdm-breakpoint-xs: 320px;
    --vdm-breakpoint-sm: 520px;
    --vdm-breakpoint-md: 760px;
    --vdm-breakpoint-lg: 1000px;
    --vdm-breakpoint-xl: 1200px;

    --bg: var(--vdm-background);
    --bg-soft: var(--vdm-white);
    --card: var(--vdm-white);
    --card-alt: var(--vdm-background);
    --primary: var(--vdm-blue);
    --primary-light: var(--vdm-navy);
    --text: var(--vdm-text);
    --muted: var(--vdm-muted);
    --border: var(--vdm-border);
    --blue: var(--vdm-blue);
    --success: var(--vdm-success);
    --navy: var(--vdm-navy);
    --dark-navy: var(--vdm-navy);
    --gold: var(--vdm-gold);
    --red: var(--vdm-red);
    --shadow: var(--vdm-shadow-raised);
}

@media (min-width:821px){
    body:has(.gate-checkin-page) .organizer-inventory-sidebar,
    body:has(.gate-checkin-page) .organizer-sidebar{
        position:fixed!important;
        top:0!important;
        left:0!important;
        width:208px!important;
        min-width:208px!important;
        max-width:208px!important;
        height:1024px!important;
        min-height:1024px!important;
        max-height:none!important;
        bottom:auto!important;
    }
  body:has(.gate-checkin-page){padding-top:56px!important;background:#f7f8fc}
  body:has(.gate-checkin-page) .organizer-gate-checkin-header{
    position:fixed;top:0;left:208px;right:0;width:auto;height:56px;min-height:56px;
    margin:0;background:#fff;border-bottom:1px solid #e8edf5;z-index:1000;
  }
  .organizer-gate-checkin-topbar{height:56px;display:flex;align-items:center;padding:0 16px 0 14px}
  .organizer-gate-checkin-topbar>.organizer-mobile-menu{display:block;width:36px;margin-right:10px}
  .organizer-gate-checkin-breadcrumbs{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700}
  .organizer-gate-checkin-breadcrumbs a{text-decoration:none;color:#1677ff}
  .organizer-gate-checkin-breadcrumbs span{color:#455064}
  .organizer-gate-checkin-topbar>.dashboard-clock{margin-left:auto;margin-right:14px}
  .organizer-gate-checkin-topbar>.notification-link{margin-right:14px}
  .organizer-gate-checkin-account{position:relative}
  .organizer-gate-checkin-account>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:7px}
  .organizer-gate-checkin-header .organizer-unified-mobile-header{display:none}
  body:has(.gate-checkin-page) .organizer-inventory-sidebar{
    width:208px!important;position:fixed;top:0;left:0;bottom:0;height:100vh;
  }
  body:has(.gate-checkin-page) .organizer-content{margin-left:208px!important;width:calc(100% - 208px)!important}
  .gate-checkin-page{
    position:relative;width:100%;height:968px;min-height:968px;padding:12px 16px 0;
    box-sizing:border-box;background:#f7f8fc;overflow:hidden;
  }
  .gate-checkin-header{height:62px;margin-bottom:10px;border-bottom:0;padding:4px 0 6px}
  .gate-checkin-title{gap:8px}.gate-title-icon{width:38px;height:38px}
  .gate-checkin-header h1{font-size:20px}.gate-checkin-header p{font-size:10px}
  .gate-event-picker{height:42px;min-width:248px;margin-right:8px}
  .gate-kpis{gap:12px;height:124px;margin-bottom:0;align-items:center}
  .gate-kpis article{height:112px;padding:15px 16px;border-radius:8px}
  .gate-kpis article>span{width:46px;height:46px}.gate-kpis svg{width:25px;height:25px}
  .gate-kpis p{font-size:11px}.gate-kpis strong{font-size:26px}
  .gate-checkin-main-grid{
    position:absolute;left:16px;top:214px;width:208px;display:block;margin:0;
  }
  .gate-scanner-card,.gate-manual-card{padding:12px;border-radius:8px;box-sizing:border-box}
  .gate-scanner-card{height:382px;margin-bottom:10px}
  .gate-manual-card{height:178px}
  .gate-card-heading h2{font-size:12px}
  .gate-camera-preview-wrap{height:282px;margin-top:10px;border-radius:7px}
  .gate-camera-frame{width:130px;height:130px}
  .gate-start-button{height:38px;margin-top:8px}
  .gate-scanner-message{font-size:8px;margin:7px 0 0}
  .gate-lookup-form{grid-template-columns:1fr;margin-top:12px}
  .gate-lookup-form label span{font-size:9px;margin-bottom:5px}
  .gate-lookup-form input{height:38px;padding:0 8px;font-size:10px}
  .gate-search-button{height:38px;width:100%;margin-top:0}
  .gate-analytics-grid{
    position:absolute;left:236px;top:214px;width:calc(100% - 252px);height:330px;
    grid-template-columns:minmax(0,2fr) minmax(330px,.95fr);gap:12px;margin:0;
  }
  .gate-chart-card{height:330px;padding:14px;border-radius:8px}
  .gate-line-chart{height:270px}.gate-line-chart svg{height:236px}
  .gate-category-donut{height:252px;gap:18px}
  .gate-donut{width:150px;height:150px}
  .gate-donut:before{width:94px;height:94px}
  .gate-donut-list{min-width:115px}
  .gate-history-card{
    position:absolute;left:236px;top:554px;width:calc(100% - 252px);height:210px;
    box-sizing:border-box;border-radius:8px;padding:12px 14px;margin:0;
  }
  .gate-history-table-wrap{max-height:160px;overflow:auto}
  .gate-history-table th{height:32px}.gate-history-table td{height:36px}
  .gate-system-footer{
    position:absolute;left:16px;right:16px;top:846px;height:42px;
    box-sizing:border-box;border:1px solid #bfdfc8;border-radius:8px;background:#fff;
    display:flex;align-items:center;justify-content:space-between;padding:0 12px;font-size:10px;
  }
  .gate-system-ready,.gate-system-online{display:flex;align-items:center;color:#667085}
  .gate-system-ready i,.gate-system-online i{width:7px;height:7px;border-radius:50%;background:#16a34a;margin-right:7px}
  .gate-system-ready strong{color:#159447}.gate-system-ready b{width:1px;height:16px;background:#dfe4ea;margin:0 10px}
  .gate-system-ready small{font-size:9px;color:#929aaa}.gate-system-online{color:#159447}
}

/* Attendee dashboard and profile redesign */
.attendee-dashboard { background: #f7f8fc; min-height: calc(100vh - 72px); }
.attendee-page-header, .attendee-profile-header { display:flex; align-items:center; justify-content:space-between; margin-bottom:22px; }
.attendee-page-header p, .attendee-profile-header p { margin:0 0 5px; color:#8a94a6; font-size:12px; }
.attendee-page-header h1, .attendee-profile-header h1 { margin:0; color:#172033; font-size:24px; font-weight:750; }
.attendee-export, .attendee-profile-back { height:40px; display:inline-flex; align-items:center; border-radius:8px; background:#fff; border:1px solid #dfe4ec; color:#344054; text-decoration:none; padding:0 16px; font-size:13px; font-weight:700; }
.attendee-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin-bottom:18px; }
.attendee-kpis article { height:112px; display:flex; align-items:center; gap:14px; background:#fff; border:1px solid #edf0f5; border-radius:12px; padding:18px; box-shadow:0 4px 14px rgba(31,42,68,.04); }
.attendee-kpi-icon { width:46px; height:46px; border-radius:12px; display:grid; place-items:center; }
.attendee-kpi-icon svg { width:23px; fill:none; stroke:currentColor; stroke-width:1.8; }
.attendees-blue { background:#eaf3ff; color:#1677ff; }.attendees-green{background:#eaf8ef;color:#16a34a}.attendees-purple{background:#f1edff;color:#7c5ce7}.attendees-gold{background:#fff4df;color:#eaa600}
.attendee-kpis p { margin:0 0 7px; color:#7b8496; font-size:12px; }.attendee-kpis strong { font-size:27px; color:#182033; }
.attendee-analytics { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr); gap:18px; margin-bottom:18px; }
.attendee-chart-card, .attendee-list-card, .attendee-profile-card, .gate-scanner-card, .gate-manual-card, .gate-chart-card, .gate-history-card { background:#fff; border:1px solid #edf0f5; border-radius:12px; box-shadow:0 4px 14px rgba(31,42,68,.04); }
.attendee-chart-card { height:300px; padding:18px 20px 12px; }
.attendee-card-heading { display:flex; align-items:flex-start; justify-content:space-between; }.attendee-card-heading h2,.attendee-profile-card h2,.gate-card-heading h2 { margin:0 0 5px; font-size:15px; color:#202a3b; }.attendee-card-heading p,.gate-card-heading p { margin:0; color:#929aaa; font-size:11px; }.attendee-card-heading>span { border:1px solid #e7eaf0; border-radius:6px; padding:7px 10px; font-size:11px; color:#667085; }
.attendee-line-chart { height:205px; position:relative; }.attendee-line-chart svg { width:100%; height:180px; }.attendee-grid line{stroke:#edf0f4;stroke-width:1}.attendee-line-issued,.attendee-line-checked{fill:none;stroke-width:3}.attendee-line-issued{stroke:#1677ff}.attendee-line-checked{stroke:#16a34a}
.attendee-chart-labels { display:flex; justify-content:space-between; padding:0 12px 0 30px; color:#98a0af; font-size:10px; }.attendee-chart-legend{display:flex;gap:18px;justify-content:center;font-size:10px;color:#667085}.attendee-chart-legend i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px}.legend-issued{background:#1677ff}.legend-checked{background:#16a34a}
.attendee-donut-wrap { height:230px; display:flex; align-items:center; justify-content:center; gap:20px; }.attendee-donut{width:145px;height:145px;border-radius:50%;background:conic-gradient(#1677ff 0 55%,#16a34a 55% 72%,#f59e0b 72% 86%,#8b5cf6 86% 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;color:#fff}.attendee-donut:before{content:"";position:absolute;width:92px;height:92px;border-radius:50%;background:#fff}.attendee-donut strong,.attendee-donut span{position:relative;color:#202a3b}.attendee-donut strong{font-size:22px}.attendee-donut span{font-size:10px;color:#8a94a6}.attendee-donut-list{width:145px}.attendee-donut-list div{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:7px;font-size:10px;margin:10px 0;color:#667085}.attendee-donut-list i{width:7px;height:7px;border-radius:50%;background:var(--dot-color)}.attendee-donut-list strong{color:#202a3b;font-size:11px}
.attendee-list-card { overflow:hidden; }.attendee-list-card>.attendee-card-heading { padding:18px 20px 14px; }.attendee-toolbar{display:grid;grid-template-columns:minmax(180px,1fr) 180px 150px 40px;gap:10px;padding:0 20px 14px}.attendee-toolbar select,.attendee-search{height:40px;border:1px solid #e3e7ed;border-radius:8px;background:#fff;color:#667085;font-size:12px}.attendee-toolbar select{padding:0 10px}.attendee-search{display:flex;align-items:center;padding:0 10px;gap:7px}.attendee-search svg{width:16px;fill:none;stroke:#98a0af;stroke-width:1.7}.attendee-search input{border:0;outline:0;width:100%;font-size:12px}.attendee-filter-button{height:40px;border:1px solid #e3e7ed;border-radius:8px;background:#fff}.attendee-filter-button svg{width:17px;fill:none;stroke:#667085;stroke-width:1.7}
.attendee-table{width:100%;font-size:12px;border-collapse:collapse}.attendee-table th{height:43px;background:#f8f9fb;color:#7b8494;font-size:11px;font-weight:700;text-align:left;border-top:1px solid #edf0f5;border-bottom:1px solid #edf0f5}.attendee-table td{height:66px;border-bottom:1px solid #f0f2f5;color:#4d5667}.attendee-table th,.attendee-table td{padding:0 12px}.attendee-person{display:flex;align-items:center;gap:8px}.attendee-person>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#eaf2ff;color:#1677ff;font-size:11px;font-weight:700}.attendee-person strong{color:#2e3747;font-size:12px}.attendee-status{border-radius:999px;padding:5px 8px;font-size:10px;font-weight:700}.attendee-status i{display:inline-block;width:5px;height:5px;border-radius:50%;margin-right:5px}.attendee-status.checked{background:#eaf7ef;color:#159447}.attendee-status.checked i{background:#16a34a}.attendee-status.pending{background:#fff4df;color:#b7791f}.attendee-status.pending i{background:#f59e0b}.attendee-action{min-height:28px;border:0;border-radius:6px;background:#eef5ff;color:#1677ff;display:inline-flex;align-items:center;justify-content:center;padding:0 10px;text-decoration:none;font-size:11px;font-weight:700}.attendee-action:hover{background:#dfeeff}
.attendee-profile-page{background:#f7f8fc}.attendee-profile-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:18px}.attendee-profile-main,.attendee-profile-side{display:flex;flex-direction:column;gap:18px}.attendee-profile-card{padding:20px}.attendee-profile-person{display:flex;align-items:center;border-bottom:1px solid #edf0f5;padding-bottom:18px;margin-bottom:16px}.attendee-profile-person>span{width:62px;height:62px;border-radius:50%;background:#eaf2ff;color:#1677ff;display:grid;place-items:center;font-size:18px;font-weight:700;margin-right:12px}.attendee-profile-person h2{margin:0 0 4px;font-size:18px}.attendee-profile-person p{margin:0;color:#929aaa;font-size:11px}.attendee-profile-person>strong{margin-left:auto;border-radius:999px;padding:7px 10px;font-size:10px}.checked-profile{background:#eaf7ef;color:#159447}.pending-profile{background:#fff4df;color:#b7791f}.attendee-profile-card dl{margin:0}.attendee-profile-card dl div{display:grid;grid-template-columns:140px 1fr;min-height:34px;align-items:center}.attendee-profile-card dt{color:#929aaa;font-size:11px}.attendee-profile-card dd{margin:0;color:#374151;font-size:12px;font-weight:600}.attendee-timeline{list-style:none;margin:8px 0 0;padding:0}.attendee-timeline li{display:flex;gap:10px;padding:10px 0}.attendee-timeline i{width:9px;height:9px;border-radius:50%;background:#1677ff;margin-top:4px;box-shadow:0 0 0 4px #eaf2ff}.attendee-timeline strong{font-size:12px}.attendee-timeline p{font-size:10px;color:#929aaa;margin:4px 0}.ticket-qr-card{text-align:center}.attendee-qr{width:170px;height:170px;margin:12px auto;display:grid;place-items:center;border:1px solid #edf0f5;border-radius:8px}.attendee-qr svg{width:150px;height:150px}.ticket-qr-card strong,.ticket-qr-card>span{display:block;font-size:11px}.ticket-qr-card>span{color:#929aaa;margin-top:4px}
.ticket-qr-card{padding:16px}.attendee-ticket-pass{overflow:hidden;border:1px solid #dde3ed;border-radius:12px;background:#fff;box-shadow:0 8px 24px rgba(31,42,68,.08)}.attendee-ticket-cover{height:82px;background-size:cover;background-position:center;position:relative;display:flex;align-items:flex-end;padding:9px 12px;color:#fff}.attendee-ticket-cover::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,23,42,.08),rgba(15,23,42,.72))}.attendee-ticket-cover span{position:relative;font-size:8px;letter-spacing:.12em;font-weight:800}.attendee-ticket-cover-default{background:linear-gradient(135deg,#102a5c 0%,#1677ff 55%,#5b8def 100%)}.attendee-ticket-body{padding:12px}.attendee-ticket-event{display:block;font-size:14px!important;color:#172033;line-height:1.25}.attendee-ticket-body>p{margin:5px 0 10px;font-size:9px;color:#929aaa}.attendee-ticket-body .attendee-qr{width:168px;height:168px;margin:0 auto 9px}.attendee-ticket-number{letter-spacing:.02em}.attendee-ticket-category{color:#1677ff!important;margin-top:3px;font-weight:700}

/* Organizer Support Center */
.organizer-support-content{padding:14px 24px 18px!important;background:#f5f7fb!important;min-width:0}.organizer-support-banner{height:112px;border-radius:12px;background:linear-gradient(90deg,#174fc4 0%,#087ee0 62%,#0a9bf1 100%);position:relative;color:#fff;display:flex;align-items:center;padding:0 30px;margin-bottom:18px;overflow:hidden}.organizer-support-banner::after{content:'';position:absolute;right:-20px;top:-55px;width:310px;height:220px;border-radius:50%;background:rgba(255,255,255,.07);box-shadow:-90px 30px 0 rgba(255,255,255,.04)}.organizer-support-headphone{width:58px;height:58px;margin-right:18px}.organizer-support-headphone svg{width:58px;height:58px;fill:#fff;stroke:#fff;stroke-width:1}.organizer-support-banner h1{font-size:31px;margin:0 0 5px;font-weight:800}.organizer-support-banner p{margin:0;font-size:14px;font-weight:600}.organizer-support-agent{position:absolute;right:22px;bottom:12px;width:54px;height:54px;border-radius:50%;background:#dce9ff;border:3px solid rgba(255,255,255,.75);display:grid;place-items:center;color:#174fc4;font-weight:800;z-index:2}.organizer-support-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.organizer-support-kpis article{height:98px;background:#fff;border:1px solid #edf0f5;border-radius:9px;display:flex;align-items:center;padding:16px 18px;box-shadow:0 3px 12px rgba(31,42,68,.03)}.support-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;flex:none;margin-right:14px}.support-icon svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:2}.support-icon-blue{background:#1d67ee;color:#fff}.support-icon-green{background:#12a54a;color:#fff}.support-icon-orange{background:#f5a623;color:#fff}.support-icon-star{background:#246af0;color:#fff}.organizer-support-kpis article div{min-width:0}.organizer-support-kpis article span{display:block;color:#5d6680;font-size:11px;font-weight:800;margin-bottom:3px}.organizer-support-kpis article strong{font-size:21px;color:#172033}.organizer-support-kpis article small{display:block;color:#16a34a;font-size:10px;margin-top:2px}.organizer-support-kpis article small b{font-weight:700}.organizer-support-kpis article small em{font-style:normal}.organizer-support-kpis article small.negative b{color:#f04438}.organizer-support-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:14px}.organizer-support-main,.organizer-support-side{display:flex;flex-direction:column;gap:14px}.organizer-support-card{background:#fff;border:1px solid #edf0f5;border-radius:9px}.organizer-support-card-title{height:62px;display:flex;align-items:center;padding:14px 16px}.support-title-icon{width:34px;height:34px;border-radius:50%;background:#edf4ff;color:#1d67ee;display:grid;place-items:center;margin-right:10px}.support-title-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2}.organizer-support-card-title h2{margin:0;color:#1648a5;font-size:16px}.organizer-support-card-title p{margin:3px 0 0;color:#7c8494;font-size:10px}.support-new-ticket{margin-left:auto;height:36px;border:0;border-radius:7px;background:#1266e8;color:#fff;font-size:11px;font-weight:800;padding:0 12px}.organizer-support-tabs{height:48px;border-top:1px solid #f0f2f5;border-bottom:1px solid #edf0f5;display:flex;align-items:center;padding:7px 12px;gap:4px}.organizer-support-tabs button{border:0;background:transparent;color:#526071;height:34px;border-radius:7px;padding:0 10px;font-size:10px}.organizer-support-tabs button.is-active{background:#edf4ff;color:#1558d4;font-weight:800}.organizer-support-tabs button i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#1677ff;margin-right:4px}.organizer-support-tabs label{margin-left:auto;width:180px;height:34px;border:1px solid #dfe4ec;border-radius:7px;display:flex;align-items:center;padding:0 8px}.organizer-support-tabs label svg{width:14px;height:14px;fill:none;stroke:#7c8494;stroke-width:2}.organizer-support-tabs input{border:0;outline:0;width:100%;font-size:10px;padding-left:5px}.organizer-support-tabs .support-filter-button{border:1px solid #dfe4ec;background:#edf4ff;color:#1558d4;margin-left:5px}.organizer-support-table-wrap{overflow:auto}.organizer-support-table{width:100%;border-collapse:collapse;font-size:10px}.organizer-support-table th{height:40px;text-align:left;color:#174ca1;background:#fafbfe;font-weight:800;padding:0 8px}.organizer-support-table td{height:50px;border-top:1px solid #edf0f5;padding:0 8px;color:#5b6476}.organizer-support-table td:first-child{color:#174ca1;font-weight:800;width:70px}.organizer-support-table td strong{color:#174ca1;font-size:10px}.organizer-support-table td a{color:#174ca1;text-decoration:none;font-weight:800}.support-category,.support-priority,.support-status{display:inline-flex;align-items:center;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:700}.support-category-technical{background:#dbe8ff;color:#2864c9}.support-category-payments{background:#e2f2e5;color:#188b43}.support-category-events{background:#efe3ff;color:#7046b7}.support-priority b{margin-right:4px}.priority-high{color:#e02d2d;background:#fff}.priority-medium{color:#ed8d00;background:#fff}.priority-low{color:#169447;background:#fff}.support-status{color:#3e4c61}.support-status i{width:7px;height:7px;border-radius:50%;background:#1677ff;margin-right:4px}.status-resolved{color:#169447}.status-resolved i{background:#16a34a}.support-view{height:28px;border:1px solid #dce4f0;border-radius:6px;background:#edf4ff;color:#1558d4;font-size:9px;font-weight:800}.organizer-support-category-title{border-bottom:1px solid #edf0f5}.organizer-support-category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:12px 16px 16px}.organizer-support-category-grid a{height:122px;border-radius:7px;background:#f7f9fd;text-decoration:none;text-align:center;color:#5a6578;padding:10px 5px}.organizer-support-category-grid i{width:36px;height:36px;border-radius:50%;background:#fff;color:#1677ff;display:grid;place-items:center;margin:0 auto 7px}.organizer-support-category-grid svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2}.organizer-support-category-grid strong{display:block;color:#174ca1;font-size:11px;margin-bottom:5px}.organizer-support-category-grid span{font-size:9px;line-height:1.45}.organizer-support-help{padding-bottom:10px}.organizer-support-create{width:calc(100% - 24px);height:42px;border:0;border-radius:7px;background:#1568e6;color:#fff;margin:0 12px 10px;font-size:11px;font-weight:800}.organizer-support-create b{float:right;margin-right:12px;font-size:15px}.organizer-support-help>a{height:54px;margin:0 12px 7px;border:1px solid #edf0f5;border-radius:7px;display:flex;align-items:center;text-decoration:none;color:#174ca1;padding:0 12px}.organizer-support-help>a>i{width:28px;color:#1568e6;margin-right:10px}.organizer-support-help>a svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2}.organizer-support-help>a strong,.organizer-support-help>a span{display:block;font-size:10px}.organizer-support-help>a span{color:#5e6675;margin-top:4px;font-size:9px}.organizer-support-help>a span b{color:#16a34a}.organizer-support-quick{padding-bottom:10px}.organizer-support-quick>p{font-size:9px;color:#7c8494;margin:-8px 0 5px 16px}.organizer-support-quick>a{height:34px;display:flex;align-items:center;justify-content:space-between;margin:0 12px;padding:0 5px;color:#174ca1;text-decoration:none;font-size:10px;font-weight:700;border-top:1px solid transparent}.organizer-support-status{height:42px;margin-top:14px;border:1px solid #edf0f5;border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 16px;color:#3e4c61;font-size:9px}.organizer-support-status>span i{width:18px;height:18px;border-radius:50%;display:inline-grid;place-items:center;background:#16a34a;color:#fff;margin-right:7px;font-style:normal}.organizer-support-status small{color:#737b89;font-size:9px}.organizer-support-status small::first-letter{color:#16a34a}.organizer-support-toast{position:fixed;right:24px;top:76px;z-index:30;background:#13783a;color:#fff;border-radius:8px;padding:12px 16px;font-size:12px}.organizer-support-tabs>a{height:34px;border-radius:7px;padding:0 10px;color:#526071;text-decoration:none;font-size:10px;display:flex;align-items:center;white-space:nowrap}.organizer-support-tabs>a.is-active{background:#edf4ff;color:#1558d4;font-weight:800}.organizer-support-tabs>form{margin-left:auto;display:flex;align-items:center}.organizer-support-tabs>form label{margin-left:0}.organizer-support-pagination{padding:8px 12px;border-top:1px solid #edf0f5}.organizer-support-pagination nav{font-size:11px}.organizer-support-dialog{width:min(520px,calc(100vw - 32px));border:0;border-radius:12px;padding:0;box-shadow:0 20px 60px rgba(15,23,42,.22)}.organizer-support-dialog form{padding:20px}.organizer-support-dialog header,.organizer-support-dialog footer{display:flex;align-items:center;justify-content:space-between}.organizer-support-dialog header h2{margin:0;font-size:18px}.organizer-support-dialog header p{margin:4px 0 16px;color:#7c8494;font-size:11px}.organizer-support-dialog header button{border:0;background:transparent;font-size:24px}.organizer-support-dialog label{display:flex;flex-direction:column;font-size:11px;font-weight:700;color:#4c5668;margin-bottom:12px}.organizer-support-dialog input,.organizer-support-dialog select,.organizer-support-dialog textarea{margin-top:6px;border:1px solid #dfe4ec;border-radius:7px;padding:9px;font:inherit}.organizer-support-dialog form>div{display:grid;grid-template-columns:1fr 1fr;gap:12px}.organizer-support-dialog footer button{height:38px;border-radius:7px;padding:0 14px;border:1px solid #dfe4ec;background:#fff;font-weight:700}.organizer-support-dialog footer button:last-child{border:0;background:#1568e6;color:#fff}
.organizer-live-chat{position:fixed;right:24px;bottom:20px;z-index:50;font-family:Montserrat,sans-serif}.organizer-live-chat-toggle{height:46px;border:0;border-radius:24px;background:#1568e6;color:#fff;box-shadow:0 10px 28px rgba(21,104,230,.32);display:flex;align-items:center;gap:8px;padding:0 16px;font-size:12px;font-weight:800}.organizer-live-chat-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2}.organizer-live-chat-toggle i{width:8px;height:8px;border-radius:50%;background:#4ade80;border:2px solid #fff}.organizer-live-chat-panel{position:absolute;right:0;bottom:58px;width:340px;height:460px;background:#fff;border:1px solid #e2e7ef;border-radius:14px;box-shadow:0 18px 50px rgba(15,23,42,.18);overflow:hidden}.organizer-live-chat-panel>header{height:68px;background:linear-gradient(135deg,#174fc4,#1684e8);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 14px}.organizer-live-chat-panel>header>div{display:flex;align-items:center}.organizer-live-chat-panel>header>div>i{width:38px;height:38px;border-radius:50%;background:#fff url('/images/vdm-pass-app-icon.png') center/72% no-repeat;margin-right:9px;border:2px solid rgba(255,255,255,.7)}.organizer-live-chat-panel>header strong,.organizer-live-chat-panel>header small{display:block}.organizer-live-chat-panel>header strong{font-size:12px}.organizer-live-chat-panel>header small{font-size:9px;margin-top:4px;color:#d8e9ff}.organizer-live-chat-close{border:0;background:transparent;color:#fff;font-size:22px}.organizer-live-chat-messages{height:342px;overflow-y:auto;padding:14px;background:#f7f9fc}.chat-message{max-width:82%;margin-bottom:10px;border-radius:10px;padding:9px 11px}.chat-message strong{font-size:9px;display:block;margin-bottom:4px}.chat-message p{margin:0;font-size:11px;line-height:1.45}.chat-message time{display:block;text-align:right;font-size:8px;margin-top:4px;opacity:.65}.chat-support{background:#fff;border:1px solid #e8edf4;color:#374151;border-bottom-left-radius:3px}.chat-user{background:#1568e6;color:#fff;margin-left:auto;border-bottom-right-radius:3px}.organizer-live-chat-form{height:50px;border-top:1px solid #e8edf4;display:flex;align-items:center;padding:7px 9px}.organizer-live-chat-form input{height:36px;flex:1;border:0;outline:0;font-size:11px;padding:0 8px}.organizer-live-chat-form button{width:36px;height:36px;border:0;border-radius:50%;background:#1568e6;color:#fff;display:grid;place-items:center}.organizer-live-chat-form button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2}
@media(max-width:800px){.organizer-live-chat{right:12px;bottom:12px}.organizer-live-chat-panel{position:fixed;right:12px;left:12px;bottom:68px;width:auto;height:min(460px,70vh)}.organizer-live-chat-messages{height:calc(min(460px,70vh) - 118px)}}

@media (max-width:1100px){.organizer-support-grid{grid-template-columns:minmax(0,1fr) 220px}.organizer-support-kpis{grid-template-columns:repeat(2,1fr)}.organizer-support-content{padding-left:16px!important;padding-right:16px!important}}
@media (max-width:800px){body:has(.organizer-support-workspace) .organizer-sidebar{display:none}.organizer-support-content{margin-left:0!important;width:100%!important;padding:12px!important}.organizer-support-banner{height:100px;padding:0 16px}.organizer-support-banner h1{font-size:24px}.organizer-support-headphone,.organizer-support-headphone svg{width:44px;height:44px}.organizer-support-agent{display:none}.organizer-support-grid{display:flex;flex-direction:column}.organizer-support-main,.organizer-support-side{min-width:0}.organizer-support-side{order:1;display:grid;grid-template-columns:minmax(0,1fr)}.organizer-support-kpis{gap:8px}.organizer-support-kpis article{height:82px;padding:10px}.support-icon{width:44px;height:44px;margin-right:8px}.organizer-support-tabs{overflow-x:auto}.organizer-support-tabs label{min-width:150px}.organizer-support-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Gate staff check-in redesign */
.gate-checkin-page{max-width:none;width:100%;padding:24px 28px;background:#f7f8fc}.gate-checkin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.gate-checkin-header p{margin:0 0 5px;color:#929aaa;font-size:12px}.gate-checkin-header h1{margin:0;color:#172033;font-size:24px}.gate-checkin-header span{display:block;color:#929aaa;font-size:11px;margin-top:5px}.gate-back-button{height:40px;display:inline-flex;align-items:center;border:1px solid #e3e7ed;border-radius:8px;background:#fff;color:#455064;text-decoration:none;padding:0 14px;font-size:12px;font-weight:700}.gate-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.gate-kpis article{height:100px;background:#fff;border:1px solid #edf0f5;border-radius:12px;display:flex;align-items:center;gap:12px;padding:16px}.gate-kpis article>span{width:42px;height:42px;border-radius:10px;background:#eaf2ff;color:#1677ff;display:grid;place-items:center}.gate-kpis svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8}.gate-kpis p{margin:0 0 6px;font-size:11px;color:#929aaa}.gate-kpis strong{font-size:24px;color:#202a3b}.gate-checkin-main-grid{display:grid;grid-template-columns:minmax(340px,.75fr) minmax(360px,1.25fr);gap:18px;margin-bottom:18px}.gate-scanner-card,.gate-manual-card,.gate-chart-card,.gate-history-card{padding:18px}.gate-card-heading{display:flex;align-items:center;justify-content:space-between}.gate-live-status,.gate-system-status{font-size:10px;color:#159447;background:#eaf7ef;border-radius:999px;padding:6px 9px}.gate-live-status i,.gate-system-status i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#16a34a;margin-right:5px}.gate-camera-preview-wrap{position:relative;height:230px;background:#111827;border-radius:10px;margin-top:14px;overflow:hidden}.gate-camera-preview{width:100%;height:100%;object-fit:cover}.gate-camera-frame{position:absolute;width:150px;height:150px;left:50%;top:50%;transform:translate(-50%,-50%)}.gate-camera-frame i{position:absolute;width:28px;height:28px;border-color:#fff;border-style:solid}.gate-camera-frame i:nth-child(1){left:0;top:0;border-width:3px 0 0 3px}.gate-camera-frame i:nth-child(2){right:0;top:0;border-width:3px 3px 0 0}.gate-camera-frame i:nth-child(3){right:0;bottom:0;border-width:0 3px 3px 0}.gate-camera-frame i:nth-child(4){left:0;bottom:0;border-width:0 0 3px 3px}.gate-start-button,.gate-search-button{height:42px;border:0;border-radius:8px;background:#1677ff;color:#fff;font-weight:700;font-size:12px}.gate-start-button{width:100%;margin-top:12px}.gate-scanner-message{font-size:10px;text-align:center;color:#929aaa;margin:9px 0 0}.gate-lookup-form{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:10px;margin-top:18px}.gate-lookup-form label span{display:block;color:#929aaa;font-size:10px;margin-bottom:7px}.gate-lookup-form input{width:100%;height:42px;border:1px solid #e3e7ed;border-radius:8px;padding:0 12px;font-size:12px}.gate-search-button{align-self:end;display:flex;align-items:center;justify-content:center;gap:7px}.gate-search-button svg{width:16px;fill:none;stroke:#fff;stroke-width:2}.gate-analytics-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.8fr);gap:18px;margin-bottom:18px}.gate-chart-card{height:300px}.gate-line-chart{height:220px}.gate-line-chart svg{width:100%;height:190px}.gate-grid line{stroke:#edf0f4}.gate-line-chart polyline{fill:none;stroke:#1677ff;stroke-width:3}.gate-line-chart>div{display:flex;justify-content:space-between;padding:0 15px 0 45px;font-size:10px;color:#929aaa}.gate-category-bars{padding-top:18px}.gate-category-bars>div{display:grid;grid-template-columns:110px 1fr 30px;align-items:center;gap:9px;font-size:11px;margin:13px 0}.gate-category-bars i{height:8px;border-radius:999px;background:#edf0f5;overflow:hidden}.gate-category-bars b{height:100%;display:block;border-radius:999px;background:#1677ff}.gate-history-card{margin-bottom:20px}.gate-history-list{list-style:none;margin:14px 0 0;padding:0}.gate-history-list li{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #f0f2f5;padding:12px 0}.gate-history-list strong{font-size:12px}.gate-history-list small{display:block;color:#929aaa;margin-top:4px}.status-pill{border-radius:999px;padding:5px 8px;font-size:10px;background:#eaf7ef;color:#159447}

/* Gate check-in reference layout */
body:has(.gate-checkin-page) .organizer-workspace { background:#f7f8fc }
body:has(.gate-checkin-page) .organizer-content { max-width:none }
body:has(.gate-checkin-page) .organizer-inventory-sidebar { width:238px }
.gate-checkin-page{padding:18px 24px 12px;background:#f7f8fc;overflow:hidden}
.gate-checkin-header{height:72px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid #e8edf5}
.gate-checkin-title{display:flex;align-items:center;gap:10px}
.gate-title-icon{width:38px;height:38px;border-radius:9px;background:#edf4ff;color:#1677ff;display:grid;place-items:center}
.gate-title-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8}
.gate-checkin-header h1{font-size:19px;line-height:1.2}
.gate-checkin-header p{font-size:10px;margin:4px 0 0;color:#9aa2b1}
.gate-event-picker{margin-left:auto;margin-right:12px;min-width:250px;height:44px;border:1px solid #e4e8ef;border-radius:8px;padding:7px 42px 7px 12px;background:#fff;position:relative}
.gate-event-picker span{font-size:11px;font-weight:700;color:#303849;margin:0}
.gate-event-picker small{display:flex;align-items:center;gap:5px;font-size:9px;color:#929aaa;margin-top:3px}
.gate-event-picker small svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:1.7}
.gate-event-picker i{position:absolute;right:14px;top:18px;width:7px;height:7px;border-right:1.5px solid #7b8494;border-bottom:1.5px solid #7b8494;transform:rotate(45deg)}
.gate-live-button{height:36px;min-width:64px;border-radius:8px;background:#eaf8ef;color:#159447;text-decoration:none;display:flex;align-items:center;justify-content:center;gap:6px;font-size:11px;font-weight:700}
.gate-live-button i{width:6px;height:6px;border-radius:50%;background:#16a34a}
.gate-kpis{gap:12px;margin-bottom:14px}
.gate-kpis article{height:78px;border-radius:9px;padding:12px}
.gate-kpis article>span{width:38px;height:38px;border-radius:8px}
.gate-kpis p{font-size:10px;margin-bottom:3px}.gate-kpis strong{font-size:21px}
.gate-checkin-main-grid{grid-template-columns:minmax(300px,.75fr) minmax(300px,1fr);gap:12px;margin-bottom:12px}
.gate-scanner-card,.gate-manual-card,.gate-chart-card,.gate-history-card{border-radius:9px;padding:14px}
.gate-card-heading h2{font-size:13px}.gate-card-heading p{font-size:9px}
.gate-scanner-card{min-height:260px}.gate-manual-card{min-height:260px;position:relative}
.gate-camera-preview-wrap{height:178px;margin-top:10px}.gate-camera-frame{width:120px;height:120px}
.gate-start-button{height:38px;margin-top:9px}.gate-scanner-message{font-size:9px;margin-top:7px}
.gate-lookup-form{margin-top:14px;grid-template-columns:minmax(0,1fr) 86px}.gate-lookup-form input,.gate-start-button{font-size:11px}.gate-search-button{height:38px}
.gate-lookup-result{margin-top:14px!important}.gate-manual-card .notice{margin-top:12px}
.gate-analytics-grid{grid-template-columns:minmax(0,1.45fr) minmax(260px,.7fr);gap:12px;margin-bottom:12px}
.gate-chart-card{height:240px}.gate-line-chart{height:188px}.gate-line-chart svg{height:158px}.gate-line-chart>div{font-size:9px;padding-left:38px}
.gate-category-donut{height:180px;display:flex;align-items:center;justify-content:center;gap:28px}.gate-donut{width:128px;height:128px;border-radius:50%;background:conic-gradient(#1677ff 0 55%,#16a34a 55% 72%,#f59e0b 72% 86%,#8b5cf6 86% 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}
.gate-donut:before{content:"";position:absolute;width:80px;height:80px;border-radius:50%;background:#fff}.gate-donut strong,.gate-donut span{position:relative;color:#202a3b}.gate-donut strong{font-size:20px}.gate-donut span{font-size:9px;color:#929aaa}
.gate-donut-list{min-width:120px}.gate-donut-list div{display:grid;grid-template-columns:8px 1fr auto;align-items:center;gap:7px;font-size:9px;margin:9px 0;color:#667085}.gate-donut-list i{width:7px;height:7px;border-radius:50%;background:#1677ff}.gate-donut-list strong{font-size:10px;color:#303849}
.gate-history-card{margin-bottom:0;padding:12px 14px}.gate-history-card>.gate-card-heading{padding-bottom:8px;border-bottom:1px solid #f0f2f5}
.gate-history-table-wrap{max-height:180px;overflow:auto}.gate-history-table{width:100%;border-collapse:collapse;font-size:10px}.gate-history-table th{height:34px;text-align:left;color:#929aaa;font-weight:600;background:#fafbfc}.gate-history-table td{height:42px;border-top:1px solid #f0f2f5;color:#596174}.gate-history-table th,.gate-history-table td{padding:0 8px}.gate-attendee{display:flex;align-items:center;gap:7px}.gate-attendee i{width:26px;height:26px;border-radius:50%;background:#eaf2ff;color:#1677ff;display:grid;place-items:center;font-style:normal;font-size:9px;font-weight:700}.gate-attendee strong{font-size:10px;color:#303849}
body:has(.gate-checkin-page) .site-header{height:58px;min-height:58px}
body:has(.gate-checkin-page) .site-header .nav-shell{height:58px}

@media (min-width:821px){
  body:has(.gate-checkin-page){padding-top:0!important}
  body:has(.gate-checkin-page) .organizer-inventory-sidebar{position:fixed;top:0;bottom:0;height:100vh}
  body:has(.gate-checkin-page) .organizer-content{margin-left:208px}
  .gate-checkin-page{min-height:100vh;padding-top:12px}
}

@media (max-width:820px){
.attendee-dashboard,.attendee-profile-page,.gate-checkin-page{padding:0 12px 24px}.attendee-page-header,.attendee-profile-header{margin-bottom:14px}.attendee-page-header h1,.attendee-profile-header h1,.gate-checkin-header h1{font-size:20px}.attendee-export{display:none}.attendee-kpis,.gate-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.attendee-kpis article,.gate-kpis article{height:88px;padding:12px}.attendee-kpi-icon{width:38px;height:38px}.attendee-kpis strong,.gate-kpis strong{font-size:21px}.attendee-analytics,.attendee-profile-grid,.gate-checkin-main-grid,.gate-analytics-grid{grid-template-columns:1fr}.attendee-chart-card{height:280px}.attendee-event-chart{height:260px}.attendee-toolbar{grid-template-columns:minmax(0,1fr) 40px}.attendee-toolbar select{display:none}.attendee-list-card{overflow:hidden}.attendee-table th:nth-child(3),.attendee-table td:nth-child(3),.attendee-table th:nth-child(4),.attendee-table td:nth-child(4){display:none}.attendee-table th,.attendee-table td{padding:0 8px}.attendee-profile-back,.gate-back-button{display:none}.attendee-profile-grid{display:block}.attendee-profile-side{margin-top:18px}.attendee-profile-card dl div{grid-template-columns:120px 1fr}.gate-checkin-header{align-items:flex-start}.gate-camera-preview-wrap{height:210px}.gate-lookup-form{grid-template-columns:1fr}.gate-search-button{width:100%}.gate-chart-card{height:auto}.gate-category-bars{padding-bottom:4px}.gate-history-card{overflow:hidden}.gate-history-list li{gap:10px}
}

.analytics-ticket-sales-panel,
.analytics-category-panel {
    min-height: 13.6rem;
}

.analytics-ticket-sales-panel {
    display: flex;
    flex-direction: column;
}

.analytics-ticket-sales-panel .analytics-line-chart {
    flex: 1 1 auto;
}

body {
    background: var(--vdm-background);
    color: var(--vdm-text);
    font-family: var(--vdm-font-family);
    line-height: var(--vdm-line-height-relaxed);
}

:where(button, input, select, textarea, a, summary):focus-visible {
    outline: 3px solid var(--vdm-blue);
    outline-offset: 3px;
}

:where(button, input, select, textarea) {
    font: inherit;
}

a {
    text-underline-offset: 0.18em;
}

.btn {
    min-height: 44px;
    border-radius: var(--vdm-radius-md);
    font-family: inherit;
    transition: color 160ms ease, background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.btn-primary,
.site-header .btn-primary,
.search-box .btn-primary {
    border-color: rgba(225, 6, 0, 0.18);
    background: var(--vdm-red-soft);
    color: var(--vdm-red-ink);
    box-shadow: none;
}

.btn-primary:hover,
.btn-primary:focus-visible,
.btn-primary:active,
.site-header .btn-primary:hover,
.site-header .btn-primary:focus-visible,
.site-header .btn-primary:active,
.search-box .btn-primary:hover,
.search-box .btn-primary:focus-visible,
.search-box .btn-primary:active {
   border-color: var(--vdm-blue-interaction);
   background: var(--vdm-blue-interaction);
    color: var(--vdm-white);
    box-shadow: 0 8px 20px rgba(0, 123, 255, 0.22);
}

.btn-ghost {
    border-color: var(--vdm-border);
    background: var(--vdm-white);
    color: var(--vdm-navy);
}

.site-header .btn-ghost {
    border-color: rgba(255, 255, 255, 0.45);
    background: transparent;
    color: var(--vdm-white);
}

.site-header-search {
    position: relative;
    display: none;
    width: min(15rem, 22vw);
    margin: 0;
}

.site-header-search-toggle {
    display: none;
}

.site-header-search-input-wrap {
    display: flex;
    min-height: 2.35rem;
    align-items: center;
    gap: 0.45rem;
    padding: 0 0.4rem 0 0.65rem;
    border: 1px solid rgba(255, 255, 255, 0.42);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.1);
    color: var(--vdm-white);
    transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.site-header-search-input-wrap:focus-within {
    border-color: rgba(255, 255, 255, 0.8);
    background: rgba(255, 255, 255, 0.16);
    box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.12);
}

.site-header-search-input-wrap > svg {
    width: 1rem;
    height: 1rem;
    flex: 0 0 auto;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-width: 1.8;
}

.site-header-search-input-wrap input {
    width: 100%;
    min-width: 0;
    min-height: 2.15rem;
    padding: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--vdm-white);
    font: inherit;
    font-size: 0.78rem;
}

.site-header-search-input-wrap input::placeholder {
    color: rgba(255, 255, 255, 0.78);
}

.site-header-search-input-wrap input::-webkit-search-cancel-button {
    filter: invert(1);
}

.site-header-search-input-wrap button {
    display: grid;
    width: 1.75rem;
    height: 1.75rem;
    flex: 0 0 auto;
    place-items: center;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: var(--vdm-gold);
    color: var(--vdm-navy);
    cursor: pointer;
}

.site-header-search-input-wrap button:hover,
.site-header-search-input-wrap button:focus-visible {
    background: var(--vdm-white);
}

.site-header-search-input-wrap button svg {
    width: 1rem;
    height: 1rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.site-header-search-results {
    position: absolute;
    z-index: 30;
    top: calc(100% + 0.75rem);
    right: 0;
    width: min(25rem, max(19rem, calc(100vw - 2rem)));
    padding: 1rem;
    border: 1px solid #dce5f8;
    border-radius: 1rem;
    background: var(--vdm-white);
    box-shadow: 0 16px 38px rgba(11, 31, 107, 0.22);
    color: var(--vdm-text);
    max-height: min(24rem, 60vh);
    margin-top: 0.6rem;
    overflow-y: auto;
}

.site-header-search-status {
    margin: 0;
    padding: 0.35rem 0.25rem;
    color: var(--vdm-muted);
    font-size: 0.8rem;
}

.site-header-search-result-list {
    display: grid;
    gap: 0.2rem;
}

.site-header-search-result {
    display: grid;
    gap: 0.15rem;
    padding: 0.55rem 0.65rem;
    border-radius: 0.55rem;
    color: var(--vdm-navy);
    text-decoration: none;
}

.site-header-search-result:hover,
.site-header-search-result:focus-visible {
    background: var(--vdm-info-soft);
}

.site-header-search-result-type {
    color: var(--vdm-blue);
    font-size: 0.68rem;
    font-weight: 800;
    text-transform: uppercase;
}

.site-header-search-result strong {
    font-size: 0.88rem;
}

.site-header-search-result-detail {
    color: var(--vdm-muted);
    font-size: 0.76rem;
}

@media (min-width: 1024px) {
    .site-header-search {
        display: block;
        width: 15rem;
        flex: 0 0 15rem;
        margin: 0;
        justify-self: center;
    }

    .site-header .nav-shell:has(> .site-header-search):not(:has(> .dashboard-clock)) {
        display: grid;
        grid-template-columns: auto auto minmax(15rem, 1fr) auto auto;
        column-gap: 1rem;
        justify-content: stretch;
        width: min(1800px, calc(100% - 3rem));
    }

    .site-header .nav-shell:has(> .site-header-search):not(:has(> .dashboard-clock)) > .brand-logo {
        grid-column: 1;
    }

    .site-header .nav-shell:has(> .site-header-search):not(:has(> .dashboard-clock)) > .main-nav {
        grid-column: 2;
    }

    .site-header .nav-shell:has(> .site-header-search):not(:has(> .dashboard-clock)) > .site-header-search {
        grid-column: 3;
    }

    .site-header .nav-shell:has(> .site-header-search):not(:has(> .dashboard-clock)) > .site-notifications {
        grid-column: 4;
    }

    .site-header .nav-shell:has(> .site-header-search):not(:has(> .dashboard-clock)) > .nav-actions {
        grid-column: 5;
    }
}

@media (min-width: 1024px) and (max-width: 1199px) {
    .site-header .nav-shell:has(> .site-header-search):not(:has(> .dashboard-clock)) {
        column-gap: 0.7rem;
    }

    .site-header .nav-shell:has(> .site-header-search):not(:has(> .dashboard-clock)) > .main-nav {
        gap: 0.55rem;
        white-space: nowrap;
    }

    .site-header .nav-shell:has(> .site-header-search):not(:has(> .dashboard-clock)) > .main-nav a {
        flex-shrink: 0;
        white-space: nowrap;
    }
}

.site-header .btn-ghost:hover,
.site-header .btn-ghost:focus-visible,
.site-header .btn-ghost:active {
    border-color: var(--vdm-gold);
    background: rgba(255, 255, 255, 0.08);
    color: var(--vdm-white);
}

.btn-danger,
.btn-danger:hover,
.btn-danger:focus-visible,
.btn-danger:active {
    border-color: var(--vdm-red);
    background: var(--vdm-red);
    color: var(--vdm-white);
}

.btn:disabled,
.btn[aria-disabled="true"] {
    cursor: not-allowed;
    opacity: 0.55;
    transform: none;
}

.form-field input,
.form-field select,
.form-field textarea,
.form-input,
.profile-page input:not([type="checkbox"]),
.profile-page select,
.profile-page textarea,
.auth-card input:not([type="checkbox"]),
.auth-card select,
.auth-card textarea,
.search-box input,
.search-box select {
    border-color: var(--vdm-border);
    border-radius: var(--vdm-radius-md);
    color: var(--vdm-text);
    font-family: inherit;
}

.form-field input,
.form-field select,
.form-field textarea,
.auth-card input:not([type="checkbox"]),
.auth-card select,
.auth-card textarea,
.search-box input,
.search-box select {
    min-height: 44px;
    background-color: var(--vdm-white);
}

:where(input, select, textarea):disabled {
    background-color: #EDF0F5;
    color: var(--vdm-muted);
    cursor: not-allowed;
    opacity: 0.8;
}

:where(input[type="checkbox"], input[type="radio"]) {
    accent-color: var(--vdm-blue);
}

.form-field input:focus,
.form-field select:focus,
.form-field textarea:focus,
.form-input:focus,
.profile-page input:focus,
.profile-page select:focus,
.profile-page textarea:focus,
.auth-card input:focus,
.auth-card select:focus,
.auth-card textarea:focus,
.search-box input:focus,
.search-box select:focus {
    border-color: var(--vdm-blue);
    outline: 3px solid rgba(0, 123, 255, 0.2);
    outline-offset: 1px;
}

.form-input {
    width: 100%;
    min-height: 48px;
    padding: var(--vdm-space-3) var(--vdm-space-4);
    border: 1px solid var(--vdm-border);
    background: var(--vdm-white);
}

.form-label {
    display: block;
    color: var(--vdm-text);
    font-size: var(--vdm-font-size-sm);
    font-weight: var(--vdm-font-weight-semibold);
}

.form-error {
    margin: var(--vdm-space-2) 0 0;
    padding: 0;
    color: var(--vdm-red-ink);
    font-size: var(--vdm-font-size-sm);
    list-style: none;
}

.account-delete-section {
    display: grid;
    gap: var(--vdm-space-4);
    padding: var(--vdm-space-6);
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-lg);
    background: var(--vdm-white);
}

.account-delete-section h2,
.account-delete-form h2 {
    margin: 0;
    color: var(--vdm-navy);
    font-size: var(--vdm-font-size-lg);
}

.account-delete-section p,
.account-delete-form p {
    margin: var(--vdm-space-2) 0 0;
    color: var(--vdm-muted);
}

.account-delete-password {
    display: grid;
    gap: var(--vdm-space-2);
    margin-top: var(--vdm-space-5);
}

.account-delete-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: var(--vdm-space-3);
    margin-top: var(--vdm-space-6);
}

.vdm-modal {
    width: calc(100% - 2rem);
    max-height: calc(100% - 2rem);
    margin: auto;
    padding: 0;
    overflow: visible;
    border: 0;
    background: transparent;
}

.vdm-modal::backdrop {
    background: rgba(11, 31, 107, 0.62);
    backdrop-filter: blur(2px);
}

.vdm-modal-panel {
    max-height: calc(100vh - 2rem);
    overflow-y: auto;
    padding: var(--vdm-space-6);
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-lg);
    background: var(--vdm-white);
    box-shadow: var(--vdm-shadow-raised);
}

.vdm-modal-sm { max-width: 24rem; }
.vdm-modal-md { max-width: 28rem; }
.vdm-modal-lg { max-width: 32rem; }
.vdm-modal-xl { max-width: 36rem; }
.vdm-modal-2xl { max-width: 42rem; }

.section-header h1,
.section-header h2,
.page-shell h1,
.dashboard-shell h1,
.page-card h1,
.page-card h2,
.page-card h3 {
    color: var(--vdm-navy);
}

.section-header h1,
.section-header h2,
.page-shell h1,
.dashboard-shell h1,
.page-card h1,
.page-card h2,
.page-card h3 {
    line-height: var(--vdm-line-height-tight);
}

.section-header .muted-copy {
    margin: var(--vdm-space-2) 0 0;
}

.event-card,
.category-card,
.event-row,
.dashboard-card,
.page-card,
.ticket-panel,
.empty-state,
.application-notice,
.application-list-card,
.organizer-profile {
    border-color: var(--vdm-border);
    border-radius: var(--vdm-radius-lg);
    box-shadow: var(--vdm-shadow-card);
}

.event-card,
.category-card,
.event-row,
.dashboard-card,
.page-card,
.ticket-panel,
.ticket-admin-card,
.ticket-option {
    background-color: var(--vdm-white);
}

.event-card,
.ticket-admin-card,
.ticket-option {
    border: 1px solid var(--vdm-border);
}

.ticket-admin-card,
.ticket-option {
    border-radius: var(--vdm-radius-md);
}

.ticket-option:focus-within {
    border-color: var(--vdm-blue);
    box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.16);
}

.site-header {
    background: var(--vdm-navy);
    color: var(--vdm-white);
}

.organizer-unified-mobile-header {
    display: none;
}

.guest-page > .site-header {
    display: none;
}

.main-nav a {
    border-radius: var(--vdm-radius-sm);
    color: var(--vdm-white);
    text-decoration: none;
    transition: color 160ms ease, background-color 160ms ease;
}

.main-nav a:hover,
.main-nav a:focus-visible {
    background: rgba(255, 255, 255, 0.08);
    color: var(--vdm-gold);
}

.mobile-nav summary {
    min-width: 44px;
    min-height: 44px;
    border-radius: var(--vdm-radius-sm);
}

.mobile-nav summary:focus-visible {
    outline-color: var(--vdm-gold);
}

.mobile-nav nav {
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-md);
    background: var(--vdm-white);
    box-shadow: var(--vdm-shadow-raised);
}

.mobile-nav nav a,
.mobile-nav nav button {
    min-height: 44px;
    color: var(--vdm-navy);
}

.mobile-nav nav a:hover,
.mobile-nav nav a:focus-visible,
.mobile-nav nav button:hover,
.mobile-nav nav button:focus-visible {
    background: var(--vdm-info-soft);
    color: var(--vdm-navy);
}

.event-image-placeholder,
.hero-image-placeholder {
    display: grid;
    place-items: center;
    background:
        radial-gradient(circle at 75% 30%, rgba(244, 180, 0, 0.3), transparent 28%),
        linear-gradient(135deg, var(--vdm-navy), #123A9A);
    color: var(--vdm-gold);
}

.event-image-placeholder span,
.hero-image-placeholder span {
    padding: var(--vdm-space-2) var(--vdm-space-4);
    border: 1px solid rgba(244, 180, 0, 0.45);
    border-radius: var(--vdm-radius-pill);
    background: rgba(11, 31, 107, 0.45);
    font-size: var(--vdm-font-size-xs);
    font-weight: var(--vdm-font-weight-bold);
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.event-image-placeholder {
    min-height: 190px;
}

.event-card {
    position: relative;
}

.event-date-badge {
    position: absolute;
    z-index: 2;
    top: 0.45rem;
    right: 0.45rem;
    display: grid;
    width: 30px;
    overflow: hidden;
    border-radius: 7px;
    background: #0b1f6b;
    color: #fff;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.24);
}

.event-date-badge span:first-child {
    padding: 0.1rem 0.12rem 0.08rem;
    background: #ffbf00;
    color: #0b1f6b;
    font-size: 0.38rem;
    font-weight: 800;
}

.event-date-badge strong {
    font-size: 0.78rem;
    line-height: 1.1;
}

.hero-image-placeholder {
    height: 360px;
}

.featured-event-empty .hero-image-placeholder {
    height: 300px;
}

.event-grid-empty,
.category-empty-state {
    grid-column: 1 / -1;
}

.home-search-section {
    padding-top: var(--vdm-space-6);
    padding-bottom: var(--vdm-space-6);
    background: var(--vdm-white);
}

.home-search-section .search-box {
    max-width: none;
}

.promo-box {
    display: grid;
    grid-template-columns: minmax(0, 12rem) minmax(0, 1fr) auto;
    align-items: center;
    gap: var(--vdm-space-6);
}

.organizer-promo-image {
    width: 100%;
    height: auto;
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-md);
    background: var(--vdm-white);
}

.category-card:hover,
.event-card:hover {
    border-color: rgba(0, 123, 255, 0.45);
    box-shadow: var(--vdm-shadow-raised);
}

.category-card:focus-visible,
.event-card:focus-within {
    outline: 3px solid var(--vdm-blue);
    outline-offset: 3px;
}

.notice-success {
    border-color: rgba(23, 107, 56, 0.28);
    background: var(--vdm-success-soft);
    color: var(--vdm-success);
}

.notice-warning {
    border-color: rgba(244, 180, 0, 0.4);
    background: var(--vdm-warning-soft);
    color: var(--vdm-warning);
}

.notice-error {
    border-color: rgba(225, 6, 0, 0.3);
    background: var(--vdm-red-soft);
    color: var(--vdm-red-ink);
}

.notice-info {
    border-color: rgba(0, 123, 255, 0.24);
    background: var(--vdm-info-soft);
    color: var(--vdm-info);
}

.dashboard-back-bar {
    width: min(96%, 1440px);
    margin: 0.55rem auto 0;
}

.dashboard-back-button {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    gap: 0.4rem;
    padding: 0.35rem 0.7rem;
    border: 1px solid #d5dfef;
    border-radius: 8px;
    background: #fff;
    color: #17336f;
    font-size: 0.78rem;
    font-weight: 700;
    text-decoration: none;
}

.dashboard-back-button:hover,
.dashboard-back-button:focus-visible {
    border-color: #1767f7;
    color: #0759c7;
}

.dashboard-back-button:focus-visible {
    outline: 3px solid rgba(22, 103, 247, .2);
    outline-offset: 2px;
}

.status-pill {
    border-color: rgba(0, 123, 255, 0.2);
    border-radius: var(--vdm-radius-pill);
    background: var(--vdm-info-soft);
    color: var(--vdm-info);
}

.status-approved,
.status-published,
.status-issued,
.status-checked-in,
.status-paid,
.status-successful,
.status-completed,
.status-active {
    border-color: rgba(23, 107, 56, 0.22);
    background: var(--vdm-success-soft);
    color: var(--vdm-success);
}

.status-pending,
.status-pending-approval,
.status-awaiting-payment,
.status-processing,
.status-under-review {
    border-color: rgba(244, 180, 0, 0.4);
    background: var(--vdm-warning-soft);
    color: var(--vdm-warning);
}

.status-rejected,
.status-failed,
.status-expired,
.status-cancelled,
.status-refunded,
.status-reversed {
    border-color: rgba(225, 6, 0, 0.22);
    background: var(--vdm-red-soft);
    color: var(--vdm-red-ink);
}

.table-responsive,
.table-wrap {
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
}

.table-responsive table,
.table-wrap table {
    width: 100%;
}

table {
    border-collapse: collapse;
    color: var(--vdm-text);
}

thead {
    background: var(--vdm-background);
}

th {
    color: var(--vdm-navy);
    font-weight: var(--vdm-font-weight-bold);
    text-align: left;
}

th,
td {
    border-bottom: 1px solid var(--vdm-border);
    padding: var(--vdm-space-3) var(--vdm-space-4);
}

tbody tr:hover {
    background: #F7F9FD;
}

.vdm-loading-state {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--vdm-space-3);
    min-height: 3rem;
    color: var(--vdm-muted);
}

.vdm-loading-spinner {
    width: 1.25rem;
    height: 1.25rem;
    border: 2px solid var(--vdm-border);
    border-top-color: var(--vdm-blue);
    border-radius: 50%;
    animation: vdm-spin 700ms linear infinite;
}

@keyframes vdm-spin {
    to { transform: rotate(360deg); }
}

@media (max-width: 760px) {
    .hero-image-placeholder {
        height: min(66vw, 340px);
    }

    .featured-event-empty .hero-image-placeholder {
        height: min(66vw, 300px);
    }

    .promo-box {
        grid-template-columns: minmax(0, 9rem) minmax(0, 1fr);
    }

    .promo-box .btn {
        grid-column: 1 / -1;
    }
}

.site-footer p,
.site-footer li,
.site-footer span,
.site-footer small {
    color: #E1E8FA;
}

.site-footer a:hover,
.site-footer a:focus-visible {
    color: var(--vdm-gold);
}

.site-footer h4 {
    color: var(--vdm-white);
}

.footer-benefits {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin-bottom: 2rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid rgba(255,255,255,.18);
}

.footer-benefits > span {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .65rem;
    color: #fff;
    font-size: .78rem;
    font-weight: 700;
}

.footer-benefits img {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    object-fit: contain;
}

.footer-grid a,
.footer-bottom a,
.main-nav a {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
}

.footer-bottom {
    border-color: rgba(255, 255, 255, 0.18);
}

@media (max-width: 600px) {
    .footer-grid ul {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        column-gap: 0.5rem;
    }

    .footer-grid li {
        min-width: 0;
    }
}

.customer-catalog .section-header {
    margin-bottom: var(--vdm-space-6);
}

.customer-catalog .section-header h1 {
    margin-bottom: var(--vdm-space-2);
}

.customer-catalog .search-box {
    max-width: none;
    align-items: center;
}

.customer-catalog .search-box input,
.customer-catalog .search-box select {
    min-width: 0;
    min-height: 44px;
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-sm);
    padding: var(--vdm-space-2) var(--vdm-space-3);
    background: var(--vdm-white);
    color: var(--vdm-text);
}

.catalog-filter-actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--vdm-space-2);
}

.catalog-results {
    display: flex;
    justify-content: flex-end;
    margin: var(--vdm-space-6) 0 var(--vdm-space-3);
}

.catalog-result-count {
    margin: 0;
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-sm);
}

.customer-catalog .event-card {
    min-width: 0;
}

.customer-catalog .event-grid-empty .btn {
    margin-top: var(--vdm-space-4);
}

.event-description-card {
    margin-top: var(--vdm-space-6);
}

.event-description-card h1 {
    margin: var(--vdm-space-4) 0 var(--vdm-space-3);
    font-size: clamp(1.75rem, 3vw, 2.5rem);
    overflow-wrap: anywhere;
}

.event-description-card p {
    white-space: pre-line;
}

.customer-ticket-panel {
    min-width: 0;
}

.ticket-selection {
    display: grid;
    gap: var(--vdm-space-3);
}

.ticket-selection > h2 {
    margin: var(--vdm-space-4) 0 0;
}

.ticket-selection .ticket-option {
    min-width: 0;
}

.ticket-option-info {
    min-width: 0;
    overflow-wrap: anywhere;
}

.ticket-estimate {
    padding: var(--vdm-space-4);
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-md);
    background: var(--vdm-background);
}

.ticket-estimate h3 {
    margin: 0 0 var(--vdm-space-2);
    color: var(--vdm-navy);
}

.ticket-estimate ul {
    display: grid;
    gap: var(--vdm-space-2);
    margin: 0;
    padding-left: var(--vdm-space-5);
}

.ticket-estimate p {
    margin: var(--vdm-space-2) 0 0;
}

.ticket-estimate [hidden] {
    display: none;
}

.ticket-submit {
    width: 100%;
}

.customer-checkout > h1 {
    margin-bottom: var(--vdm-space-2);
    overflow-wrap: anywhere;
}

.customer-checkout > .muted-copy {
    margin-top: 0;
    margin-bottom: var(--vdm-space-6);
}

.customer-checkout .notice {
    margin-bottom: var(--vdm-space-4);
}

.reservation-countdown {
    margin: var(--vdm-space-2) 0 0;
    font-weight: var(--vdm-font-weight-semibold);
}

.order-summary-heading {
    gap: var(--vdm-space-4);
}

.order-summary-heading > div {
    display: grid;
    gap: var(--vdm-space-1);
    min-width: 0;
    overflow-wrap: anywhere;
}

.order-item-row {
    gap: var(--vdm-space-4);
}

.order-item-row > div {
    min-width: 0;
    overflow-wrap: anywhere;
}

.order-refresh-link {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    margin-top: var(--vdm-space-3);
    color: var(--vdm-info);
    font-weight: var(--vdm-font-weight-semibold);
    text-decoration: underline;
}

.payment-section {
    margin-top: var(--vdm-space-6);
}

.customer-payment-form {
    display: grid;
    gap: var(--vdm-space-3);
    max-width: 36rem;
}

.checkout-field {
    display: grid;
    gap: var(--vdm-space-2);
}

.checkout-field label {
    color: var(--vdm-navy);
    font-size: var(--vdm-font-size-sm);
    font-weight: var(--vdm-font-weight-semibold);
}

.checkout-field label span {
    color: var(--vdm-muted);
    font-weight: var(--vdm-font-weight-regular);
}

.customer-payment-form input,
.customer-payment-form select {
    width: 100%;
    min-height: 48px;
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-sm);
    padding: var(--vdm-space-3);
    background: var(--vdm-white);
    color: var(--vdm-text);
}

.customer-payment-form .btn {
    justify-self: start;
}

.refund-updates {
    display: grid;
    gap: var(--vdm-space-2);
    margin: var(--vdm-space-4) 0;
    padding: var(--vdm-space-4);
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-md);
    background: var(--vdm-background);
}

.refund-updates h3 {
    margin: 0;
    color: var(--vdm-navy);
    font-size: var(--vdm-font-size-md);
}

.refund-update {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--vdm-space-2);
}

.refund-updates .muted-copy {
    margin: 0;
}

.status-succeeded {
    border-color: rgba(23, 107, 56, 0.22);
    background: var(--vdm-success-soft);
    color: var(--vdm-success);
}

.checkout-hero {
    position: relative;
    display: flex;
    min-height: 15rem;
    align-items: center;
    overflow: hidden;
    width: min(100% - 2rem, 1200px);
    margin: var(--vdm-space-8) auto var(--vdm-space-6);
    padding: var(--vdm-space-10);
    border-radius: var(--vdm-radius-xl);
    background: linear-gradient(120deg, #071743, #0B1F6B);
    color: var(--vdm-white);
}

.checkout-hero-artwork,
.checkout-hero-shade {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.checkout-hero-artwork {
    object-fit: cover;
    opacity: 0.42;
}

.checkout-hero-shade {
    background: linear-gradient(90deg, rgba(5, 16, 48, 0.96), rgba(5, 16, 48, 0.48));
}

.checkout-hero-content {
    position: relative;
    z-index: 1;
    max-width: 42rem;
}

.checkout-hero-eyebrow {
    display: inline-block;
    margin-bottom: var(--vdm-space-2);
    color: #F4B400;
    font-size: var(--vdm-font-size-sm);
    font-weight: var(--vdm-font-weight-bold);
    letter-spacing: var(--vdm-letter-spacing-wide);
    text-transform: uppercase;
}

.checkout-hero h1 {
    margin: 0;
    color: inherit;
    font-size: clamp(2rem, 4vw, 3.25rem);
    line-height: var(--vdm-line-height-tight);
}

.checkout-hero h1 span {
    color: #F4B400;
}

.checkout-hero p {
    margin: var(--vdm-space-3) 0 0;
    color: rgba(255, 255, 255, 0.88);
}

.checkout-content-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: start;
    gap: var(--vdm-space-5);
}

.checkout-summary-column {
    display: grid;
    gap: var(--vdm-space-4);
    min-width: 0;
}

.checkout-content-grid .page-card {
    overflow: hidden;
    padding: 0;
}

.checkout-summary-artwork {
    position: relative;
    width: 100%;
}

.checkout-summary-artwork-template {
    display: block;
    width: 100%;
    height: auto;
}

.checkout-summary-event-artwork {
    position: absolute;
    top: 43.33%;
    left: 4.29%;
    width: 14.64%;
    height: 42.22%;
    border-radius: 0.6rem;
    object-fit: cover;
}

.checkout-summary-event-copy {
    position: absolute;
    top: 43%;
    left: 22.85%;
    display: grid;
    width: 73%;
    height: 46%;
    align-content: start;
    gap: 0.25rem;
    overflow: hidden;
    background: var(--vdm-white);
}

.checkout-summary-event-copy h3 {
    margin: 0;
    color: var(--vdm-navy);
    font-size: clamp(0.8rem, 3.8vw, 1.25rem);
    line-height: 1.25;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.checkout-summary-event-copy .checkout-event-badges {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.25rem;
    padding: 0;
}

.checkout-summary-event-copy .checkout-event-badges > div {
    min-width: 0;
    padding: 0.25rem;
}

.checkout-summary-event-copy .checkout-event-badges > div:last-child {
    grid-column: auto;
}

.checkout-summary-event-copy .checkout-event-badges dt {
    font-size: clamp(0.44rem, 1.6vw, 0.62rem);
}

.checkout-summary-event-copy .checkout-event-badges dd {
    font-size: clamp(0.48rem, 1.8vw, 0.75rem);
    line-height: 1.2;
}

.checkout-summary-event-copy .checkout-event-badges dd small {
    font-size: clamp(0.44rem, 1.6vw, 0.7rem);
}

.checkout-card-heading {
    display: flex;
    align-items: center;
    gap: var(--vdm-space-3);
    margin: 0;
    padding: var(--vdm-space-4) var(--vdm-space-5);
    background: var(--vdm-navy);
    color: var(--vdm-white);
    font-size: var(--vdm-font-size-lg);
}

.checkout-card-heading-icon {
    color: var(--vdm-gold);
}

.checkout-event-card {
    display: grid;
    grid-template-columns: 6rem minmax(0, 1fr);
    align-items: center;
    gap: var(--vdm-space-4);
    margin: var(--vdm-space-5);
}

.checkout-event-card > img,
.checkout-event-placeholder {
    width: 6rem;
    height: 6rem;
    border-radius: var(--vdm-radius-md);
}

.checkout-event-card > img {
    object-fit: cover;
}

.checkout-event-placeholder {
    display: grid;
    place-items: center;
    background: var(--vdm-background);
    color: var(--vdm-navy);
    font-size: var(--vdm-font-size-xs);
    font-weight: var(--vdm-font-weight-bold);
}

.checkout-event-card h3 {
    margin: 0 0 var(--vdm-space-2);
    color: var(--vdm-navy);
    font-size: var(--vdm-font-size-lg);
    overflow-wrap: anywhere;
}

.checkout-event-card .checkout-event-badges {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--vdm-space-2);
    padding: 0;
}

.checkout-event-card .checkout-event-badges > div:last-child {
    grid-column: auto;
}

.checkout-event-card .checkout-event-badges > div {
    padding: var(--vdm-space-2);
}

.checkout-event-card .checkout-event-badges dt {
    font-size: 0.62rem;
}

.checkout-event-card .checkout-event-badges dd {
    font-size: 0.75rem;
}

.checkout-event-card .checkout-event-badges dd small {
    font-size: 0.7rem;
}

.checkout-order-reference,
.checkout-content-grid .order-item-list,
.checkout-content-grid .order-total,
.checkout-delivery-note {
    margin-right: var(--vdm-space-5);
    margin-left: var(--vdm-space-5);
}

.checkout-order-refresh {
    margin: 0 var(--vdm-space-5) var(--vdm-space-4);
}

.checkout-return-link {
    color: var(--vdm-blue);
}

.checkout-return-link:hover,
.checkout-return-link:focus-visible {
    border-color: var(--vdm-blue);
    color: var(--vdm-blue-interaction);
}

.checkout-order-reference {
    padding: var(--vdm-space-4) 0;
    border-top: 1px solid var(--vdm-border);
    border-bottom: 1px solid var(--vdm-border);
}

.checkout-content-grid .order-item-list {
    padding: var(--vdm-space-3) 0;
}

.checkout-content-grid .order-item-row {
    align-items: center;
    flex-direction: row;
    justify-content: space-between;
}

.checkout-content-grid .order-item-row > strong {
    flex: 0 0 auto;
    white-space: nowrap;
}

.checkout-content-grid .order-total {
    align-items: center;
    gap: var(--vdm-space-2);
    padding: var(--vdm-space-4) 0;
    border-top: 1px solid var(--vdm-border);
    font-size: var(--vdm-font-size-md);
}

.checkout-content-grid .order-total > span,
.checkout-content-grid .order-total > strong {
    white-space: nowrap;
}

.checkout-content-grid .order-total > strong {
    font-size: var(--vdm-font-size-lg);
}

.checkout-delivery-note {
    margin-top: 0;
    margin-bottom: var(--vdm-space-5);
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-sm);
    overflow-wrap: anywhere;
}

.checkout-security-card {
    overflow: hidden;
    padding: 0;
    border-radius: var(--vdm-radius-lg);
    background: transparent;
}

.checkout-security-card img {
    display: block;
    width: 100%;
    height: auto;
}

.checkout-security-icon {
    color: var(--vdm-blue);
    font-size: 1.5rem;
    line-height: 1;
}

.checkout-security-card p {
    margin: var(--vdm-space-1) 0 0;
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-sm);
}

.checkout-payment-card {
    min-width: 0;
}

.checkout-payment-card > :not(.checkout-card-heading) {
    margin-right: var(--vdm-space-5);
    margin-left: var(--vdm-space-5);
}

.checkout-payment-card > p,
.checkout-payment-card > .checkout-empty-payments {
    margin-top: var(--vdm-space-5);
    margin-bottom: var(--vdm-space-5);
}

.checkout-payment-form {
    max-width: none;
    margin-top: var(--vdm-space-5);
    margin-bottom: var(--vdm-space-5);
}

.checkout-payment-options {
    display: grid;
    gap: var(--vdm-space-3);
    margin: 0;
    padding: 0;
    border: 0;
}

.checkout-payment-legend {
    margin-bottom: var(--vdm-space-3);
    color: var(--vdm-navy);
    font-size: var(--vdm-font-size-sm);
    font-weight: var(--vdm-font-weight-semibold);
}

.checkout-payment-option {
    position: relative;
    display: grid;
    grid-template-columns: 2.75rem minmax(0, 1fr) 1.25rem;
    align-items: center;
    gap: var(--vdm-space-3);
    min-height: 4.5rem;
    padding: var(--vdm-space-3) var(--vdm-space-4);
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-md);
    background: var(--vdm-white);
    cursor: pointer;
    transition: border-color 150ms ease, background-color 150ms ease;
}

.checkout-payment-option:has(input:checked) {
    border-color: var(--vdm-blue);
    background: var(--vdm-info-soft);
}

.checkout-payment-option:focus-within {
    outline: 3px solid rgba(0, 123, 255, 0.24);
    outline-offset: 2px;
}

.checkout-payment-option input[type="radio"] {
    position: absolute;
    width: 1px;
    min-height: 1px;
    margin: 0;
    padding: 0;
    opacity: 0;
}

.checkout-payment-option-icon {
    position: relative;
    display: grid;
    width: 2.75rem;
    height: 2.75rem;
    place-items: center;
    overflow: hidden;
    border-radius: 0;
    background: transparent;
}

.checkout-payment-option-icon img {
    width: 224px;
    max-width: none;
    height: auto;
    transform: translateX(-25px);
}

.checkout-payment-option-copy {
    display: grid;
    gap: var(--vdm-space-1);
    min-width: 0;
}

.checkout-payment-option-copy strong {
    color: var(--vdm-navy);
}

.checkout-payment-option-copy small {
    color: var(--vdm-muted);
}

.checkout-payment-radio {
    width: 1.125rem;
    height: 1.125rem;
    border: 2px solid #AAB4C4;
    border-radius: 50%;
}

.checkout-payment-option:has(input:checked) .checkout-payment-radio {
    border: 5px solid var(--vdm-blue);
}

.checkout-payment-brands {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--vdm-space-2);
}

.checkout-payment-brands img {
    display: block;
    width: min(7.5rem, calc(50% - var(--vdm-space-1)));
    height: auto;
}

.guest-payment-contact {
    display: grid;
    gap: var(--vdm-space-3);
}

.guest-payment-contact[hidden] {
    display: none;
}

.guest-payment-contact > .muted-copy {
    margin: 0;
}

.checkout-proceed-button {
    width: 100%;
    justify-content: center;
    min-height: 3.25rem;
    margin-top: var(--vdm-space-2);
}

.checkout-payment-card .bank-transfer-instructions {
    margin-top: var(--vdm-space-5);
    margin-bottom: var(--vdm-space-5);
}

.checkout-payment-result > p {
    margin-top: var(--vdm-space-5);
    margin-bottom: var(--vdm-space-5);
}

@media (max-width: 760px) {
    .checkout-hero {
        min-height: 12rem;
        margin-top: var(--vdm-space-5);
        padding: var(--vdm-space-6);
        border-radius: var(--vdm-radius-lg);
    }

    .checkout-content-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .checkout-payment-card {
        grid-row: 1;
    }

    .checkout-summary-column {
        grid-row: 2;
    }
}

@media (max-width: 520px) {
    .checkout-hero {
        width: calc(100% - 1.5rem);
        padding: var(--vdm-space-5);
    }

    .checkout-event-card {
        grid-template-columns: 4.5rem minmax(0, 1fr);
        gap: var(--vdm-space-3);
        margin: var(--vdm-space-4);
    }

    .checkout-event-card > img,
    .checkout-event-placeholder {
        width: 4.5rem;
        height: 4.5rem;
    }

    .checkout-event-card .checkout-event-badges {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .checkout-event-card .checkout-event-badges > div:last-child {
        grid-column: 1 / -1;
    }

    .checkout-order-reference,
    .checkout-content-grid .order-item-list,
    .checkout-content-grid .order-total,
    .checkout-delivery-note {
        margin-right: var(--vdm-space-4);
        margin-left: var(--vdm-space-4);
    }

    .checkout-order-refresh {
        margin-right: var(--vdm-space-4);
        margin-left: var(--vdm-space-4);
    }

    .checkout-card-heading {
        padding: var(--vdm-space-4);
    }

    .checkout-payment-card > :not(.checkout-card-heading) {
        margin-right: var(--vdm-space-4);
        margin-left: var(--vdm-space-4);
    }
}

.content-page {
    min-height: 55vh;
}

.content-page > h1 {
    max-width: 20ch;
    margin-bottom: var(--vdm-space-6);
    overflow-wrap: anywhere;
}

.content-page .page-card {
    gap: var(--vdm-space-5);
}

.content-page .page-card h3 {
    margin: 0 0 var(--vdm-space-2);
}

.content-page .page-card p,
.content-page .page-card li {
    line-height: var(--vdm-line-height-relaxed);
}

.content-page .page-card p:last-child {
    margin-bottom: 0;
}

.contact-support-page > p {
    max-width: 720px;
}

.contact-support-options {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--vdm-space-4);
}

.contact-support-options article {
    display: grid;
    justify-items: center;
    align-content: start;
    gap: .45rem;
    padding: 1.2rem;
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-md);
    background: var(--vdm-background);
    text-align: center;
}

.contact-support-options img {
    width: 76px;
    height: 76px;
    object-fit: contain;
}

.contact-support-options h2 {
    margin: 0;
    color: var(--vdm-navy);
    font-size: 1rem;
}

.contact-support-options p {
    margin: 0;
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-sm);
}

.auth-card > h1 {
    margin: 0 0 var(--vdm-space-2);
    color: var(--vdm-navy);
    font-size: clamp(1.75rem, 4vw, 2.25rem);
    line-height: var(--vdm-line-height-tight);
}

.auth-intro {
    margin: 0 0 var(--vdm-space-5);
    color: var(--vdm-muted);
}

.auth-session-status {
    margin: 0 0 var(--vdm-space-4);
    color: var(--vdm-success);
    font-size: var(--vdm-font-size-sm);
    font-weight: var(--vdm-font-weight-semibold);
}

.auth-form {
    display: grid;
    gap: var(--vdm-space-4);
}

.auth-field {
    display: grid;
    gap: var(--vdm-space-2);
}

.auth-field label {
    color: var(--vdm-navy);
    font-size: var(--vdm-font-size-sm);
    font-weight: var(--vdm-font-weight-semibold);
}

.auth-field input {
    width: 100%;
    min-height: 48px;
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-sm);
    padding: var(--vdm-space-3);
    background: var(--vdm-white);
    color: var(--vdm-text);
}

.auth-form-error {
    margin: 0;
    padding-left: var(--vdm-space-5);
    color: var(--vdm-red-ink);
    font-size: var(--vdm-font-size-sm);
}

.auth-remember label {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    gap: var(--vdm-space-2);
    color: var(--vdm-text);
    cursor: pointer;
}

.auth-remember input {
    width: 1.1rem;
    height: 1.1rem;
    accent-color: var(--vdm-blue);
}

.auth-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--vdm-space-3);
}

.auth-actions-end {
    justify-content: flex-end;
}

.auth-passkey-flow {
    display: grid;
    gap: var(--vdm-space-2);
    margin-top: var(--vdm-space-4);
}

.auth-passkey-button {
    width: 100%;
    min-height: 48px;
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-sm);
    background: var(--vdm-white);
    color: var(--vdm-navy);
    font: inherit;
    font-weight: var(--vdm-font-weight-semibold);
    cursor: pointer;
}

.auth-passkey-button:disabled {
    cursor: not-allowed;
    opacity: 0.6;
}

.auth-passkey-flow p,
.account-settings-passkey-registration > p {
    margin: 0;
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-sm);
}

.auth-actions > a {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    color: var(--vdm-info);
    font-size: var(--vdm-font-size-sm);
    font-weight: var(--vdm-font-weight-semibold);
    text-decoration: underline;
}

.auth-card input:focus-visible,
.customer-payment-form input:focus-visible,
.customer-payment-form select:focus-visible,
.customer-catalog input:focus-visible,
.customer-catalog select:focus-visible {
    outline: 3px solid var(--vdm-blue);
    outline-offset: 3px;
}

.auth-actions-stack {
    align-items: flex-start;
}

.auth-actions-stack form {
    width: 100%;
}

.auth-actions-stack .btn {
    width: 100%;
}

@media (max-width: 1000px) {
    .customer-event-detail {
        grid-template-columns: minmax(0, 1fr);
    }

    .customer-ticket-panel {
        position: static;
    }
}

@media (max-width: 760px) {
    .customer-catalog .search-box {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
    }

    .catalog-filter-actions {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
    }

    .catalog-filter-actions .btn {
        width: 100%;
    }

    .customer-checkout,
    .content-page {
        padding-top: var(--vdm-space-8);
        padding-bottom: var(--vdm-space-10);
    }
}

@media (max-width: 520px) {
    .customer-event-detail,
    .customer-catalog {
        width: min(100% - 1.25rem, 1200px);
    }

    .event-description-card,
    .customer-checkout .page-card,
    .content-page .page-card {
        padding: var(--vdm-space-4);
    }

    .order-summary-heading,
    .order-item-row {
        align-items: flex-start;
        flex-direction: column;
    }

    .auth-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .auth-actions > a,
    .auth-actions .btn {
        width: 100%;
        text-align: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .event-card,
    .category-card,
    .btn {
        transition-duration: 0.01ms !important;
    }

    .vdm-loading-spinner {
        animation-duration: 1.5s;
    }
}

.customer-wallet-page {
    min-height: calc(100vh - 60px);
    padding-bottom: 1.25rem;
    background: #f7f9fd;
    color: #0b1f6b;
}

.customer-wallet-hero {
    min-height: 166px;
    overflow: hidden;
    background-color: #06184e;
    background-image:
        linear-gradient(90deg, #06184e 0%, #06184e 42%, rgba(6, 24, 78, .98) 60%, rgba(6, 24, 78, .32) 76%, rgba(6, 24, 78, .12) 100%),
        url("/images/vdm-pass-gate-staff-banner.png");
    background-position: center, center 48%;
    background-size: cover;
    color: #fff;
}

.customer-wallet-hero-inner {
    display: flex;
    width: min(1100px, calc(100% - 3rem));
    min-height: 166px;
    align-items: center;
    gap: 1.4rem;
    margin: 0 auto;
}

.customer-wallet-hero-icon {
    width: 82px;
    height: 64px;
    flex: 0 0 82px;
    object-fit: contain;
}

.customer-wallet-eyebrow {
    color: #ffcb20;
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .16em;
}

.customer-wallet-hero h1 {
    margin: 0;
    color: #fff;
    font-size: clamp(2.2rem, 5vw, 3.65rem);
    font-weight: 800;
    letter-spacing: -.055em;
    line-height: 1.03;
}

.customer-wallet-hero h1 span,
.customer-wallet-script span {
    color: #ffbf00;
}

.customer-wallet-hero-inner > div > p {
    margin: .35rem 0 0;
    color: rgba(255,255,255,.92);
    font-size: .82rem;
    line-height: 1.45;
}

.customer-wallet-script {
    margin: 0 1rem 0 auto;
    color: #fff;
    font-family: cursive;
    font-size: clamp(1.35rem, 3vw, 2.45rem);
    font-style: italic;
    font-weight: 700;
    line-height: 1.12;
    text-align: right;
    transform: rotate(-5deg);
}

.customer-wallet-layout {
    display: grid;
    width: min(1100px, calc(100% - 3rem));
    grid-template-columns: 184px minmax(0, 1fr) 188px;
    align-items: start;
    gap: 14px;
    margin: 14px auto 0;
}

.customer-wallet-sidebar {
    display: grid;
    gap: 10px;
}

.customer-wallet-sidebar nav {
    display: grid;
    overflow: hidden;
    padding: 4px;
    border: 1px solid #d5def2;
    border-radius: 12px;
    background: #fff;
}

.customer-wallet-sidebar nav a {
    display: flex;
    min-height: 40px;
    align-items: center;
    gap: 10px;
    padding: 0 11px;
    border-radius: 8px;
    color: #0b1f6b;
    font-size: .72rem;
    font-weight: 700;
    transition: color .18s ease, background-color .18s ease;
}

.customer-wallet-nav-icon {
    width: 25px;
    height: 25px;
    flex: 0 0 25px;
    object-fit: contain;
}

.customer-wallet-sidebar .customer-wallet-nav-icon {
    width: 21px;
    height: 21px;
    flex-basis: 21px;
}

.customer-wallet-sidebar nav a:hover,
.customer-wallet-sidebar nav a:focus-visible {
    background: #eff3ff;
}

.customer-wallet-sidebar nav a[aria-current="page"] {
    background: #ffbf00;
    color: #071b52;
}

.customer-wallet-app-promo {
    display: flex;
    min-height: 104px;
    align-items: center;
    gap: 8px;
    padding: 9px;
    border-radius: 12px;
    background: linear-gradient(145deg, #0d3ca4, #071947);
    color: #fff;
}

.customer-wallet-app-promo img {
    width: 45px;
    height: 58px;
    flex: 0 0 45px;
    border-radius: 7px;
    object-fit: cover;
}

.customer-wallet-app-promo strong,
.customer-wallet-app-promo small,
.customer-wallet-app-promo b {
    display: block;
}

.customer-wallet-app-promo strong {
    color: #ffcb20;
    font-size: .62rem;
    line-height: 1.25;
}

.customer-wallet-app-promo small {
    margin: 3px 0 5px;
    font-size: .52rem;
    line-height: 1.35;
}

.customer-wallet-app-promo b {
    color: #ffcb20;
    font-size: .56rem;
}

.customer-wallet-main {
    min-width: 0;
}

.customer-wallet-tabs {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 5px;
    margin-bottom: 9px;
}

.customer-wallet-tabs a {
    display: flex;
    min-width: 0;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 5px 7px;
    border: 1px solid #dbe3f5;
    border-radius: 11px;
    background: #edf2ff;
    color: #0b1f6b;
    font-size: .62rem;
    font-weight: 700;
    text-align: center;
    transition: background-color .18s ease, color .18s ease, border-color .18s ease;
}

.customer-wallet-tabs a:hover,
.customer-wallet-tabs a:focus-visible {
    border-color: #9db5f5;
}

.customer-wallet-tabs a[aria-current="page"] {
    border-color: #081c60;
    background: #081c60;
    box-shadow: 0 3px 8px rgba(8,28,96,.18);
    color: #fff;
}

.customer-wallet-tabs .customer-wallet-nav-icon {
    width: 25px;
    height: 25px;
    flex-basis: 25px;
}

.customer-wallet-tabs a > b {
    display: inline-grid;
    min-width: 16px;
    height: 16px;
    place-items: center;
    border-radius: 99px;
    background: rgba(255,255,255,.22);
    font-size: .55rem;
}

.customer-wallet-ticket-list {
    display: grid;
    gap: 10px;
}

.customer-wallet-ticket {
    display: grid;
    min-height: 158px;
    grid-template-columns: minmax(130px, 32%) minmax(0, 1fr) 150px;
    align-items: stretch;
    gap: 12px;
    padding: 6px;
    border: 1px solid #dae2f2;
    border-radius: 13px;
    background: #fff;
    box-shadow: 0 5px 15px rgba(10,36,103,.07);
}

.customer-wallet-ticket-image {
    position: relative;
    display: grid;
    min-height: 142px;
    overflow: hidden;
    place-items: center;
    border-radius: 9px;
    background: linear-gradient(135deg,#10256e,#1677ff 60%,#86c7ff);
    color: #fff;
    font-size: .9rem;
    font-weight: 800;
    text-align: center;
}

.customer-wallet-ticket-image img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.customer-wallet-ticket-image > span {
    padding: 10px;
}

.customer-wallet-ticket-badge {
    position: absolute;
    top: 8px;
    left: 8px;
    z-index: 1;
    padding: 4px 10px;
    border-radius: 99px;
    background: #ffbf00;
    color: #071b52;
    font-size: .53rem;
    font-weight: 800;
    text-transform: uppercase;
}

.customer-wallet-ticket-badge-used,
.customer-wallet-ticket-badge-cancelled,
.customer-wallet-ticket-badge-refunded {
    background: #e4e8f2;
    color: #17233c;
}

.customer-wallet-ticket-details {
    min-width: 0;
    align-self: center;
    padding: 5px 0;
}

.customer-wallet-ticket-details h2 {
    overflow: hidden;
    margin: 0 0 5px;
    color: #071b52;
    font-size: .9rem;
    font-weight: 800;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.customer-wallet-ticket-details p {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    margin: 3px 0;
    color: #182957;
    font-size: .63rem;
    line-height: 1.35;
}

.customer-wallet-ticket-details p > span {
    flex: 0 0 auto;
    color: #0b1f6b;
    font-weight: 800;
}

.customer-wallet-ticket-details .customer-wallet-ticket-reference {
    font-weight: 700;
}

.customer-wallet-ticket-status {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    margin-top: 5px;
    padding: 4px 10px;
    border-radius: 99px;
    background: #d7f8e5;
    color: #087c3b;
    font-size: .61rem;
    font-weight: 800;
}

.customer-wallet-ticket-status-used,
.customer-wallet-ticket-status-cancelled,
.customer-wallet-ticket-status-refunded {
    background: #e5e9f2;
    color: #24304a;
}

.customer-wallet-ticket-actions {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    gap: 6px;
    padding: 8px 8px 8px 10px;
    border-left: 1px solid #e6eaf2;
}

.customer-wallet-ticket-menu {
    align-self: flex-end;
    color: #0b1f6b;
    font-size: 1.2rem;
    font-weight: 800;
    line-height: .8;
}

.customer-wallet-ticket-actions a {
    display: flex;
    min-height: 29px;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 3px 7px;
    border: 1px solid #1767f7;
    border-radius: 99px;
    color: #0b1f6b;
    font-size: .62rem;
    font-weight: 700;
    white-space: nowrap;
}

.customer-wallet-ticket-actions a:last-child {
    border-color: #0b35c9;
    background: #0b35c9;
    color: #fff;
}

.customer-wallet-ticket-actions a:hover,
.customer-wallet-ticket-actions a:focus-visible {
    box-shadow: 0 0 0 3px rgba(22,103,247,.16);
}

.customer-wallet-empty {
    display: grid;
    min-height: 250px;
    justify-items: center;
    align-content: center;
    padding: 24px;
    border: 1px solid #dae2f2;
    border-radius: 13px;
    background: #fff;
    text-align: center;
}

.customer-wallet-empty-icon {
    width: 72px;
    height: 72px;
    object-fit: contain;
}

.customer-wallet-empty h2 {
    margin: 8px 0 3px;
    color: #071b52;
    font-size: 1rem;
}

.customer-wallet-empty p {
    margin: 0 0 12px;
    color: #65728c;
    font-size: .76rem;
}

.customer-wallet-empty a {
    padding: 8px 16px;
    border-radius: 99px;
    background: #ffbf00;
    color: #071b52;
    font-size: .72rem;
    font-weight: 800;
}

.customer-wallet-summary {
    position: sticky;
    top: 74px;
    overflow: hidden;
    margin-top: 20px;
    padding: 16px 14px 14px;
    border-radius: 13px;
    background: #071b52;
    color: #fff;
}

.customer-wallet-summary h2 {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    font-size: .8rem;
    font-weight: 800;
}

.customer-wallet-summary h2 > img {
    width: 32px;
    height: 32px;
    flex: 0 0 32px;
    object-fit: contain;
}

.customer-wallet-summary-total {
    display: grid;
    justify-items: center;
    padding: 18px 0 15px;
    border-bottom: 1px solid rgba(255,255,255,.28);
}

.customer-wallet-summary-total strong {
    color: #ffbf00;
    font-size: 2.35rem;
    line-height: 1;
}

.customer-wallet-summary-total span {
    margin-top: 4px;
    font-size: .75rem;
    font-weight: 700;
}

.customer-wallet-summary-stat {
    position: relative;
    display: grid;
    min-height: 67px;
    grid-template-columns: 25px 1fr;
    align-content: center;
    column-gap: 8px;
    border-bottom: 1px solid rgba(255,255,255,.22);
}

.customer-wallet-summary-stat > img {
    width: 25px;
    height: 25px;
    grid-row: span 2;
    align-self: center;
    object-fit: contain;
}

.customer-wallet-summary-stat strong {
    color: #ffbf00;
    font-size: 1rem;
    line-height: 1.1;
}

.customer-wallet-summary-stat small {
    font-size: .61rem;
}

.customer-wallet-summary > a {
    display: flex;
    min-height: 38px;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin-top: 12px;
    border-radius: 99px;
    background: #ffbf00;
    color: #071b52;
    font-size: .68rem;
    font-weight: 800;
}

.customer-wallet-trust {
    display: flex;
    width: min(1100px, calc(100% - 3rem));
    min-height: 58px;
    align-items: center;
    justify-content: space-around;
    gap: 12px;
    margin: 16px auto 0;
    padding: 8px 12px;
    border-radius: 12px;
    background: #e7edff;
    color: #092d9d;
}

.customer-wallet-trust span {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: .7rem;
    font-weight: 800;
}

.customer-wallet-trust span + span {
    padding-left: 14px;
    border-left: 1px solid #8098e8;
}

.customer-wallet-trust img {
    width: 32px;
    height: 32px;
    flex: 0 0 32px;
    object-fit: contain;
}

.ticket-finder-page {
    min-height: calc(100vh - 60px);
    padding-bottom: 2rem;
    background: #f5f7fc;
    color: #0b1f6b;
}

.ticket-finder-hero {
    overflow: hidden;
    background:
        radial-gradient(ellipse at 75% 45%, rgba(35, 91, 220, .5), transparent 34%),
        linear-gradient(110deg, #061747 0%, #0a286f 58%, #123a9c 100%);
    color: #fff;
}

.ticket-finder-hero-inner {
    display: flex;
    width: min(1120px, calc(100% - 3rem));
    min-height: 330px;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    margin: 0 auto;
}

.ticket-finder-hero-copy {
    max-width: 580px;
    padding: 2rem 0;
}

.ticket-finder-eyebrow,
.ticket-finder-section-label {
    color: #ffca28;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .16em;
}

.ticket-finder-hero h1 {
    width: max-content;
    max-width: 100%;
    margin: .55rem 0 .4rem;
    overflow: hidden;
    color: #fff;
    font-size: clamp(2.4rem, 5vw, 3.8rem);
    font-weight: 850;
    letter-spacing: -.055em;
    line-height: 1.05;
    white-space: nowrap;
}

.ticket-finder-hero [data-ticket-finder-type]::after {
    display: none;
    width: .06em;
    height: .85em;
    margin-left: .1em;
    background: #ffca28;
    content: "";
    vertical-align: -.04em;
}

.ticket-finder-hero [data-ticket-finder-type].is-typing::after {
    display: inline-block;
    animation: ticket-finder-title-cursor .75s steps(2, end) infinite;
}

.ticket-finder-hero .ticket-finder-type-letter {
    visibility: hidden;
}

.ticket-finder-hero .ticket-finder-type-letter.is-visible {
    visibility: visible;
}

.ticket-finder-hero h1 .ticket-finder-type-letter {
    color: inherit;
}

@keyframes ticket-finder-title-cursor {
    50% {
        opacity: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ticket-finder-hero [data-ticket-finder-type].is-typing::after {
        animation: none;
    }
}

.ticket-finder-hero h1 span {
    color: #ffca28;
}

.ticket-finder-hero-copy p {
    max-width: 520px;
    margin: 0;
    color: #e2eaff;
    font-size: .94rem;
    line-height: 1.6;
}

.ticket-finder-hero-link {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    margin-top: 1.2rem;
    color: #ffcf39;
    font-size: .83rem;
    font-weight: 800;
}

.ticket-finder-hero-art {
    width: min(440px, 42%);
    aspect-ratio: 16 / 9;
    flex: 0 1 440px;
    border: 1px solid rgba(255,255,255,.24);
    border-radius: 14px;
    object-fit: cover;
    box-shadow: 0 18px 36px rgba(0,0,0,.24);
}

.ticket-finder-content {
    width: min(1120px, calc(100% - 3rem));
    margin: 1.4rem auto 0;
}

.ticket-finder-filters {
    display: grid;
    grid-template-columns: minmax(200px, 1.5fr) repeat(3, minmax(130px, .85fr)) auto;
    gap: .55rem;
    padding: .65rem;
    border: 1px solid #dfe5f1;
    border-radius: 13px;
    background: #fff;
    box-shadow: 0 7px 22px rgba(9, 33, 94, .06);
}

.ticket-finder-filters label {
    display: flex;
    min-width: 0;
    min-height: 43px;
    align-items: center;
    padding: 0 .75rem;
    border: 1px solid #e1e6f0;
    border-radius: 8px;
    background: #fff;
}

.ticket-finder-filters input,
.ticket-finder-filters select {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: #182957;
    font-size: .76rem;
}

.ticket-finder-search {
    gap: .55rem;
    color: #536687;
}

.ticket-finder-search > span:first-child {
    font-size: 1.35rem;
}

.ticket-finder-filters button,
.ticket-finder-empty > a {
    display: inline-flex;
    min-height: 43px;
    align-items: center;
    justify-content: center;
    padding: .55rem 1rem;
    border: 0;
    border-radius: 8px;
    background: #09266e;
    color: #fff;
    font-size: .75rem;
    font-weight: 800;
    cursor: pointer;
}

.ticket-finder-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 260px;
    align-items: start;
    gap: 1.1rem;
    margin-top: 1.35rem;
}

.ticket-finder-main {
    min-width: 0;
}

.ticket-finder-section-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .85rem;
}

.ticket-finder-section-label {
    color: #4567b2;
    font-size: .59rem;
}

.ticket-finder-section-heading h2 {
    display: flex;
    align-items: center;
    gap: .55rem;
    margin: .2rem 0 0;
    color: #0b1f6b;
    font-size: 1.45rem;
    letter-spacing: -.035em;
}

.ticket-finder-section-heading h2 span {
    display: inline-grid;
    min-width: 23px;
    height: 23px;
    place-items: center;
    padding: 0 5px;
    border-radius: 99px;
    background: #e5ecff;
    color: #123b9f;
    font-size: .67rem;
    letter-spacing: 0;
}

.ticket-finder-section-heading p {
    margin: .2rem 0 0;
    color: #65728e;
    font-size: .73rem;
}

.ticket-finder-section-heading > a {
    color: #17439e;
    font-size: .7rem;
    font-weight: 800;
    white-space: nowrap;
}

.ticket-finder-list {
    display: grid;
    gap: .75rem;
}

.ticket-finder-card {
    display: grid;
    min-width: 0;
    grid-template-columns: 190px minmax(0, 1fr) 145px;
    align-items: stretch;
    gap: .9rem;
    padding: .55rem;
    border: 1px solid #dfe5ef;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 4px 14px rgba(9, 33, 94, .05);
}

.ticket-finder-artwork {
    position: relative;
    display: grid;
    min-height: 142px;
    overflow: hidden;
    place-items: center;
    border-radius: 8px;
    background:
        radial-gradient(ellipse at 80% 10%, rgba(255,201,40,.75), transparent 32%),
        linear-gradient(135deg, #061747, #1555c2);
}

.ticket-finder-artwork > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .25s ease;
}

.ticket-finder-artwork:hover > img,
.ticket-finder-artwork:focus-visible > img {
    transform: scale(1.05);
}

.ticket-finder-artwork-placeholder {
    display: grid;
    width: 100%;
    height: 100%;
    min-height: inherit;
    place-items: center;
    background: #ffca28;
}

.ticket-finder-artwork-placeholder img {
    width: 80%;
    height: 80%;
    object-fit: contain;
}

.ticket-finder-artwork-tag {
    position: absolute;
    right: .45rem;
    bottom: .45rem;
    left: .45rem;
    overflow: hidden;
    padding: .35rem .5rem;
    border-radius: 5px;
    background: rgba(3, 18, 59, .82);
    color: #fff;
    font-size: .58rem;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ticket-finder-card-info {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: .7rem;
    padding: .2rem 0;
}

.ticket-finder-card-date {
    display: grid;
    min-width: 52px;
    justify-items: center;
    padding: .45rem .35rem;
    border-radius: 8px;
    background: #edf2ff;
    color: #102d7a;
}

.ticket-finder-card-date strong {
    font-size: 1.35rem;
    line-height: 1;
}

.ticket-finder-card-date span {
    margin-top: .2rem;
    font-size: .54rem;
    font-weight: 800;
    text-transform: uppercase;
}

.ticket-finder-card-details {
    min-width: 0;
}

.ticket-finder-ticket-type {
    color: #3760b5;
    font-size: .58rem;
    font-weight: 800;
    text-transform: uppercase;
}

.ticket-finder-card-details h3 {
    overflow: hidden;
    margin: .12rem 0 .4rem;
    color: #091f5e;
    font-size: .92rem;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ticket-finder-card-details h3 a {
    color: inherit;
}

.ticket-finder-card-details p {
    overflow: hidden;
    margin: .2rem 0;
    color: #4b5c7e;
    font-size: .65rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ticket-finder-card-details p span {
    color: #18479f;
    font-weight: 800;
}

.ticket-finder-reference {
    display: inline-block;
    margin-top: .28rem;
    color: #71809b;
    font-size: .56rem;
    font-weight: 700;
}

.ticket-finder-card-actions {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    gap: .4rem;
    padding-left: .75rem;
    border-left: 1px solid #e7ebf3;
}

.ticket-finder-card-actions .status-pill {
    align-self: flex-start;
}

.ticket-finder-view,
.ticket-finder-download {
    display: flex;
    min-height: 32px;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    padding: .35rem .45rem;
    border: 1px solid #17439e;
    border-radius: 7px;
    color: #123b8d;
    font-size: .63rem;
    font-weight: 800;
    text-align: center;
}

.ticket-finder-view {
    background: #0b2a78;
    color: #fff;
}

.ticket-finder-download {
    border-color: #d7dfef;
}

.ticket-finder-support {
    padding: 1.1rem;
    border: 1px solid #dfe5f1;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 5px 16px rgba(9, 33, 94, .05);
}

.ticket-finder-support-icon {
    display: block;
    width: 64px;
    height: 64px;
    margin-bottom: .75rem;
    object-fit: contain;
}

.ticket-finder-support > span {
    color: #5571ac;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .12em;
}

.ticket-finder-support h2 {
    margin: .3rem 0;
    color: #0b1f6b;
    font-size: 1.05rem;
}

.ticket-finder-support p {
    margin: 0;
    color: #5b6884;
    font-size: .68rem;
    line-height: 1.5;
}

.ticket-finder-support > a,
.ticket-finder-support > button {
    display: flex;
    min-height: 36px;
    align-items: center;
    justify-content: space-between;
    margin-top: .8rem;
    padding: .45rem .6rem;
    border-radius: 7px;
    background: #0b2a78;
    color: #fff;
    font-size: .65rem;
    font-weight: 800;
    text-align: left;
    cursor: pointer;
}

.ticket-finder-support > button {
    width: 100%;
    border: 0;
    font-family: inherit;
}

.ticket-finder-support > a img,
.ticket-finder-support > button img {
    width: 25px;
    height: 25px;
    margin-right: .4rem;
    object-fit: contain;
}

.ticket-finder-support > a span,
.ticket-finder-support > button span {
    margin-left: auto;
}

.ticket-chat-widget {
    position: fixed;
    z-index: 1200;
    right: 1.25rem;
    bottom: 1.25rem;
    display: flex;
    width: min(390px, calc(100vw - 2rem));
    max-height: min(600px, calc(100dvh - 2.5rem));
    flex-direction: column;
    overflow: hidden;
    border: 1px solid #dfe5f1;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 18px 56px rgba(6, 23, 71, .28);
    color: #0b1f6b;
}

.ticket-chat-widget[hidden] {
    display: none;
}

.ticket-chat-header {
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.ticket-chat-banner {
    display: block;
    width: 100%;
    height: 64px;
    object-fit: cover;
    object-position: center 12%;
}

.ticket-chat-heading {
    display: flex;
    min-height: 68px;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    padding: .6rem 1rem;
    background: transparent;
    color: #0b1f6b;
}

.ticket-chat-header h2 {
    margin: .25rem 0 0;
    font-size: 1rem;
}

.ticket-chat-status {
    display: flex;
    align-items: center;
    gap: .4rem;
    color: #5571ac;
    font-size: .7rem;
    font-weight: 700;
}

.ticket-chat-status > span {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #67e8a5;
}

.ticket-chat-close {
    display: grid;
    width: 36px;
    height: 36px;
    place-items: center;
    border: 1px solid #dfe5f1;
    border-radius: 50%;
    background: transparent;
    color: #0b1f6b;
    font-size: 1.5rem;
    line-height: 1;
    cursor: pointer;
}

.ticket-chat-messages {
    display: flex;
    min-height: 180px;
    flex: 1 1 auto;
    flex-direction: column;
    gap: .7rem;
    overflow-y: auto;
    padding: 1rem;
}

.ticket-chat-message {
    max-width: 88%;
    padding: .7rem .8rem;
    border-radius: 12px;
    font-size: .8rem;
    line-height: 1.5;
    overflow-wrap: anywhere;
}

.ticket-chat-message-bot {
    align-self: flex-start;
    border: 1px solid #e3e9f4;
    border-bottom-left-radius: 4px;
    background: #f5f7fc;
    color: #26395f;
}

.ticket-chat-message-user {
    align-self: flex-end;
    border-bottom-right-radius: 4px;
    background: #123a9c;
    color: #fff;
}

.ticket-chat-message a {
    display: inline-block;
    margin-top: .35rem;
    color: #17439e;
    font-weight: 800;
    text-decoration: underline;
}

.ticket-chat-quick-replies {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
}

.ticket-chat-quick-replies button {
    padding: .45rem .65rem;
    border: 1px solid #cbd6ea;
    border-radius: 999px;
    background: #fff;
    color: #17439e;
    font: inherit;
    font-size: .7rem;
    font-weight: 700;
    cursor: pointer;
}

.ticket-chat-composer {
    display: flex;
    gap: .5rem;
    padding: .75rem;
    border-top: 1px solid #e3e9f4;
}

.ticket-chat-composer input {
    min-width: 0;
    min-height: 42px;
    flex: 1;
    padding: .55rem .7rem;
    border: 1px solid #cbd6ea;
    border-radius: 9px;
    color: #0b1f6b;
    font: inherit;
    font-size: .8rem;
}

.ticket-chat-composer button {
    min-width: 58px;
    padding: .5rem .7rem;
    border: 0;
    border-radius: 9px;
    background: #0b2a78;
    color: #fff;
    font: inherit;
    font-size: .75rem;
    font-weight: 800;
    cursor: pointer;
}

.ticket-chat-note {
    margin: 0;
    padding: 0 .75rem .65rem;
    color: #6a7892;
    font-size: .65rem;
    text-align: center;
}

.ticket-finder-support .ticket-finder-support-divider {
    height: 1px;
    margin: .85rem 0;
    background: #e6eaf2;
}

.ticket-finder-support > a.ticket-finder-orders-link {
    min-height: auto;
    margin: 0;
    padding: 0;
    background: transparent;
    color: #17439e;
}

.ticket-finder-empty {
    display: grid;
    min-height: 230px;
    justify-items: center;
    align-content: center;
    padding: 1.4rem;
    border: 1px dashed #cbd6ea;
    border-radius: 12px;
    background: #fff;
    text-align: center;
}

.ticket-finder-empty > span {
    color: #4567b2;
    font-size: 1.7rem;
}

.ticket-finder-empty h3 {
    margin: .4rem 0 .2rem;
    color: #102d7a;
    font-size: 1rem;
}

.ticket-finder-empty p {
    max-width: 400px;
    margin: 0 0 .9rem;
    color: #5b6884;
    font-size: .72rem;
    line-height: 1.5;
}

.ticket-finder-trust {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: .6rem 1.6rem;
    margin-top: 1.25rem;
    padding: .85rem;
    border: 1px solid #dfe5f1;
    border-radius: 10px;
    background: #fff;
}

.ticket-finder-trust span {
    display: flex;
    align-items: center;
    gap: .4rem;
    color: #34466d;
    font-size: .65rem;
    font-weight: 700;
}

.ticket-finder-trust img {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    object-fit: contain;
}

.customer-header-account {
    position: relative;
    align-self: center;
}

.customer-header-account > summary {
    display: flex;
    width: 42px;
    height: 42px;
    align-items: center;
    justify-content: center;
    gap: 2px;
    border: 1px solid rgba(255,255,255,.35);
    border-radius: 50%;
    background: rgba(255,255,255,.12);
    color: #fff;
    cursor: pointer;
    list-style: none;
}

.customer-header-account > summary::-webkit-details-marker {
    display: none;
}

.customer-header-account > summary > span {
    font-size: .69rem;
    font-weight: 800;
}

.customer-header-account > summary svg {
    width: 11px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.guest-header-account > summary svg {
    width: 20px;
}

.guest-header-account > summary:focus-visible {
    outline: 3px solid #ffbf00;
    outline-offset: 3px;
}

.customer-header-account > nav {
    position: absolute;
    z-index: 20;
    top: calc(100% + .55rem);
    right: 0;
    display: grid;
    width: 220px;
    gap: .15rem;
    padding: .55rem;
    border: 1px solid #dce3f0;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(4, 17, 52, .2);
    color: #10245d;
}

.customer-header-account > nav strong {
    overflow: hidden;
    padding: .55rem .6rem;
    border-bottom: 1px solid #e8ecf3;
    font-size: .72rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.customer-header-account > nav a,
.customer-header-account > nav button {
    display: block;
    width: 100%;
    padding: .55rem .6rem;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: #172a58;
    font: inherit;
    font-size: .69rem;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
}

.customer-header-account > nav a:hover,
.customer-header-account > nav a[aria-current="page"],
.customer-header-account > nav button:hover {
    background: #eef3ff;
    color: #0b2a78;
}

@media (max-width: 980px) {
    .ticket-finder-filters {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ticket-finder-search {
        grid-column: span 2;
    }

    .ticket-finder-filters button {
        grid-column: span 2;
    }

    .ticket-finder-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .ticket-finder-support {
        display: grid;
        grid-template-columns: auto minmax(0, 1fr) auto;
        align-items: center;
        column-gap: .8rem;
    }

    .ticket-finder-support-icon {
        grid-row: span 3;
        margin: 0;
    }

    .ticket-finder-support > span,
    .ticket-finder-support h2,
    .ticket-finder-support p {
        grid-column: 2;
    }

    .ticket-finder-support h2 {
        margin: .15rem 0;
    }

    .ticket-finder-support > a,
    .ticket-finder-support > button {
        grid-column: 3;
        grid-row: 1 / span 2;
        min-width: 140px;
        margin: 0;
    }

    .ticket-finder-support .ticket-finder-support-divider {
        display: none;
    }

    .ticket-finder-support > a.ticket-finder-orders-link {
        grid-column: 3;
        grid-row: 3;
        justify-content: center;
    }
}

@media (max-width: 680px) {
    .ticket-finder-page {
        padding-bottom: 1rem;
    }

    .contact-support-options {
        grid-template-columns: minmax(0, 1fr);
    }

    .footer-benefits {
        gap: .45rem;
    }

    .footer-benefits > span {
        flex-direction: column;
        gap: .3rem;
        font-size: .63rem;
        text-align: center;
    }

    .footer-benefits img {
        width: 36px;
        height: 36px;
        flex-basis: 36px;
    }

    .ticket-finder-hero-inner,
    .ticket-finder-content {
        width: calc(100% - 1.25rem);
    }

    .ticket-finder-hero-inner {
        min-height: 0;
        flex-direction: column;
        align-items: stretch;
        gap: 1rem;
    }

    .ticket-finder-hero-copy {
        padding: 1.3rem 0 0;
    }

    .ticket-finder-eyebrow {
        font-size: .54rem;
        letter-spacing: .1em;
    }

    .ticket-finder-hero h1 {
        font-size: clamp(2rem, 9vw, 2.8rem);
    }

    .ticket-finder-hero-copy p {
        max-width: 350px;
        font-size: .72rem;
    }

    .ticket-finder-hero-art {
        width: 100%;
        min-width: 0;
        max-height: none;
        flex: 0 0 auto;
        margin-bottom: 1.25rem;
    }

    .ticket-finder-content {
        margin-top: .8rem;
    }

    .ticket-finder-filters {
        gap: .4rem;
        padding: .45rem;
    }

    .ticket-finder-filters label {
        min-height: 39px;
        padding: 0 .5rem;
    }

    .ticket-finder-filters input,
    .ticket-finder-filters select {
        font-size: .65rem;
    }

    .ticket-finder-filters button {
        min-height: 39px;
    }

    .ticket-finder-section-heading h2 {
        font-size: 1.2rem;
    }

    .ticket-finder-section-heading p {
        font-size: .64rem;
    }

    .ticket-finder-section-heading > a {
        font-size: .62rem;
    }

    .ticket-finder-card {
        grid-template-columns: 98px minmax(0, 1fr);
        gap: .55rem;
        padding: .4rem;
    }

    .ticket-finder-artwork {
        min-height: 112px;
    }

    .ticket-finder-artwork-placeholder {
        min-height: 112px;
    }

    .ticket-finder-card-info {
        align-items: flex-start;
        gap: .45rem;
        padding-top: .3rem;
    }

    .ticket-finder-card-date {
        min-width: 40px;
        padding: .35rem .25rem;
    }

    .ticket-finder-card-date strong {
        font-size: 1.05rem;
    }

    .ticket-finder-card-date span {
        font-size: .45rem;
    }

    .ticket-finder-card-details h3 {
        font-size: .76rem;
        white-space: normal;
    }

    .ticket-finder-card-details p {
        font-size: .56rem;
    }

    .ticket-finder-reference {
        font-size: .5rem;
    }

    .ticket-finder-card-actions {
        grid-column: 1 / -1;
        flex-direction: row;
        align-items: center;
        padding: .4rem 0 0;
        border-top: 1px solid #e7ebf3;
        border-left: 0;
    }

    .ticket-finder-card-actions .status-pill {
        margin-right: auto;
    }

    .ticket-finder-view,
    .ticket-finder-download {
        min-height: 30px;
        font-size: .57rem;
    }

    .ticket-finder-support {
        grid-template-columns: auto minmax(0, 1fr);
        row-gap: .15rem;
        padding: .8rem;
    }

    .ticket-finder-support-icon {
        grid-row: 1 / span 3;
        width: 48px;
        height: 48px;
    }

    .ticket-finder-support > span,
    .ticket-finder-support h2,
    .ticket-finder-support p {
        grid-column: 2;
    }

    .ticket-finder-support > a,
    .ticket-finder-support > button,
    .ticket-finder-support > a.ticket-finder-orders-link {
        grid-column: 2;
        grid-row: auto;
        min-width: 0;
        margin-top: .35rem;
    }

    .ticket-finder-trust {
        justify-content: flex-start;
        gap: .45rem 1rem;
        margin-top: .75rem;
        padding: .65rem;
    }

    .ticket-finder-trust span {
        font-size: .58rem;
    }
}

@media (max-width: 900px) {
    .customer-wallet-layout {
        grid-template-columns: 160px minmax(0, 1fr);
    }

    .customer-wallet-summary {
        position: static;
        grid-column: 1;
        grid-row: 2;
        margin-top: 0;
    }

    .customer-wallet-main {
        grid-column: 2;
        grid-row: 1 / span 2;
    }

    .customer-wallet-tabs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .customer-wallet-ticket {
        grid-template-columns: 120px minmax(0, 1fr);
    }

    .customer-wallet-ticket-actions {
        grid-column: 1 / -1;
        flex-direction: row;
        justify-content: flex-end;
        padding: 7px 4px 2px;
        border-top: 1px solid #e6eaf2;
        border-left: 0;
    }

    .customer-wallet-ticket-menu {
        margin-right: auto;
        align-self: center;
    }
}

@media (max-width: 620px) {
    .customer-wallet-page {
        padding-bottom: .75rem;
    }

    .customer-wallet-hero,
    .customer-wallet-hero-inner {
        min-height: 142px;
    }

    .customer-wallet-hero {
        background-position: center, 62% center;
    }

    .customer-wallet-hero-inner,
    .customer-wallet-layout,
    .customer-wallet-trust {
        width: calc(100% - 1.25rem);
    }

    .customer-wallet-hero-inner {
        gap: .55rem;
    }

    .customer-wallet-hero-icon {
        width: 48px;
        height: 56px;
        flex-basis: 48px;
    }

    .customer-wallet-eyebrow {
        font-size: .52rem;
    }

    .customer-wallet-hero h1 {
        font-size: 2rem;
    }

    .customer-wallet-hero-inner > div > p {
        max-width: 230px;
        font-size: .67rem;
    }

    .customer-wallet-desktop-break,
    .customer-wallet-script {
        display: none;
    }

    .customer-wallet-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 10px;
        margin-top: 10px;
    }

    .customer-wallet-sidebar {
        grid-row: 1;
    }

    .customer-wallet-sidebar nav {
        display: flex;
        overflow-x: auto;
        gap: 4px;
        padding: 4px;
        scrollbar-width: thin;
    }

    .customer-wallet-sidebar nav a {
        min-height: 35px;
        flex: 0 0 auto;
        gap: 6px;
        padding: 0 9px;
        font-size: .63rem;
        white-space: nowrap;
    }

    .customer-wallet-app-promo {
        display: none;
    }

    .customer-wallet-main {
        grid-column: 1;
        grid-row: 2;
    }

    .customer-wallet-tabs {
        display: flex;
        overflow-x: auto;
        gap: 6px;
        padding: 2px 1px 5px;
        scrollbar-width: thin;
    }

    .customer-wallet-tabs a {
        min-width: max-content;
        min-height: 39px;
        padding: 5px 10px;
        font-size: .61rem;
    }

    .customer-wallet-ticket {
        grid-template-columns: 105px minmax(0, 1fr);
        gap: 8px;
        padding: 5px;
    }

    .customer-wallet-ticket-image {
        min-height: 112px;
    }

    .customer-wallet-ticket-details h2 {
        font-size: .75rem;
    }

    .customer-wallet-ticket-details p {
        font-size: .56rem;
    }

    .customer-wallet-ticket-status {
        font-size: .56rem;
    }

    .customer-wallet-ticket-actions a {
        min-height: 28px;
        font-size: .58rem;
    }

    .customer-wallet-summary {
        grid-column: 1;
        grid-row: 3;
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 4px 8px;
        padding: 12px;
    }

    .customer-wallet-summary h2 {
        grid-column: 1 / -1;
    }

    .customer-wallet-summary-total {
        align-content: center;
        padding: 9px 0;
        border-right: 1px solid rgba(255,255,255,.22);
        border-bottom: 0;
    }

    .customer-wallet-summary-total strong {
        font-size: 1.65rem;
    }

    .customer-wallet-summary-total span,
    .customer-wallet-summary-stat small {
        font-size: .52rem;
    }

    .customer-wallet-summary-stat {
        min-height: 54px;
        grid-template-columns: 20px 1fr;
        column-gap: 4px;
        border-bottom: 0;
    }

    .customer-wallet-summary-stat > img {
        width: 20px;
        height: 20px;
    }

    .customer-wallet-summary-stat strong {
        font-size: .85rem;
    }

    .customer-wallet-summary > a {
        grid-column: 1 / -1;
        min-height: 34px;
        margin-top: 3px;
    }

    .customer-wallet-trust {
        flex-wrap: wrap;
        justify-content: center;
        gap: 8px 12px;
        margin-top: 10px;
    }

    .customer-wallet-trust span {
        font-size: .59rem;
    }

    .customer-wallet-trust span + span {
        padding-left: 0;
        border-left: 0;
    }

    .customer-wallet-trust img {
        width: 25px;
        height: 25px;
        flex-basis: 25px;
    }
}

.hero-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 0.9fr);
}

.hero-copy h1 {
    color: var(--vdm-white);
    font-size: clamp(2.5rem, 5vw, 4.5rem);
    letter-spacing: -0.06em;
}

.hero-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: var(--vdm-radius-xl);
    background: #102b82;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.24);
}

.hero-image,
.hero-image.hero-image-placeholder {
    display: grid;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    margin: 0;
    object-fit: cover;
    object-position: center;
}

.hero-image-placeholder {
    background:
        radial-gradient(ellipse at 82% 18%, rgba(244, 180, 0, 0.24), transparent 34%),
        linear-gradient(135deg, #102b82, var(--vdm-navy));
}

.hero-listing {
    display: grid;
    gap: var(--vdm-space-2);
    padding: var(--vdm-space-5) var(--vdm-space-5) var(--vdm-space-4);
}

.hero-listing .tag {
    justify-self: start;
    max-width: 100%;
    overflow-wrap: anywhere;
}

.hero-listing h2 {
    margin: 0;
    color: var(--vdm-white);
    font-size: clamp(1.3rem, 2.4vw, 1.8rem);
    line-height: var(--vdm-line-height-tight);
    overflow-wrap: anywhere;
}

.hero-listing .hero-event-meta {
    display: grid;
    gap: var(--vdm-space-1);
    margin: 0;
    color: #E1E8FA;
    font-size: var(--vdm-font-size-sm);
}

.hero-card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--vdm-space-3);
    padding: var(--vdm-space-3) var(--vdm-space-5);
    border-top: 1px solid rgba(255, 255, 255, 0.18);
    color: #E1E8FA;
    font-size: var(--vdm-font-size-sm);
    font-weight: var(--vdm-font-weight-semibold);
}

.hero-featured-link .hero-card-footer .btn {
    flex: 0 0 auto;
}

.hero-card-footer .btn:focus-visible {
    outline-color: var(--vdm-white);
    outline-offset: 3px;
}

.featured-event-empty .hero-image-placeholder {
    color: var(--vdm-gold);
}

@media (max-width: 1000px) {
    .hero-grid {
        grid-template-columns: minmax(0, 1fr) minmax(0, 0.95fr);
        gap: var(--vdm-space-6);
    }

    .hero-image,
    .hero-image.hero-image-placeholder {
        aspect-ratio: 4 / 3;
    }
}

@media (max-width: 760px) {
    .hero-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .hero-image,
    .hero-image.hero-image-placeholder {
        aspect-ratio: 16 / 9;
    }
}

@media (max-width: 520px) {
    .hero-card-footer {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 520px) {
    .event-image-placeholder {
        min-height: 150px;
    }

    .home-search-section {
        padding-top: var(--vdm-space-4);
        padding-bottom: var(--vdm-space-4);
    }

    .promo-box {
        grid-template-columns: 1fr;
    }

    .organizer-promo-image {
        max-width: 13rem;
    }

    .account-delete-section,
    .vdm-modal-panel {
        padding: var(--vdm-space-4);
    }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
    }

    .vdm-loading-spinner {
        animation: none;
        border-top-color: var(--vdm-blue);
    }
}

.organizer-workspace {
    display: grid;
    grid-template-columns: minmax(13rem, 16rem) minmax(0, 1fr);
    gap: var(--vdm-space-6);
    width: min(100% - 2rem, 90rem);
    margin: var(--vdm-space-8) auto;
    align-items: start;
}

.organizer-sidebar {
    position: sticky;
    top: var(--vdm-space-4);
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: var(--vdm-space-4);
    padding: var(--vdm-space-5);
    border-radius: var(--vdm-radius-lg);
    background: var(--vdm-navy);
    color: var(--vdm-white);
    box-shadow: var(--vdm-shadow-card);
}

.organizer-sidebar-brand .brand-logo,
.organizer-sidebar-brand a {
    color: var(--vdm-white);
}

.organizer-sidebar-label {
    margin: 0;
    color: var(--vdm-gold);
    font-size: var(--vdm-font-size-xs);
    font-weight: var(--vdm-font-weight-bold);
    letter-spacing: var(--vdm-letter-spacing-wide);
    text-transform: uppercase;
}

.organizer-sidebar nav,
.organizer-sidebar-footer,
.organizer-sidebar-event {
    display: grid;
    gap: var(--vdm-space-2);
}

.organizer-sidebar nav a,
.organizer-sidebar-footer a,
.organizer-sidebar-event a {
    display: flex;
    min-height: 2.75rem;
    align-items: center;
    padding: 0.65rem 0.8rem;
    border-radius: var(--vdm-radius-sm);
    color: var(--vdm-white);
    font-size: var(--vdm-font-size-sm);
    font-weight: var(--vdm-font-weight-medium);
    text-decoration: none;
    transition: color 160ms ease, background-color 160ms ease;
}

.organizer-sidebar nav a:hover,
.organizer-sidebar-footer a:hover,
.organizer-sidebar-event a:hover,
.organizer-sidebar nav a:focus-visible,
.organizer-sidebar-footer a:focus-visible,
.organizer-sidebar-event a:focus-visible {
    background: rgba(255, 255, 255, 0.12);
    color: var(--vdm-gold);
}

.organizer-sidebar nav a.is-active,
.organizer-sidebar-event a.is-active {
    background: var(--vdm-white);
    color: var(--vdm-navy);
    font-weight: var(--vdm-font-weight-bold);
}

.organizer-sidebar-event {
    margin-top: var(--vdm-space-2);
    padding-top: var(--vdm-space-3);
    border-top: 1px solid rgba(255, 255, 255, 0.24);
}

.organizer-sidebar-event > span {
    padding: 0 var(--vdm-space-2);
    color: var(--vdm-gold);
    font-size: var(--vdm-font-size-xs);
    font-weight: var(--vdm-font-weight-semibold);
    overflow-wrap: anywhere;
}

.organizer-sidebar-event a {
    min-height: 2.5rem;
    padding-left: 1rem;
    font-size: var(--vdm-font-size-xs);
}

.organizer-sidebar-footer {
    margin-top: auto;
    padding-top: var(--vdm-space-3);
    border-top: 1px solid rgba(255, 255, 255, 0.24);
}

.organizer-content {
    display: grid;
    min-width: 0;
    gap: var(--vdm-space-5);
}

.organizer-content > * {
    min-width: 0;
    max-width: 100%;
}

.organizer-content > .section-header {
    align-items: center;
}

.organizer-content > .section-header h1 {
    margin-bottom: var(--vdm-space-2);
    overflow-wrap: anywhere;
}

.organizer-content .page-card {
    min-width: 0;
}

.organizer-metric-group {
    display: grid;
    gap: var(--vdm-space-3);
}

.organizer-metric-group > h2 {
    margin: 0;
    color: var(--vdm-navy);
    font-size: var(--vdm-font-size-lg);
}

.organizer-metric-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--vdm-space-3);
}

.organizer-metric-grid .dashboard-card {
    min-width: 0;
    min-height: 7rem;
    padding: var(--vdm-space-4);
}

.organizer-metric-grid .dashboard-card h3 {
    margin: 0 0 var(--vdm-space-2);
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-xs);
    font-weight: var(--vdm-font-weight-semibold);
}

.organizer-metric-grid .dashboard-card > strong {
    display: block;
    color: var(--vdm-navy);
    font-size: var(--vdm-font-size-xl);
    overflow-wrap: anywhere;
}

.organizer-metric-note,
.organizer-currency-total {
    display: block;
    margin-top: var(--vdm-space-1);
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-xs);
    line-height: var(--vdm-line-height-normal);
    overflow-wrap: anywhere;
}

.organizer-currency-total {
    color: var(--vdm-navy);
    font-size: var(--vdm-font-size-sm);
    font-weight: var(--vdm-font-weight-bold);
}

.organizer-financial-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.organizer-finance-caption {
    margin: 0;
    font-size: var(--vdm-font-size-xs);
}

.organizer-events,
.organizer-events .section-header,
.organizer-profile {
    min-width: 0;
}

.organizer-events .section-header {
    align-items: center;
}

.organizer-events > .event-list {
    display: grid;
    gap: var(--vdm-space-3);
}

.organizer-events .event-row {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: var(--vdm-space-4);
    padding: var(--vdm-space-4);
}

.organizer-events .event-info,
.organizer-events .event-meta-inline,
.organizer-events .event-actions {
    min-width: 0;
}

.organizer-events .event-meta-inline,
.organizer-events .event-actions {
    grid-column: 2;
    display: flex;
    flex-wrap: wrap;
    gap: var(--vdm-space-2);
    align-items: center;
}

.organizer-events .event-actions > form {
    margin: 0;
}

.organizer-report-filters .form-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.organizer-content table {
    min-width: 42rem;
}

.organizer-inline-status {
    display: inline-block;
    margin: 0 var(--vdm-space-1) var(--vdm-space-1) 0;
    padding: 0.2rem 0.5rem;
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-pill);
    background: var(--vdm-background);
    color: var(--vdm-text);
    font-size: var(--vdm-font-size-xs);
    white-space: nowrap;
}

.organizer-sales-trend {
    display: grid;
    grid-template-columns: minmax(9rem, 0.8fr) minmax(8rem, 1.4fr) minmax(6rem, 0.5fr);
    gap: var(--vdm-space-3);
    align-items: center;
    margin: var(--vdm-space-2) 0;
    color: var(--vdm-text);
    font-size: var(--vdm-font-size-sm);
}

.organizer-sales-trend progress {
    width: 100%;
    height: 0.7rem;
    accent-color: var(--vdm-blue);
}

.organizer-sales-trend strong {
    color: var(--vdm-navy);
    text-align: right;
}

.organizer-analytics {
    gap: 0.9rem;
}

.organizer-workspace.organizer-event-analytics-dashboard {
    display: block;
    width: calc(100% - 13.6rem);
    margin: 0.9rem 1rem 1.5rem 12.2rem;
}

.organizer-event-analytics-dashboard .organizer-content {
    gap: 0.85rem;
}

body:has(.organizer-event-analytics-dashboard) .event-inventory-reference-sidebar {
    display: flex;
    position: fixed;
    z-index: 41;
    top: 0;
    bottom: 0;
    left: 0;
    width: 11.1rem;
    max-height: 100dvh;
    gap: 0.7rem;
    overflow: hidden;
    padding: 0.85rem 0.7rem;
    border-radius: 0;
    background: linear-gradient(165deg, #0b1f6b, #06164f);
    box-shadow: 2px 0 12px rgba(4, 17, 58, 0.12);
}

body:has(.organizer-event-analytics-dashboard) .event-inventory-reference-topbar {
    width: calc(100% - 11.1rem);
    margin-left: 11.1rem;
}

body:has(.organizer-event-analytics-dashboard) .event-inventory-reference-sidebar-brand {
    min-height: 5.8rem;
}

body:has(.organizer-event-analytics-dashboard) .event-inventory-reference-sidebar-brand .brand-logo img {
    width: 8.6rem;
    height: 5.2rem;
}

.organizer-event-analytics-dashboard .event-inventory-reference-sidebar nav {
    gap: 0.08rem;
}

.organizer-event-analytics-dashboard .event-inventory-reference-sidebar nav a {
    min-height: 1.82rem;
    gap: 0.42rem;
    padding: 0.25rem 0.4rem;
    border-radius: 0.4rem;
    font-size: 0.67rem;
}

.organizer-event-analytics-dashboard .event-inventory-reference-sidebar nav a svg {
    width: 1rem;
    height: 1rem;
}

.organizer-event-analytics-dashboard .event-inventory-reference-sidebar nav a.is-active {
    background: #0756df;
}

.organizer-event-analytics-dashboard .event-inventory-reference-sidebar nav a.is-active[aria-current="page"] {
    background: #0649bd;
}

.analytics-title-row {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 0.85rem;
    padding: 0.05rem 0.1rem 0.45rem;
}

.analytics-title-icon {
    display: grid;
    width: 3rem;
    height: 3rem;
    flex: 0 0 auto;
    place-items: center;
    color: var(--vdm-blue);
}

.analytics-title-icon svg {
    width: 2.75rem;
    height: 2.75rem;
    fill: currentColor;
}

.analytics-title-row > div {
    min-width: 0;
}

.analytics-title-row h1 {
    margin: 0;
    color: var(--vdm-navy);
    font-size: clamp(1.45rem, 2.2vw, 1.9rem);
    font-weight: 800;
    letter-spacing: -0.035em;
    line-height: 1.15;
}

.analytics-title-row p {
    margin: 0.2rem 0 0;
    color: #425477;
    font-size: 0.82rem;
}

.analytics-back-button {
    display: inline-flex;
    min-height: 2.5rem;
    align-items: center;
    gap: 0.4rem;
    margin-left: auto;
    padding: 0.45rem 0.75rem;
    border: 1px solid #93baff;
    border-radius: 0.5rem;
    color: var(--vdm-blue);
    font-size: 0.72rem;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
}

.analytics-back-button svg {
    width: 1rem;
    height: 1rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.analytics-event-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--vdm-space-5);
    padding: 0.2rem 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.analytics-event-identity,
.analytics-toolbar,
.analytics-range-label,
.analytics-export-button {
    display: flex;
    align-items: center;
}

.analytics-event-identity {
    flex: 1 1 auto;
    min-width: 0;
    max-width: 67%;
    gap: var(--vdm-space-4);
    padding: 0.35rem 0.5rem;
    border: 1px solid #dfe7f3;
    border-radius: 0.55rem;
    background: var(--vdm-white);
}

.analytics-event-image {
    width: 7.7rem;
    height: 4.5rem;
    flex: 0 0 7.7rem;
    border: 1px solid #e0e7f2;
    border-radius: 0.5rem;
    object-fit: cover;
}

.analytics-event-image-fallback {
    display: grid;
    place-items: center;
    background: #edf3ff;
    color: var(--vdm-blue);
}

.analytics-event-image-fallback svg {
    width: 2rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.7;
}

.analytics-event-identity > div {
    min-width: 0;
}

.analytics-event-identity h2 {
    margin: 0;
    color: var(--vdm-navy);
    font-size: 0.95rem;
    font-weight: 800;
    line-height: 1.3;
    overflow-wrap: anywhere;
}

.analytics-event-identity p {
    margin: 0.2rem 0 0;
    color: var(--vdm-muted);
    font-size: 0.72rem;
    line-height: 1.3;
}

.analytics-event-identity p.analytics-event-venue {
    color: var(--vdm-navy);
    font-weight: 600;
}

.analytics-event-identity p.analytics-event-datetime {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    color: #425477;
}

.analytics-event-datetime svg {
    width: 0.82rem;
    height: 0.82rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.7;
}

.analytics-toolbar {
    flex: 0 0 auto;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: var(--vdm-space-2);
}

.analytics-range-label {
    min-height: 2.75rem;
    gap: var(--vdm-space-2);
    padding: 0 0.5rem;
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-md);
    background: var(--vdm-white);
    color: var(--vdm-navy);
}

.analytics-range-label svg,
.analytics-export-button svg {
    width: 1.15rem;
    height: 1.15rem;
    flex: 0 0 auto;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.7;
}

.analytics-range-label select {
    min-width: 5rem;
    min-height: 2.5rem;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--vdm-text);
    font: inherit;
    font-size: var(--vdm-font-size-xs);
}

.analytics-range-apply,
.analytics-export-button {
    min-height: 2.75rem;
    padding: 0.55rem 0.85rem;
    border: 1px solid var(--vdm-border);
    background: var(--vdm-white);
    color: var(--vdm-navy);
    font-size: var(--vdm-font-size-xs);
    font-weight: var(--vdm-font-weight-semibold);
}

.analytics-export-button {
    gap: var(--vdm-space-2);
    border-color: var(--vdm-blue);
    background: var(--vdm-blue);
    color: var(--vdm-white);
}

.analytics-export-button:hover,
.analytics-export-button:focus-visible {
    border-color: var(--vdm-blue-interaction);
    background: var(--vdm-blue-interaction);
    color: var(--vdm-white);
}

.analytics-advanced-filters {
    margin-top: calc(-1 * var(--vdm-space-3));
}

.analytics-advanced-filters details {
    border: 1px solid #e6ebf4;
    border-radius: var(--vdm-radius-md);
    background: var(--vdm-white);
}

.analytics-advanced-filters summary {
    padding: 0.8rem 1rem;
    color: var(--vdm-blue);
    cursor: pointer;
    font-size: var(--vdm-font-size-xs);
    font-weight: var(--vdm-font-weight-semibold);
}

.analytics-filter-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--vdm-space-3);
    padding: 0 1rem 1rem;
}

.analytics-filter-grid label {
    display: grid;
    gap: 0.35rem;
    color: var(--vdm-text);
    font-size: var(--vdm-font-size-xs);
    font-weight: var(--vdm-font-weight-semibold);
}

.analytics-filter-grid :is(select, input) {
    width: 100%;
    min-width: 0;
    min-height: 2.65rem;
    padding: 0.45rem 0.65rem;
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-sm);
    background: var(--vdm-white);
    color: var(--vdm-text);
    font: inherit;
}

.analytics-filter-actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--vdm-space-2);
    padding: 0 1rem 1rem;
}

.analytics-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--vdm-space-4);
}

.analytics-kpi-card {
    display: grid;
    grid-template-columns: 2.65rem minmax(0, 1fr);
    align-content: start;
    align-items: center;
    gap: 0.2rem var(--vdm-space-3);
    min-width: 0;
    min-height: 5.2rem;
    padding: 0.55rem 0.7rem;
    border: 1px solid #dfe7f3;
    border-radius: 0.65rem;
    background: var(--vdm-white);
    box-shadow: var(--vdm-shadow-card);
}

.analytics-kpi-icon {
    display: grid;
    width: 2.9rem;
    height: 2.9rem;
    grid-row: span 3;
    place-items: center;
    border-radius: 50%;
    color: var(--vdm-white);
}

.analytics-kpi-icon svg {
    width: 1.5rem;
    height: 1.5rem;
    fill: none;
    stroke: var(--vdm-white);
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.analytics-kpi-card p,
.analytics-kpi-card small {
    margin: 0;
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-xs);
}

.analytics-kpi-label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.35rem;
    min-width: 0;
}

.analytics-kpi-label > span {
    padding: 0.12rem 0.32rem;
    border-radius: 0.35rem;
    background: #e7f7ed;
    color: #178044;
    font-size: 0.62rem;
    font-weight: 700;
    white-space: nowrap;
}

.analytics-kpi-card > strong {
    color: var(--vdm-navy);
    font-size: clamp(1.05rem, 1.4vw, 1.35rem);
    line-height: 1.15;
    overflow-wrap: anywhere;
}

.analytics-kpi-card > strong small {
    color: var(--vdm-navy);
    font-size: inherit;
}

.analytics-kpi-card > strong.analytics-kpi-currency {
    font-size: clamp(0.78rem, 1.1vw, 1.1rem);
}

.analytics-kpi-card small {
    grid-column: 2;
}

.analytics-kpi-progress {
    grid-column: 2;
    height: 0.48rem;
    overflow: hidden;
    border-radius: 999px;
    background: #e3e8f0;
}

.analytics-kpi-progress span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--vdm-blue);
}

.analytics-kpi-progress-green span {
    background: #09a75c;
}

.analytics-kpi-blue .analytics-kpi-icon {
    background: #1265ed;
}

.analytics-kpi-green .analytics-kpi-icon {
    background: #0aa653;
}

.analytics-kpi-gold .analytics-kpi-icon {
    background: #ff9f1c;
}

.analytics-kpi-purple .analytics-kpi-icon {
    background: #6426e8;
}

.analytics-overview-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.6fr) minmax(17rem, 0.85fr);
    gap: 0.8rem;
}

.analytics-bottom-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(0, 0.82fr) minmax(0, 1fr);
    gap: 0.8rem;
}

.analytics-panel {
    min-width: 0;
    padding: 0.9rem;
    border: 1px solid #dfe7f3;
    border-radius: 0.65rem;
    background: var(--vdm-white);
    box-shadow: var(--vdm-shadow-card);
}

.analytics-panel-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--vdm-space-3);
    margin-bottom: 0.6rem;
}

.analytics-panel-title {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 0.4rem;
}

.analytics-panel-title svg {
    width: 1.2rem;
    height: 1.2rem;
    flex: 0 0 auto;
    fill: none;
    stroke: var(--vdm-blue);
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.analytics-panel-heading h2 {
    margin: 0;
    color: var(--vdm-navy);
    font-size: 0.9rem;
    font-weight: 800;
}

.analytics-panel-heading p {
    margin: 0.2rem 0 0;
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-xs);
}

.analytics-chart-wrap {
    width: 100%;
    overflow: hidden;
}

.analytics-line-chart {
    display: block;
    width: 100%;
    min-height: 8.5rem;
    overflow: visible;
}

.analytics-ticket-line-chart {
    height: 10.1rem;
}

.analytics-chart-gridline {
    stroke: #e9eef6;
    stroke-dasharray: 0;
    stroke-width: 1;
}

.analytics-chart-area {
    fill: rgba(0, 123, 255, 0.13);
}

.analytics-chart-line {
    fill: none;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 3;
}

.analytics-chart-line-0,
.analytics-chart-dot-0,
.analytics-legend-dot-0 {
    stroke: #087cff;
    background: #087cff;
}

.analytics-chart-line-1,
.analytics-chart-dot-1,
.analytics-legend-dot-1 {
    stroke: #16a46a;
    background: #16a46a;
}

.analytics-chart-line-2,
.analytics-chart-dot-2,
.analytics-legend-dot-2 {
    stroke: #f0ad17;
    background: #f0ad17;
}

.analytics-chart-line-3,
.analytics-chart-dot-3,
.analytics-legend-dot-3 {
    stroke: #8a64d6;
    background: #8a64d6;
}

.analytics-chart-dot {
    stroke: var(--vdm-white);
    stroke-width: 2;
}

.analytics-chart-dot-0 { fill: #087cff; }
.analytics-chart-dot-1 { fill: #16a46a; }
.analytics-chart-dot-2 { fill: #f0ad17; }
.analytics-chart-dot-3 { fill: #8a64d6; }

.analytics-chart-key {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    color: var(--vdm-navy);
    font-size: 0.65rem;
    white-space: nowrap;
}

.analytics-chart-key i {
    width: 0.55rem;
    height: 0.55rem;
    border-radius: 50%;
    background: var(--vdm-blue);
}

.analytics-chart-label {
    fill: var(--vdm-muted);
    font-family: var(--vdm-font-family);
    font-size: 10px;
}

.analytics-chart-legend {
    display: flex;
    flex-wrap: wrap;
    gap: var(--vdm-space-3);
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-xs);
}

.analytics-chart-legend span,
.analytics-attendance-legend span {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
}

.analytics-revenue-series {
    display: grid;
    grid-template-columns: minmax(2.5rem, auto) minmax(0, 1fr);
    align-items: center;
    gap: 0.3rem;
    margin-top: 0.3rem;
}

.analytics-revenue-series > strong {
    color: var(--vdm-navy);
    font-size: 0.62rem;
}

.analytics-revenue-series svg {
    width: 100%;
    height: 4.5rem;
    overflow: visible;
}

.analytics-revenue-bar-0 { fill: #087cff; }
.analytics-revenue-bar-1 { fill: #16a46a; }
.analytics-revenue-bar-2 { fill: #f0ad17; }
.analytics-revenue-bar-3 { fill: #8a64d6; }

.analytics-legend-dot,
.analytics-attendance-legend i {
    display: inline-block;
    width: 0.55rem;
    height: 0.55rem;
    flex: 0 0 auto;
    border-radius: 50%;
}

.analytics-attendance-panel {
    display: flex;
    flex-direction: column;
}

.analytics-attendance-ring {
    display: grid;
    width: 10.5rem;
    aspect-ratio: 1;
    align-self: center;
    place-items: center;
    border-radius: 50%;
    background: conic-gradient(#087cff var(--analytics-attendance-progress), #e8eef7 0);
    position: relative;
}

.analytics-attendance-ring::before {
    position: absolute;
    inset: 0.85rem;
    border-radius: 50%;
    background: var(--vdm-white);
    content: "";
}

.analytics-attendance-ring > span {
    z-index: 1;
    display: grid;
    text-align: center;
}

.analytics-attendance-ring strong {
    color: var(--vdm-navy);
    font-size: 1.65rem;
}

.analytics-attendance-ring small {
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-xs);
}

.analytics-attendance-legend {
    display: grid;
    gap: var(--vdm-space-2);
    margin-top: var(--vdm-space-4);
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-xs);
}

.analytics-attendance-legend strong {
    margin-left: auto;
    color: var(--vdm-navy);
}

.analytics-attendance-checked {
    background: #087cff;
}

.analytics-attendance-issued {
    background: #d7dfeb;
}

.analytics-attendance-content {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
}

.analytics-attendance-content .analytics-attendance-ring {
    width: 7rem;
    flex: 0 0 7rem;
}

.analytics-attendance-content .analytics-attendance-ring::before {
    inset: 0.65rem;
}

.analytics-attendance-content .analytics-attendance-ring strong {
    font-size: 1.25rem;
}

.analytics-attendance-content .analytics-attendance-ring small {
    font-size: 0.6rem;
}

.analytics-attendance-content .analytics-attendance-legend {
    gap: 0.65rem;
    margin: 0;
}

.analytics-attendance-content .analytics-attendance-legend > span > span {
    display: grid;
    gap: 0.12rem;
    color: var(--vdm-navy);
    font-size: 0.62rem;
}

.analytics-attendance-content .analytics-attendance-legend strong {
    margin: 0;
    font-size: 0.85rem;
}

.analytics-category-row {
    display: grid;
    grid-template-columns: minmax(4rem, 0.35fr) minmax(0, 1fr) 2rem;
    align-items: center;
    gap: 0.45rem;
    margin-top: 1rem;
}

.analytics-category-row > div:first-child {
    display: contents;
}

.analytics-category-row > div:first-child span {
    grid-column: 1;
    grid-row: 1;
    color: var(--vdm-navy);
    font-size: 0.67rem;
    white-space: nowrap;
}

.analytics-category-row > div:first-child strong {
    grid-column: 3;
    grid-row: 1;
    color: var(--vdm-navy);
    font-size: 0.67rem;
    text-align: right;
}

.analytics-category-track {
    grid-column: 2;
    grid-row: 1;
    height: 1.05rem;
    overflow: hidden;
    border-radius: var(--vdm-radius-pill);
    background: #e9edf4;
}

.analytics-category-track span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #087cff;
}

.analytics-category-row-1 .analytics-category-track span { background: #ff9f1c; }
.analytics-category-row-2 .analytics-category-track span { background: #6925e8; }

.analytics-activity-row {
    display: grid;
    grid-template-columns: 0.45rem minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.45rem;
    padding: 0.45rem 0;
    border-bottom: 1px solid #edf0f5;
}

.analytics-activity-row:last-child {
    border-bottom: 0;
}

.analytics-activity-icon {
    display: grid;
    width: 0.45rem;
    height: 0.45rem;
    place-items: center;
    border-radius: 50%;
    background: #087cff;
    color: var(--vdm-blue);
}

.analytics-activity-icon svg {
    display: block;
}

.analytics-activity-icon svg {
    width: 1.15rem;
    height: 1.15rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.6;
}

.analytics-activity-reservation {
    background: #087cff;
    color: #087cff;
}

.analytics-activity-order { background: #08a45b; }

.analytics-activity-check-in {
    background: #08a45b;
    color: #08a45b;
}

.analytics-activity-copy {
    display: grid;
    min-width: 0;
}

.analytics-activity-copy strong {
    color: var(--vdm-text);
    font-size: 0.66rem;
    font-weight: 600;
    overflow-wrap: anywhere;
}

.analytics-activity-copy small,
.analytics-activity-row time {
    color: var(--vdm-muted);
    font-size: 0.59rem;
}

.analytics-activity-row time {
    text-align: right;
    white-space: nowrap;
}

.analytics-empty-state {
    margin: 0;
    padding: var(--vdm-space-6) var(--vdm-space-3);
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-sm);
    text-align: center;
}

.analytics-details-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    padding-top: var(--vdm-space-2);
}

.analytics-details-heading h2 {
    margin: 0;
    color: var(--vdm-navy);
    font-size: 1.25rem;
}

.analytics-details-heading p {
    margin: 0.25rem 0 0;
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-xs);
}

@media (max-width: 1100px) {
    .analytics-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .analytics-bottom-grid {
        grid-template-columns: minmax(0, 1fr) minmax(0, 0.9fr);
    }

    .analytics-activity-panel {
        grid-column: 1 / -1;
    }

    .analytics-event-heading {
        gap: 0.7rem;
    }
}

@media (max-width: 900px) {
    .organizer-workspace.organizer-event-analytics-dashboard {
        width: calc(100% - 1rem);
        margin: 0.75rem auto 1rem;
    }

    body:has(.organizer-event-analytics-dashboard) .event-inventory-reference-sidebar {
        display: none;
    }

    body:has(.organizer-event-analytics-dashboard) .event-inventory-reference-topbar {
        width: 100%;
        margin-left: 0;
    }
}

@media (max-width: 760px) {
    .analytics-title-row {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .analytics-title-icon {
        width: 2.45rem;
        height: 2.45rem;
    }

    .analytics-title-icon svg {
        width: 2.25rem;
        height: 2.25rem;
    }

    .analytics-event-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .analytics-event-identity {
        width: 100%;
        max-width: none;
    }

    .analytics-toolbar {
        width: 100%;
        justify-content: flex-start;
    }

    .analytics-filter-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .analytics-overview-grid,
    .analytics-bottom-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .analytics-activity-panel {
        grid-column: auto;
    }

    .analytics-ticket-line-chart {
        height: 8.5rem;
    }

    .analytics-activity-row {
        grid-template-columns: 0.45rem minmax(0, 1fr) auto;
    }

    .analytics-activity-row time {
        grid-column: auto;
        text-align: right;
    }
}

@media (max-width: 520px) {
    .analytics-title-row {
        gap: 0.5rem;
    }

    .analytics-title-row > div {
        flex: 1 1 calc(100% - 3.2rem);
    }

    .analytics-title-row p {
        font-size: 0.7rem;
    }

    .analytics-back-button {
        min-height: 2.25rem;
        margin-left: 3rem;
    }

    .analytics-event-heading,
    .analytics-panel {
        padding: var(--vdm-space-4);
    }

    .analytics-event-heading {
        padding: 0.2rem 0;
    }

    .analytics-event-identity {
        align-items: flex-start;
        gap: 0.65rem;
    }

    .analytics-event-image {
        width: 5.25rem;
        height: 3.5rem;
        flex-basis: 5.25rem;
    }

    .analytics-toolbar > * {
        flex: 1 1 auto;
    }

    .analytics-range-label {
        min-width: 0;
    }

    .analytics-range-label select {
        min-width: 0;
        width: 100%;
    }

    .analytics-export-button,
    .analytics-range-apply {
        justify-content: center;
    }

    .analytics-filter-grid,
    .analytics-kpi-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .analytics-kpi-card {
        min-height: 7.2rem;
    }

    .analytics-attendance-content {
        justify-content: flex-start;
    }

    .analytics-line-chart {
        min-height: 8rem;
    }
}

.organizer-sales-report-dashboard .analytics-title-row {
    align-items: center;
}

.organizer-sales-report-dashboard .analytics-toolbar {
    margin-left: auto;
}

.organizer-sales-report-dashboard .analytics-event-heading {
    align-items: center;
    min-height: 5.7rem;
    padding: 0.45rem 0.75rem;
    border: 1px solid #dfe7f3;
    border-radius: 0.65rem;
    background: var(--vdm-white);
    box-shadow: var(--vdm-shadow-card);
}

.organizer-sales-report-dashboard .analytics-event-identity {
    max-width: none;
    padding: 0;
    border: 0;
    background: transparent;
}

.organizer-sales-report-dashboard .analytics-event-identity p {
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.organizer-sales-report-dashboard .analytics-event-identity p svg {
    width: 0.85rem;
    height: 0.85rem;
    flex: 0 0 auto;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.7;
}

.analytics-event-status {
    display: grid;
    flex: 0 0 auto;
    justify-items: end;
    gap: 0.35rem;
    color: var(--vdm-navy);
    text-align: right;
}

.analytics-event-status-badge {
    display: inline-flex;
    min-height: 1.8rem;
    align-items: center;
    gap: 0.35rem;
    padding: 0.2rem 0.65rem;
    border-radius: 999px;
    background: #e9efff;
    color: var(--vdm-navy);
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: capitalize;
}

.analytics-event-status-badge.is-published {
    background: #def7e8;
    color: #078044;
}

.analytics-event-status small {
    color: var(--vdm-navy);
    font-size: 0.65rem;
    font-weight: 600;
}

.organizer-sales-report-dashboard .analytics-kpi-card {
    min-height: 5.1rem;
}

.analytics-sales-chart-legend {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.35rem 0.65rem;
}

.analytics-sales-chart-legend .analytics-chart-key {
    font-size: 0.62rem;
}

.analytics-kpi-currency {
    font-size: clamp(0.75rem, 1vw, 1.05rem) !important;
}

.analytics-ticket-bar {
    fill: #087cff;
}

.analytics-revenue-line {
    fill: none;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2.5;
}

.analytics-revenue-dot {
    stroke: var(--vdm-white);
    stroke-width: 1.5;
}

.analytics-revenue-line-0,
.analytics-revenue-dot-0,
.analytics-revenue-key-0 i {
    stroke: #f4a400;
    fill: #f4a400;
    background: #f4a400;
}

.analytics-revenue-line-1,
.analytics-revenue-dot-1,
.analytics-revenue-key-1 i {
    stroke: #16a46a;
    fill: #16a46a;
    background: #16a46a;
}

.analytics-revenue-line-2,
.analytics-revenue-dot-2,
.analytics-revenue-key-2 i {
    stroke: #6925e8;
    fill: #6925e8;
    background: #6925e8;
}

.analytics-revenue-line-3,
.analytics-revenue-dot-3,
.analytics-revenue-key-3 i {
    stroke: #e85d75;
    fill: #e85d75;
    background: #e85d75;
}

.analytics-chart-note {
    margin: -0.5rem 0 0;
    color: var(--vdm-muted);
    font-size: 0.62rem;
}

.analytics-category-overview {
    display: grid;
    min-height: 9.5rem;
    grid-template-columns: minmax(7rem, 0.85fr) minmax(0, 1fr);
    align-items: center;
    gap: 0.9rem;
}

.analytics-category-donut {
    position: relative;
    display: grid;
    width: min(100%, 8.6rem);
    aspect-ratio: 1;
    place-items: center;
    justify-self: center;
    border-radius: 50%;
    background: var(--analytics-category-gradient, #e8eef7);
}

.analytics-category-donut::before {
    position: absolute;
    inset: 23%;
    border-radius: inherit;
    background: var(--vdm-white);
    content: "";
}

.analytics-category-donut > span {
    z-index: 1;
    display: grid;
    gap: 0.1rem;
    color: var(--vdm-navy);
    text-align: center;
}

.analytics-category-donut strong {
    font-size: 1.1rem;
    line-height: 1.15;
}

.analytics-category-donut small {
    font-size: 0.62rem;
}

.analytics-category-legend {
    display: grid;
    gap: 0.65rem;
    min-width: 0;
}

.analytics-category-legend-item {
    display: grid;
    grid-template-columns: 0.65rem minmax(0, 1fr);
    align-items: start;
    gap: 0.45rem;
    color: var(--vdm-navy);
    font-size: 0.68rem;
}

.analytics-category-legend-item i {
    width: 0.62rem;
    height: 0.62rem;
    margin-top: 0.15rem;
    border-radius: 50%;
    background: var(--analytics-category-color);
}

.analytics-category-legend-item span,
.analytics-category-legend-item strong {
    display: block;
}

.analytics-category-legend-item strong {
    margin-top: 0.1rem;
    font-size: 0.7rem;
}

.analytics-sales-bottom-grid {
    grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.8fr) minmax(0, 1.15fr);
}

.analytics-revenue-breakdown-table table {
    width: 100%;
    min-width: 22rem;
    border-collapse: collapse;
    font-size: 0.65rem;
}

.analytics-revenue-breakdown-table th,
.analytics-revenue-breakdown-table td {
    padding: 0.38rem 0.3rem;
    border-bottom: 1px solid #e8edf5;
    color: var(--vdm-navy);
    text-align: left;
    white-space: nowrap;
}

.analytics-revenue-breakdown-table th {
    background: #f5f7fc;
    font-weight: 700;
}

.analytics-sales-allocation {
    display: grid;
    gap: 0.15rem;
    margin: 0.55rem 0 0.6rem;
}

.analytics-sales-allocation strong {
    color: #0a9c5a;
    font-size: 1.5rem;
    line-height: 1.1;
}

.analytics-sales-allocation span,
.analytics-peak-sales small,
.analytics-sales-summary-empty {
    color: var(--vdm-muted);
    font-size: 0.65rem;
}

.analytics-peak-sales {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    margin-top: 0.8rem;
    padding-top: 0.7rem;
    border-top: 1px solid #e8edf5;
}

.analytics-peak-sales-icon {
    display: grid;
    width: 2rem;
    height: 2rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 50%;
    background: #e9f1ff;
    color: var(--vdm-blue);
}

.analytics-peak-sales-icon svg {
    width: 1.1rem;
    height: 1.1rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.7;
}

.analytics-peak-sales > span:last-child {
    display: grid;
    gap: 0.15rem;
}

.analytics-peak-sales strong {
    color: var(--vdm-navy);
    font-size: 0.68rem;
}

.analytics-sales-summary-empty {
    margin: 0.8rem 0 0;
    line-height: 1.5;
}

.analytics-sales-bottom-grid .analytics-activity-row {
    grid-template-columns: 0.45rem minmax(0, 1fr) auto;
}

@media (max-width: 1100px) {
    .organizer-sales-report-dashboard .analytics-sales-bottom-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .organizer-sales-report-dashboard .analytics-activity-panel {
        grid-column: 1 / -1;
    }
}

@media (max-width: 760px) {
    .organizer-sales-report-dashboard .analytics-title-row {
        flex-wrap: wrap;
    }

    .organizer-sales-report-dashboard .analytics-toolbar {
        width: 100%;
        margin-left: 0;
        justify-content: flex-start;
    }

    .organizer-sales-report-dashboard .analytics-event-heading {
        align-items: flex-start;
    }

    .organizer-sales-report-dashboard .analytics-event-status {
        justify-items: start;
        text-align: left;
    }

    .organizer-sales-report-dashboard .analytics-sales-bottom-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-sales-report-dashboard .analytics-activity-panel {
        grid-column: auto;
    }
}

@media (max-width: 520px) {
    .organizer-sales-report-dashboard .analytics-event-heading {
        padding: 0.75rem;
    }

    .organizer-sales-report-dashboard .analytics-category-overview {
        grid-template-columns: minmax(6rem, 0.8fr) minmax(0, 1fr);
        gap: 0.55rem;
    }

    .organizer-sales-report-dashboard .analytics-category-donut {
        width: min(100%, 7rem);
    }
}

.analytics-transaction-filters {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    align-items: end;
    gap: 0.55rem;
    padding: 0.65rem;
    border: 1px solid #dfe7f3;
    border-radius: 0.6rem;
    background: var(--vdm-white);
    box-shadow: var(--vdm-shadow-card);
}

.analytics-transaction-filters > label {
    display: grid;
    min-width: 0;
    gap: 0.25rem;
    color: var(--vdm-navy);
    font-size: 0.61rem;
    font-weight: 700;
}

.analytics-transaction-filters :is(select, input) {
    width: 100%;
    min-width: 0;
    min-height: 2.2rem;
    padding: 0.35rem 0.45rem;
    border: 1px solid #d5deed;
    border-radius: 0.42rem;
    background: var(--vdm-white);
    color: var(--vdm-navy);
    font: inherit;
    font-size: 0.65rem;
}

.analytics-transaction-filter-actions {
    display: flex;
    grid-column: 1 / -1;
    align-items: center;
    justify-content: flex-end;
    gap: 0.65rem;
}

.analytics-transaction-filter-actions button {
    display: inline-flex;
    min-height: 2.15rem;
    align-items: center;
    gap: 0.35rem;
    padding: 0.4rem 0.8rem;
    border: 1px solid #007bff;
    background: #007bff;
    color: #fff;
    font-size: 0.66rem;
}

.analytics-transaction-filter-actions button:hover,
.analytics-transaction-filter-actions button:focus-visible {
    border-color: #005fd1;
    background: #005fd1;
    color: #fff;
}

.analytics-transaction-filter-actions button svg,
.analytics-detail-actions-panel svg {
    width: 0.95rem;
    height: 0.95rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.analytics-transaction-filter-actions > a {
    color: var(--vdm-blue);
    font-size: 0.67rem;
    font-weight: 700;
    text-decoration: none;
}

.analytics-transactions-panel {
    padding: 0.7rem;
}

.analytics-transactions-heading {
    align-items: center;
    margin-bottom: 0.55rem;
}

.analytics-transactions-heading > span {
    color: var(--vdm-muted);
    font-size: 0.64rem;
    text-align: right;
}

.analytics-transactions-table {
    width: 100%;
    overflow-x: auto;
    border: 1px solid #e0e7f2;
    border-radius: 0.4rem;
}

.analytics-transactions-table table {
    width: 100%;
    min-width: 66rem;
    border-collapse: collapse;
    color: var(--vdm-navy);
    font-size: 0.62rem;
}

.analytics-transactions-table th,
.analytics-transactions-table td {
    padding: 0.42rem 0.48rem;
    border: 1px solid #e2e8f3;
    text-align: left;
    vertical-align: middle;
}

.analytics-transactions-table th {
    background: #f0f4fc;
    color: var(--vdm-navy);
    font-size: 0.6rem;
    font-weight: 800;
    white-space: nowrap;
}

.analytics-transactions-table tbody tr:nth-child(even) {
    background: #fbfcff;
}

.analytics-transactions-table tbody tr:hover {
    background: #f2f7ff;
}

.analytics-transaction-reference {
    color: #243f7c;
    font-weight: 600;
    white-space: nowrap;
}

.analytics-transaction-category {
    display: inline-block;
    max-width: 10rem;
    overflow-wrap: anywhere;
}

.analytics-transactions-table time {
    display: grid;
    min-width: 5.2rem;
    white-space: nowrap;
}

.analytics-transactions-table time small {
    margin-top: 0.1rem;
    color: var(--vdm-muted);
    font-size: 0.58rem;
}

.analytics-transaction-status {
    display: inline-flex;
    align-items: center;
    padding: 0.22rem 0.48rem;
    border-radius: 999px;
    background: #edf1f7;
    color: #46546d;
    font-size: 0.6rem;
    font-weight: 700;
    white-space: nowrap;
}

.analytics-transaction-status.is-paid,
.analytics-transaction-status.is-successful {
    background: #e1f7eb;
    color: #078044;
}

.analytics-transaction-status.is-pending,
.analytics-transaction-status.is-processing,
.analytics-transaction-status.is-created {
    background: #fff3d9;
    color: #9a6200;
}

.analytics-transaction-status.is-refunded,
.analytics-transaction-status.is-failed,
.analytics-transaction-status.is-cancelled,
.analytics-transaction-status.is-expired {
    background: #ffe8e8;
    color: #ad2828;
}

.analytics-transaction-status.is-under-review,
.analytics-transaction-status.is-review {
    background: #f0e9ff;
    color: #6925a8;
}

.analytics-transaction-status.is-unverified {
    background: #edf1f7;
    color: #46546d;
}

.analytics-transactions-empty {
    padding: 1.5rem !important;
    color: var(--vdm-muted);
    text-align: center !important;
}

.analytics-transactions-footer {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    margin-top: 0.55rem;
    color: var(--vdm-blue);
    font-size: 0.65rem;
    font-weight: 700;
}

.analytics-transactions-footer nav {
    min-width: 0;
}

.analytics-transactions-footer nav > div:first-child {
    display: none;
}

.analytics-transactions-footer nav > div:last-child {
    margin: 0;
}

.analytics-transactions-footer nav span,
.analytics-transactions-footer nav a {
    min-width: 1.65rem;
    min-height: 1.65rem;
    font-size: 0.62rem;
}

.analytics-detail-summary-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.05fr) minmax(10rem, 0.62fr);
    gap: 0.65rem;
}

.analytics-detail-summary-grid > .analytics-panel {
    padding: 0.75rem;
}

.analytics-detail-summary-grid .analytics-panel-heading {
    margin-bottom: 0.4rem;
}

.analytics-detail-summary-grid .analytics-category-overview {
    min-height: 7rem;
    grid-template-columns: minmax(5rem, 0.8fr) minmax(0, 1fr);
    gap: 0.55rem;
}

.analytics-detail-summary-grid .analytics-category-donut {
    width: min(100%, 6.7rem);
}

.analytics-detail-summary-grid .analytics-category-legend {
    gap: 0.42rem;
}

.analytics-detail-summary-grid .analytics-category-legend-item {
    font-size: 0.62rem;
}

.analytics-detail-summary-grid .analytics-category-legend-item strong {
    font-size: 0.64rem;
}

.analytics-finance-summary {
    display: grid;
}

.analytics-finance-summary > span {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.4rem;
    padding: 0.42rem 0.5rem;
    border-bottom: 1px solid #e8edf5;
    color: var(--vdm-navy);
    font-size: 0.64rem;
}

.analytics-finance-summary > span strong {
    font-size: 0.66rem;
    text-align: right;
    white-space: nowrap;
}

.analytics-finance-summary > span.is-net {
    border: 0;
    border-radius: 0.35rem;
    background: #e8efff;
    color: #073cb8;
    font-weight: 800;
}

.analytics-finance-summary > span.is-net strong {
    font-size: 0.75rem;
}

.analytics-finance-summary > .analytics-finance-note {
    color: var(--vdm-muted);
    line-height: 1.45;
}

.analytics-detail-actions-panel {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.analytics-detail-actions-panel .analytics-panel-heading {
    margin-bottom: 0.15rem;
}

.analytics-detail-actions-panel :is(button, a) {
    display: flex;
    width: 100%;
    min-height: 1.95rem;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    padding: 0.35rem 0.5rem;
    font-size: 0.63rem;
    text-decoration: none;
}

.analytics-detail-actions-panel .analytics-detail-action-primary {
    border: 1px solid var(--vdm-blue);
    background: var(--vdm-blue);
    color: var(--vdm-white);
}

.analytics-detail-actions-panel .analytics-detail-action-secondary {
    border: 1px solid #8eb6ff;
    background: var(--vdm-white);
    color: #0649bd;
}

@media (max-width: 1100px) {
    .analytics-transaction-filters {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .analytics-detail-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .analytics-detail-actions-panel {
        grid-column: 1 / -1;
    }
}

@media (max-width: 760px) {
    .analytics-transaction-filters {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .analytics-detail-summary-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .analytics-detail-actions-panel {
        grid-column: auto;
    }

    .analytics-transactions-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .analytics-transactions-heading > span {
        text-align: left;
    }
}

@media (max-width: 420px) {
    .analytics-transaction-filters {
        grid-template-columns: minmax(0, 1fr);
    }

    .analytics-transaction-filter-actions {
        justify-content: space-between;
    }

    .analytics-transactions-footer {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media print {
    .organizer-sidebar,
    .site-header,
    .analytics-toolbar,
    .analytics-advanced-filters,
    .analytics-transaction-filters,
    .analytics-detail-actions-panel,
    .analytics-back-button,
    .site-footer {
        display: none !important;
    }

    .organizer-workspace {
        display: block;
        width: 100%;
        margin: 0;
    }

    .analytics-panel,
    .analytics-kpi-card,
    .analytics-event-heading {
        break-inside: avoid;
        box-shadow: none;
    }
}

.ticket-inventory-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--vdm-space-2);
    margin: var(--vdm-space-4) 0;
}

.ticket-inventory-summary > span {
    display: grid;
    gap: var(--vdm-space-1);
    min-width: 0;
    padding: var(--vdm-space-3);
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-sm);
    background: var(--vdm-background);
}

.ticket-inventory-summary small {
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-xs);
}

.ticket-inventory-summary strong {
    color: var(--vdm-navy);
    overflow-wrap: anywhere;
}

.event-workspace .event-next-steps {
    border-left: 4px solid var(--vdm-gold);
}

.event-workspace .event-wizard-steps {
    display: flex;
    flex-wrap: wrap;
    gap: var(--vdm-space-2);
    margin: 0 0 var(--vdm-space-5);
    padding: 0;
    list-style: none;
}

.event-workspace .event-wizard-steps button {
    min-height: 2.75rem;
    padding: 0.6rem 0.9rem;
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-pill);
    background: var(--vdm-white);
    color: var(--vdm-navy);
    font-weight: var(--vdm-font-weight-semibold);
}

.event-workspace .event-wizard-steps button[aria-current="step"] {
    border-color: var(--vdm-blue);
    background: var(--vdm-blue-interaction);
    color: var(--vdm-white);
}

.event-workspace .event-wizard-panel h2 {
    margin-top: 0;
}

.organizer-content .table-responsive {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
}

@media (max-width: 1000px) {
    .organizer-workspace {
        grid-template-columns: 13rem minmax(0, 1fr);
        gap: var(--vdm-space-4);
    }

    .organizer-sidebar {
        padding: var(--vdm-space-4);
    }

    .organizer-metric-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .organizer-report-filters .form-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .organizer-workspace {
        grid-template-columns: minmax(0, 1fr);
        width: min(100% - 1.25rem, 48rem);
        margin: var(--vdm-space-4) auto;
        gap: var(--vdm-space-4);
    }

    .organizer-sidebar {
        position: static;
        gap: var(--vdm-space-3);
        padding: var(--vdm-space-4);
    }

    .organizer-sidebar nav,
    .organizer-sidebar-footer {
        display: flex;
        flex-wrap: wrap;
        gap: var(--vdm-space-2);
    }

    .organizer-sidebar nav a,
    .organizer-sidebar-footer a {
        flex: 1 1 auto;
        justify-content: center;
    }

    .organizer-sidebar-event {
        flex: 1 1 100%;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .organizer-sales-trend {
        grid-template-columns: minmax(0, 1fr) auto;
        gap: var(--vdm-space-2);
    }

    .organizer-sales-trend progress {
        grid-column: 1 / -1;
        grid-row: 2;
    }

    .organizer-sales-trend strong {
        grid-column: 2;
        grid-row: 1;
    }

    .organizer-sidebar-event > span {
        grid-column: 1 / -1;
    }

    .organizer-sidebar-event a {
        justify-content: center;
        padding-inline: var(--vdm-space-2);
        text-align: center;
    }

    .organizer-content {
        gap: var(--vdm-space-4);
    }
}

@media (max-width: 520px) {
    .organizer-workspace {
        width: min(100% - 2rem, 32rem);
    }

    .organizer-content > .section-header,
    .organizer-events .section-header {
        align-items: flex-start;
    }

    .organizer-metric-grid,
    .organizer-financial-grid,
    .organizer-report-filters .form-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-metric-grid .dashboard-card {
        min-height: 0;
    }

    .organizer-events .event-row {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-events .event-meta-inline,
    .organizer-events .event-actions {
        grid-column: 1;
    }

    .organizer-sidebar-event {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-sidebar-event > span {
        grid-column: auto;
    }

    .organizer-sidebar-event a {
        justify-content: flex-start;
        text-align: left;
    }

    .ticket-inventory-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .organizer-content .ticket-admin-list,
    .organizer-content .ticket-admin-card {
        min-width: 0;
    }

    .organizer-content .ticket-admin-card {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-content .ticket-admin-card .two-col {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-content .new-ticket-form .two-col {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-content .ticket-admin-card input,
    .organizer-content .ticket-admin-card select,
    .organizer-content .ticket-admin-card textarea {
        min-width: 0;
        max-width: 100%;
    }

    .organizer-content .new-ticket-form input,
    .organizer-content .new-ticket-form select,
    .organizer-content .new-ticket-form textarea {
        min-width: 0;
        max-width: 100%;
    }
}

body:has(.organizer-workspace) .site-header {
    background: var(--vdm-white);
    border-bottom-color: var(--vdm-border);
    box-shadow: 0 2px 12px rgba(11, 31, 107, 0.06);
    color: var(--vdm-navy);
}

body:has(.organizer-workspace) .main-nav {
    color: var(--vdm-navy);
}

body:has(.organizer-workspace) .site-header .btn-ghost {
    border-color: var(--vdm-border);
    background: var(--vdm-white);
    color: var(--vdm-navy);
}

body:has(.organizer-workspace) .site-header .btn-ghost:hover,
body:has(.organizer-workspace) .site-header .btn-ghost:focus-visible {
    border-color: var(--vdm-blue);
    color: var(--vdm-blue-interaction);
}

body:has(.organizer-workspace) .mobile-nav summary span {
    background: var(--vdm-navy);
}

.organizer-workspace {
    display: block;
    width: min(100% - 19rem, 90rem);
    margin: var(--vdm-space-6) 2rem var(--vdm-space-8) 17rem;
}

.organizer-sidebar {
    position: fixed;
    z-index: 25;
    top: 4.5rem;
    bottom: 1rem;
    left: 0;
    width: 14.5rem;
    max-height: calc(100dvh - 5.5rem);
    min-height: 0;
    overflow: hidden;
    border-radius: var(--vdm-radius-lg);
}

.organizer-sidebar nav {
    min-height: 0;
    flex: 1 1 auto;
    align-content: start;
    overflow-y: auto;
    scrollbar-width: none;
}

.organizer-sidebar nav::-webkit-scrollbar {
    display: none;
}

.organizer-sidebar-footer {
    flex: 0 0 auto;
}

.organizer-sidebar-heading {
    display: grid;
    flex: 0 0 auto;
    gap: var(--vdm-space-2);
}

.organizer-sidebar nav {
    gap: var(--vdm-space-1);
}

.organizer-sidebar nav a {
    min-height: 2.65rem;
}

.organizer-filter-form {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--vdm-space-3);
    align-items: end;
}

.organizer-filter-form .form-field {
    min-width: 0;
}

.organizer-filter-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--vdm-space-2);
}

.organizer-filter-note {
    grid-column: 1 / -1;
    margin: 0;
    font-size: var(--vdm-font-size-xs);
}

.organizer-data-table {
    width: 100%;
    min-width: 58rem;
    border-collapse: collapse;
}

.organizer-data-table th,
.organizer-data-table td {
    padding: var(--vdm-space-3);
    border-bottom: 1px solid var(--vdm-border);
    text-align: left;
    vertical-align: top;
}

.organizer-data-table th {
    background: var(--vdm-background);
    color: var(--vdm-navy);
    font-size: var(--vdm-font-size-xs);
    white-space: nowrap;
}

.organizer-data-table td > strong,
.organizer-data-table td > .muted-copy {
    display: block;
}

.organizer-event-thumbnail {
    display: block;
    width: 5rem;
    height: 3.25rem;
    margin-bottom: var(--vdm-space-2);
    border-radius: var(--vdm-radius-sm);
    object-fit: cover;
}

.organizer-event-placeholder {
    display: grid;
    place-items: center;
    background: var(--vdm-navy);
    color: var(--vdm-gold);
    font-size: 0.55rem;
    font-weight: var(--vdm-font-weight-bold);
}

.organizer-row-actions {
    display: flex;
    flex-wrap: wrap;
    min-width: 12rem;
    gap: var(--vdm-space-1);
}

.organizer-payment-attempt {
    display: grid;
    justify-items: start;
    gap: var(--vdm-space-1);
    padding: var(--vdm-space-2) 0;
    border-bottom: 1px solid var(--vdm-border);
    overflow-wrap: anywhere;
}

.organizer-payment-attempt:last-child {
    border-bottom: 0;
}

.organizer-chart-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--vdm-space-4);
}

.organizer-chart {
    min-width: 0;
}

.organizer-chart figcaption h2 {
    margin-top: 0;
}

.organizer-chart figcaption p {
    margin-bottom: var(--vdm-space-3);
}

.organizer-chart-list {
    display: grid;
    gap: var(--vdm-space-3);
    margin: 0;
    padding: 0;
    list-style: none;
}

.organizer-chart-row {
    display: grid;
    grid-template-columns: minmax(6rem, 0.8fr) minmax(4rem, 1.4fr) minmax(4rem, 0.6fr);
    gap: var(--vdm-space-2);
    align-items: center;
    min-width: 0;
    font-size: var(--vdm-font-size-xs);
}

.organizer-chart-row > span,
.organizer-chart-row > strong {
    min-width: 0;
    overflow-wrap: anywhere;
}

.organizer-chart-row progress {
    width: 100%;
    min-width: 0;
    height: 0.75rem;
    accent-color: var(--vdm-blue);
}

.organizer-chart-row strong {
    color: var(--vdm-navy);
    text-align: right;
}

.organizer-comparison,
.organizer-finance-caption {
    margin: var(--vdm-space-2) 0 0;
}

@media (max-width: 1000px) {
    .organizer-workspace {
        width: calc(100% - 15rem);
        margin-left: 14rem;
        margin-right: 1rem;
    }

    .organizer-sidebar {
        left: 0;
        width: 12rem;
        padding: var(--vdm-space-3);
    }

    .organizer-sidebar nav a {
        padding-inline: var(--vdm-space-2);
        font-size: var(--vdm-font-size-xs);
    }

    .organizer-chart-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-filter-form {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    body:has(.organizer-workspace) {
        padding-bottom: calc(5.5rem + env(safe-area-inset-bottom));
    }

    body:has(.organizer-workspace) .organizer-sidebar {
        top: auto;
        right: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        max-height: 5.5rem;
        padding: var(--vdm-space-2) var(--vdm-space-2) calc(var(--vdm-space-2) + env(safe-area-inset-bottom));
        border-radius: var(--vdm-radius-md) var(--vdm-radius-md) 0 0;
        overflow: hidden;
    }

    .organizer-sidebar-heading,
    .organizer-sidebar-event,
    .organizer-sidebar-footer {
        display: none;
    }

    .organizer-sidebar nav {
        display: flex;
        width: 100%;
        min-width: 0;
        flex-wrap: nowrap;
        gap: var(--vdm-space-1);
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scrollbar-width: thin;
    }

    .organizer-sidebar nav > a {
        flex: 0 0 auto;
        justify-content: center;
        min-height: 2.75rem;
        padding-inline: var(--vdm-space-3);
        font-size: var(--vdm-font-size-xs);
        white-space: nowrap;
    }

    .organizer-workspace {
        width: calc(100% - 1rem);
        margin: var(--vdm-space-4) auto;
    }

    .organizer-filter-form {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-filter-note {
        grid-column: auto;
    }

    .organizer-metric-grid,
    .organizer-financial-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .organizer-chart-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 380px) {
    .organizer-chart-row {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .organizer-chart-row progress {
        grid-column: 1 / -1;
        grid-row: 2;
    }
}

.organizer-dashboard-workspace {
    width: min(calc(100% - 16rem), 90rem);
    margin-left: 14rem;
    margin-right: 1rem;
    margin-top: 1.25rem;
}

body:has(.organizer-workspace) .nav-shell {
    width: calc(100% - 2rem);
    max-width: none;
    justify-content: space-between;
}

body:has(.organizer-dashboard-workspace) .main-nav {
    display: none;
}

body:has(.organizer-dashboard-workspace) .nav-shell > .brand-logo {
    display: none;
}

body:has(.organizer-dashboard-workspace) .organizer-sidebar-brand {
    display: none;
}

body:has(.organizer-dashboard-workspace) .organizer-sidebar {
    top: 4.5rem;
    left: 0;
    width: 12.5rem;
    border-radius: 0 var(--vdm-radius-lg) var(--vdm-radius-lg) 0;
}

body:has(.organizer-dashboard-workspace) .organizer-sidebar-label {
    font-size: 0.62rem;
    letter-spacing: 0.04em;
    white-space: nowrap;
}

.organizer-dashboard-content {
    gap: var(--vdm-space-4);
}

.organizer-dashboard-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--vdm-space-4);
    min-width: 0;
}

.organizer-dashboard-heading h1 {
    margin: 0;
    color: var(--vdm-navy);
    font-size: clamp(1.65rem, 3vw, 2.45rem);
    letter-spacing: -0.045em;
    line-height: 1.15;
    overflow-wrap: anywhere;
}

.organizer-dashboard-heading p {
    margin: var(--vdm-space-1) 0 0;
    color: var(--vdm-text);
    font-size: var(--vdm-font-size-md);
}

.organizer-create-event {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: var(--vdm-space-2);
}

.organizer-create-event > span {
    font-size: 1.3em;
    line-height: 0.8;
}

.organizer-dashboard-filters {
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: var(--vdm-space-2);
}

.organizer-quick-filter,
.organizer-custom-range-form {
    display: flex;
    align-items: end;
    flex-wrap: wrap;
    gap: var(--vdm-space-2);
}

.organizer-quick-filter .form-field,
.organizer-custom-range-form .form-field {
    min-width: 9rem;
    margin: 0;
}

.organizer-quick-filter select,
.organizer-custom-range-form input {
    min-height: 2.65rem;
    padding-block: 0.5rem;
    background-color: var(--vdm-white);
}

.organizer-custom-range {
    position: relative;
}

.organizer-custom-range > summary {
    display: flex;
    min-height: 2.65rem;
    align-items: center;
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-md);
    background: var(--vdm-white);
    color: var(--vdm-navy);
    cursor: pointer;
    font-size: var(--vdm-font-size-sm);
    font-weight: var(--vdm-font-weight-semibold);
}

.organizer-custom-range[open] {
    z-index: 4;
}

.organizer-custom-range-form {
    position: absolute;
    top: calc(100% + 0.35rem);
    right: 0;
    min-width: min(28rem, calc(100vw - 2rem));
    padding: var(--vdm-space-4);
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-md);
    background: var(--vdm-white);
    box-shadow: var(--vdm-shadow-raised);
}

.organizer-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--vdm-space-3);
}

.organizer-kpi {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
    gap: var(--vdm-space-3);
    min-width: 0;
    padding: var(--vdm-space-4);
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-md);
    background: var(--vdm-white);
    box-shadow: var(--vdm-shadow-card);
}

.organizer-kpi-icon {
    display: grid;
    width: 2.65rem;
    height: 2.65rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: var(--vdm-radius-sm);
    background: #EAF3FF;
    color: var(--vdm-blue);
}

.organizer-kpi-icon svg {
    width: 1.55rem;
    height: 1.55rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.organizer-kpi-gold .organizer-kpi-icon {
    background: var(--vdm-warning-soft);
    color: var(--vdm-warning);
}

.organizer-kpi-green .organizer-kpi-icon {
    background: var(--vdm-success-soft);
    color: var(--vdm-success);
}

.organizer-kpi h2 {
    margin: 0 0 0.2rem;
    color: var(--vdm-navy);
    font-size: var(--vdm-font-size-sm);
    font-weight: var(--vdm-font-weight-semibold);
}

.organizer-kpi > div > strong {
    display: block;
    color: var(--vdm-navy);
    font-size: clamp(1.2rem, 2vw, 1.65rem);
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.organizer-kpi-trend {
    display: block;
    margin-top: var(--vdm-space-1);
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-xs);
    font-weight: var(--vdm-font-weight-semibold);
}

.organizer-kpi-trend small {
    display: block;
    color: var(--vdm-muted);
    font-size: 0.68rem;
    font-weight: var(--vdm-font-weight-regular);
}

.organizer-kpi-trend.is-positive {
    color: var(--vdm-success);
}

.organizer-kpi-trend.is-negative {
    color: var(--vdm-red-ink);
}

.organizer-period-caption {
    margin: -0.35rem 0 0;
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-xs);
    line-height: var(--vdm-line-height-normal);
}

.organizer-primary-charts {
    display: grid;
    grid-template-columns: minmax(0, 1.8fr) minmax(0, 1fr) minmax(10.5rem, 0.78fr);
    gap: var(--vdm-space-3);
    min-width: 0;
}

.organizer-panel {
    min-width: 0;
    margin: 0;
    overflow: hidden;
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-md);
    background: var(--vdm-white);
    box-shadow: var(--vdm-shadow-card);
}

.organizer-panel-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--vdm-space-2);
    min-width: 0;
    padding: var(--vdm-space-3) var(--vdm-space-4);
    border-bottom: 1px solid var(--vdm-border);
    background: var(--vdm-navy);
    color: var(--vdm-white);
}

.organizer-panel-heading h2 {
    margin: 0;
    color: inherit;
    font-size: var(--vdm-font-size-sm);
}

.organizer-panel-heading p {
    margin: 0.2rem 0 0;
    color: #E1E8FA;
    font-size: 0.68rem;
    line-height: var(--vdm-line-height-normal);
}

.organizer-panel-heading a {
    flex: 0 0 auto;
    color: var(--vdm-blue);
    font-size: var(--vdm-font-size-xs);
    font-weight: var(--vdm-font-weight-bold);
    text-decoration: none;
}

.organizer-panel-heading a:hover,
.organizer-panel-heading a:focus-visible {
    text-decoration: underline;
}

.organizer-line-chart {
    padding: var(--vdm-space-3) var(--vdm-space-3) var(--vdm-space-2);
}

.organizer-line-chart svg {
    display: block;
    width: 100%;
    height: auto;
    overflow: visible;
}

.organizer-chart-gridlines line {
    stroke: var(--vdm-border);
    stroke-dasharray: 3 5;
    stroke-width: 1;
}

.organizer-chart-area {
    fill: rgba(0, 123, 255, 0.12);
}

.organizer-chart-line {
    fill: none;
    stroke: var(--vdm-blue);
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 3;
    vector-effect: non-scaling-stroke;
}

.organizer-chart-point {
    fill: var(--vdm-white);
    stroke: var(--vdm-blue);
    stroke-width: 2.5;
    vector-effect: non-scaling-stroke;
}

.organizer-chart-axis-labels {
    display: flex;
    justify-content: space-between;
    gap: var(--vdm-space-2);
    color: var(--vdm-muted);
    font-size: 0.65rem;
}

.organizer-chart-empty {
    display: grid;
    min-height: 8rem;
    align-content: center;
    justify-items: center;
    gap: var(--vdm-space-2);
    padding: var(--vdm-space-4);
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-xs);
    text-align: center;
}

.organizer-chart-empty strong {
    color: var(--vdm-navy);
    font-size: var(--vdm-font-size-sm);
}

.organizer-donut-layout {
    display: grid;
    grid-template-columns: minmax(6.75rem, 0.85fr) minmax(0, 1fr);
    align-items: center;
    gap: var(--vdm-space-2);
    padding: var(--vdm-space-3);
}

.organizer-donut {
    display: block;
    width: 100%;
    max-width: 12rem;
    margin-inline: auto;
}

.organizer-donut-track,
.organizer-donut-segment {
    fill: none;
    stroke-width: 13;
}

.organizer-donut-track {
    stroke: var(--vdm-background);
}

.organizer-donut-segment {
    stroke-linecap: butt;
}

.organizer-donut-total {
    fill: var(--vdm-navy);
    font-family: var(--vdm-font-family);
    font-size: 15px;
    font-weight: 800;
    text-anchor: middle;
}

.organizer-donut-caption {
    fill: var(--vdm-muted);
    font-family: var(--vdm-font-family);
    font-size: 6px;
    text-anchor: middle;
}

.organizer-donut-legend {
    display: grid;
    gap: var(--vdm-space-2);
    margin: 0;
    padding: 0;
    list-style: none;
}

.organizer-donut-legend li {
    display: grid;
    grid-template-columns: 0.5rem minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.2rem var(--vdm-space-2);
    min-width: 0;
    color: var(--vdm-text);
    font-size: var(--vdm-font-size-xs);
}

.organizer-donut-key {
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 50%;
    background: var(--segment-color);
}

.organizer-donut-name {
    min-width: 0;
    overflow-wrap: anywhere;
}

.organizer-donut-legend strong {
    color: var(--vdm-navy);
}

.organizer-donut-legend small {
    grid-column: 2 / -1;
    color: var(--vdm-muted);
}

.organizer-conversion-panel {
    display: flex;
    flex-direction: column;
}

.organizer-conversion-ring {
    display: grid;
    width: min(9rem, 75%);
    aspect-ratio: 1;
    place-items: center;
    margin: auto;
    border-radius: 50%;
    background: conic-gradient(var(--vdm-success) var(--conversion-rate), var(--vdm-background) 0);
}

.organizer-conversion-ring > div {
    display: grid;
    width: 76%;
    aspect-ratio: 1;
    place-content: center;
    border-radius: 50%;
    background: var(--vdm-white);
    text-align: center;
}

.organizer-conversion-ring strong {
    color: var(--vdm-navy);
    font-size: clamp(1.35rem, 2vw, 1.8rem);
}

.organizer-conversion-ring span,
.organizer-conversion-summary {
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-xs);
}

.organizer-conversion-summary {
    margin: 0 0 var(--vdm-space-3);
    text-align: center;
}

.organizer-dashboard-lower-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(17rem, 0.95fr);
    gap: var(--vdm-space-3);
    align-items: start;
}

.organizer-dashboard-side-panels {
    display: grid;
    gap: var(--vdm-space-3);
    min-width: 0;
}

.organizer-event-table-wrap {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
}

.organizer-event-table {
    width: 100%;
    min-width: 43rem;
    border-collapse: collapse;
}

.organizer-event-table th,
.organizer-event-table td {
    padding: 0.55rem 0.5rem;
    border-bottom: 1px solid var(--vdm-border);
    color: var(--vdm-text);
    font-size: 0.67rem;
    text-align: left;
    vertical-align: middle;
}

.organizer-event-table th {
    background: var(--vdm-background);
    color: var(--vdm-navy);
    font-weight: var(--vdm-font-weight-bold);
    white-space: nowrap;
}

.organizer-event-table tbody tr:last-child td {
    border-bottom: 0;
}

.organizer-event-table td small {
    display: block;
    margin-top: 0.15rem;
    color: var(--vdm-muted);
    font-size: 0.62rem;
}

.organizer-event-title {
    display: flex;
    align-items: center;
    gap: var(--vdm-space-2);
    min-width: 9rem;
}

.organizer-event-title img,
.organizer-event-thumbnail-fallback {
    display: grid;
    width: 2.25rem;
    height: 2.25rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: var(--vdm-radius-sm);
    object-fit: cover;
}

.organizer-event-thumbnail-fallback {
    background: var(--vdm-navy);
    color: var(--vdm-gold);
    font-size: 0.5rem;
    font-weight: var(--vdm-font-weight-bold);
}

.organizer-event-title > span:last-child {
    min-width: 0;
}

.organizer-event-title strong,
.organizer-event-table td > strong {
    display: block;
    color: var(--vdm-navy);
    overflow-wrap: anywhere;
}

.organizer-row-actions {
    display: flex;
    min-width: 0;
    flex-wrap: wrap;
    gap: 0.2rem;
}

.organizer-row-actions a {
    display: inline-flex;
    min-height: 1.75rem;
    align-items: center;
    padding: 0.2rem 0.4rem;
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-sm);
    color: var(--vdm-blue-interaction);
    font-weight: var(--vdm-font-weight-semibold);
    text-decoration: none;
}

.organizer-row-actions a:hover,
.organizer-row-actions a:focus-visible {
    background: var(--vdm-blue-interaction);
    color: var(--vdm-white);
}

.organizer-financial-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--vdm-space-2);
    padding: var(--vdm-space-3);
}

.organizer-financial-cards article {
    display: grid;
    min-width: 0;
    align-content: start;
    gap: var(--vdm-space-2);
    padding: var(--vdm-space-2);
    border-radius: var(--vdm-radius-sm);
    background: var(--vdm-background);
}

.organizer-financial-cards article > span {
    color: var(--vdm-muted);
    font-size: 0.62rem;
}

.organizer-financial-cards article > strong {
    color: var(--vdm-navy);
    font-size: var(--vdm-font-size-xs);
    overflow-wrap: anywhere;
}

.organizer-financial-cards .organizer-financial-unavailable {
    color: var(--vdm-warning);
}

.organizer-finance-caption {
    padding: 0 var(--vdm-space-3) var(--vdm-space-3);
    color: var(--vdm-muted);
    font-size: 0.65rem;
}

.organizer-activity-list {
    display: grid;
    margin: 0;
    padding: 0 var(--vdm-space-3);
    list-style: none;
}

.organizer-activity-list li {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: var(--vdm-space-2);
    min-width: 0;
    padding: var(--vdm-space-2) 0;
    border-bottom: 1px solid var(--vdm-border);
}

.organizer-activity-list li:last-child {
    border-bottom: 0;
}

.organizer-activity-icon {
    display: grid;
    width: 1.4rem;
    height: 1.4rem;
    place-items: center;
    border-radius: 50%;
    background: var(--vdm-success-soft);
    color: var(--vdm-success);
    font-size: var(--vdm-font-size-xs);
    font-weight: var(--vdm-font-weight-bold);
}

.organizer-activity-reservation {
    background: #EAF3FF;
    color: var(--vdm-blue-interaction);
}

.organizer-activity-refund {
    background: var(--vdm-red-soft);
    color: var(--vdm-red-ink);
}

.organizer-activity-event {
    background: var(--vdm-warning-soft);
    color: var(--vdm-warning);
}

.organizer-activity-copy {
    display: grid;
    min-width: 0;
    gap: 0.1rem;
}

.organizer-activity-copy strong {
    color: var(--vdm-text);
    font-size: var(--vdm-font-size-xs);
}

.organizer-activity-copy small {
    color: var(--vdm-muted);
    font-size: 0.65rem;
    overflow-wrap: anywhere;
}

.organizer-activity-list time {
    color: var(--vdm-muted);
    font-size: 0.6rem;
    white-space: nowrap;
}

.organizer-summary-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: var(--vdm-space-2);
}

.organizer-summary-grid .dashboard-card {
    min-width: 0;
    min-height: 4.5rem;
    padding: var(--vdm-space-3);
    border-radius: var(--vdm-radius-md);
}

.organizer-summary-grid .dashboard-card h3 {
    margin: 0 0 var(--vdm-space-1);
    font-size: 0.65rem;
}

.organizer-summary-grid .dashboard-card > strong {
    font-size: var(--vdm-font-size-md);
    overflow-wrap: anywhere;
}

.organizer-summary-purple {
    border-color: #DED3FF !important;
    background: #F7F4FF !important;
}

.organizer-summary-green {
    border-color: #BDE8CA !important;
    background: var(--vdm-success-soft) !important;
}

.organizer-summary-gold {
    border-color: #F1D99B !important;
    background: var(--vdm-warning-soft) !important;
}

.organizer-summary-blue {
    border-color: #C8DEFF !important;
    background: #F1F7FF !important;
}

.organizer-summary-red {
    border-color: #F4C9C6 !important;
    background: var(--vdm-red-soft) !important;
}

.organizer-supporting-charts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--vdm-space-3);
}

.organizer-dashboard-content .organizer-chart {
    min-width: 0;
    margin: 0;
    padding: var(--vdm-space-3);
}

.organizer-dashboard-content .organizer-chart figcaption h2 {
    color: var(--vdm-navy);
    font-size: var(--vdm-font-size-sm);
}

.organizer-dashboard-content .organizer-chart figcaption p {
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-xs);
}

.organizer-more-metrics {
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-md);
    background: var(--vdm-white);
    box-shadow: var(--vdm-shadow-card);
}

.organizer-more-metrics > summary {
    padding: var(--vdm-space-3) var(--vdm-space-4);
    color: var(--vdm-navy);
    cursor: pointer;
    font-size: var(--vdm-font-size-sm);
    font-weight: var(--vdm-font-weight-semibold);
}

.organizer-more-metrics[open] > summary {
    border-bottom: 1px solid var(--vdm-border);
}

.organizer-more-metric-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--vdm-space-3);
    padding: var(--vdm-space-3);
}

.organizer-more-metric-grid .dashboard-card {
    min-width: 0;
}

.organizer-sidebar nav > a {
    gap: var(--vdm-space-3);
}

.organizer-sidebar nav > a svg {
    width: 1.2rem;
    height: 1.2rem;
    flex: 0 0 auto;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.organizer-sidebar nav > a.is-active {
    background: var(--vdm-blue);
    color: var(--vdm-white);
}

.organizer-sidebar {
    background: linear-gradient(160deg, #0B1F6B, #06164F);
}

.organizer-sidebar-label {
    color: var(--vdm-gold);
}

.organizer-sidebar-footer {
    margin-top: auto;
}

.organizer-dashboard-workspace .organizer-event-panel > .organizer-chart-empty {
    min-height: 11rem;
}

@media (max-width: 1200px) {
    .organizer-primary-charts {
        grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr);
    }

    .organizer-conversion-panel {
        grid-column: 1 / -1;
    }

    .organizer-conversion-ring {
        width: 7rem;
    }

    .organizer-dashboard-lower-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-summary-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .organizer-more-metric-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 1000px) {
    .organizer-dashboard-workspace {
        width: calc(100% - 14rem);
        margin-left: 13rem;
        margin-right: 1rem;
    }

    body:has(.organizer-dashboard-workspace) .organizer-sidebar {
        left: 0;
        width: 11.5rem;
    }

    .organizer-primary-charts {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-conversion-panel {
        grid-column: auto;
    }

    .organizer-conversion-ring {
        width: 9rem;
    }
}

@media (max-width: 760px) {
    .organizer-dashboard-workspace {
        width: calc(100% - 1rem);
        margin: var(--vdm-space-4) auto;
    }

    body:has(.organizer-dashboard-workspace) .organizer-sidebar {
        left: 0;
        width: 100%;
    }

    body:has(.organizer-dashboard-workspace) .organizer-sidebar-heading {
        display: none;
    }

    .organizer-dashboard-heading {
        align-items: flex-start;
    }

    .organizer-dashboard-heading p {
        font-size: var(--vdm-font-size-sm);
    }

    .organizer-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .organizer-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .organizer-more-metric-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-dashboard-lower-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-supporting-charts {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (min-width: 761px) and (max-width: 820px) {
    body:has(.organizer-dashboard-workspace) {
        padding-bottom: calc(5.5rem + env(safe-area-inset-bottom));
    }

    body:has(.organizer-dashboard-workspace) .organizer-sidebar {
        top: auto;
        right: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        max-height: 5.5rem;
        padding: var(--vdm-space-2);
        border-radius: var(--vdm-radius-md) var(--vdm-radius-md) 0 0;
        overflow: hidden;
    }

    body:has(.organizer-dashboard-workspace) .organizer-sidebar-heading,
    body:has(.organizer-dashboard-workspace) .organizer-sidebar-footer {
        display: none;
    }

    body:has(.organizer-dashboard-workspace) .organizer-sidebar nav {
        display: flex;
        width: 100%;
        min-width: 0;
        flex-wrap: nowrap;
        gap: var(--vdm-space-1);
        overflow-x: auto;
        overscroll-behavior-inline: contain;
    }

    body:has(.organizer-dashboard-workspace) .organizer-sidebar nav > a {
        flex: 0 0 auto;
        justify-content: center;
        min-height: 2.75rem;
        padding-inline: var(--vdm-space-3);
        font-size: var(--vdm-font-size-xs);
        white-space: nowrap;
    }

    .organizer-dashboard-workspace {
        width: calc(100% - 1rem);
        margin: var(--vdm-space-4) auto;
    }
}

@media (max-width: 520px) {
    .organizer-dashboard-heading {
        flex-direction: column;
        align-items: stretch;
    }

    .organizer-dashboard-heading h1 {
        font-size: clamp(1.4rem, 7vw, 1.9rem);
    }

    .organizer-create-event {
        justify-content: center;
        width: 100%;
    }

    .organizer-dashboard-filters {
        justify-content: stretch;
    }

    .organizer-quick-filter {
        display: grid;
        width: 100%;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
    }

    .organizer-quick-filter .form-field {
        min-width: 0;
    }

    .organizer-quick-filter select {
        width: 100%;
        min-width: 0;
    }

    .organizer-custom-range {
        width: 100%;
    }

    .organizer-custom-range > summary {
        justify-content: center;
    }

    .organizer-custom-range-form {
        position: static;
        display: grid;
        min-width: 0;
        margin-top: var(--vdm-space-2);
        box-shadow: var(--vdm-shadow-card);
    }

    .organizer-custom-range-form .form-field {
        min-width: 0;
    }

    .organizer-custom-range-form input {
        width: 100%;
        min-width: 0;
    }

    .organizer-kpi-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-kpi {
        padding: var(--vdm-space-3);
    }

    .organizer-donut-layout {
        grid-template-columns: minmax(5.5rem, 0.75fr) minmax(0, 1fr);
    }

    .organizer-financial-cards {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-event-table {
        min-width: 0;
    }

    .organizer-event-table thead {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
    }

    .organizer-event-table,
    .organizer-event-table tbody,
    .organizer-event-table tr,
    .organizer-event-table td {
        display: block;
        width: 100%;
    }

    .organizer-event-table tbody {
        padding: var(--vdm-space-2);
    }

    .organizer-event-table tr {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0 var(--vdm-space-3);
        margin-bottom: var(--vdm-space-2);
        padding: var(--vdm-space-2);
        border: 1px solid var(--vdm-border);
        border-radius: var(--vdm-radius-sm);
    }

    .organizer-event-table td {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 0.2rem;
        min-width: 0;
        padding: var(--vdm-space-2) 0;
        border: 0;
        font-size: var(--vdm-font-size-xs);
    }

    .organizer-event-table td::before {
        content: attr(data-label);
        color: var(--vdm-muted);
        font-size: 0.62rem;
        font-weight: var(--vdm-font-weight-semibold);
    }

    .organizer-event-table td:first-child,
    .organizer-event-table td:last-child {
        grid-column: 1 / -1;
    }

    .organizer-event-title {
        min-width: 0;
    }

    .organizer-event-title img,
    .organizer-event-thumbnail-fallback {
        width: 2.5rem;
        height: 2.5rem;
    }

    .organizer-row-actions {
        min-width: 0;
    }

    .organizer-activity-list li {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .organizer-activity-list time {
        grid-column: 2;
    }
}

body:has(.organizer-workspace) .site-header {
    background: var(--vdm-white);
    border-bottom-color: var(--vdm-border);
    box-shadow: 0 2px 12px rgba(11, 31, 107, 0.06);
}

body:has(.organizer-workflow-header) .site-header {
    background: var(--vdm-white);
    border-bottom-color: var(--vdm-border);
    box-shadow: 0 2px 12px rgba(11, 31, 107, 0.06);
}

body:has(.organizer-workflow-header) .nav-shell {
    width: calc(100% - 2rem);
    max-width: none;
    justify-content: space-between;
}

body:has(.organizer-workflow-header) .nav-shell > .brand-logo img {
    width: 11rem;
    height: 3.5rem;
}

body:has(.organizer-workspace) .nav-shell {
    width: calc(100% - 2rem);
    min-height: 3.75rem;
}

body:has(.organizer-workspace) .nav-shell > .brand-logo {
    border-radius: 0;
}

body:has(.organizer-workspace) .nav-shell > .brand-logo img {
    width: 11rem;
    height: 3.5rem;
}

body:has(.organizer-workspace) .mobile-nav {
    display: none;
}

.dashboard-clock {
    display: grid;
    flex: 0 0 auto;
    gap: 0.05rem;
    justify-items: center;
    padding: 0.3rem 0.7rem;
    border: 1px solid #E5EAF4;
    border-radius: var(--vdm-radius-md);
    background: #F5F7FC;
    color: var(--vdm-navy);
    line-height: 1.2;
}

.dashboard-clock > span {
    color: var(--vdm-muted);
    font-size: 0.58rem;
    font-weight: var(--vdm-font-weight-bold);
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.dashboard-clock > time {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    font-size: 0.9rem;
    font-variant-numeric: tabular-nums;
    font-weight: var(--vdm-font-weight-bold);
    letter-spacing: 0.06em;
}

@media (min-width: 761px) {
    .site-header:not(:has(.dashboard-clock)) .nav-shell:has(> .nav-actions .organizer-topbar-account) > .site-notifications {
        margin-left: auto;
    }

    .site-header:not(:has(.dashboard-clock)) .nav-shell:has(> .nav-actions .organizer-topbar-account) > .nav-actions {
        margin-left: 0.75rem;
    }

    .site-header:not(:has(.dashboard-clock)) .nav-shell:has(> .nav-actions .customer-header-account) > .site-notifications {
        margin-left: auto;
        margin-right: -0.5rem;
    }

    .site-header:not(:has(.dashboard-clock)) .nav-shell:has(> .nav-actions .customer-header-account) > .nav-actions {
        margin-left: 0;
    }

    .site-header:has(.dashboard-clock) .nav-shell {
        position: relative;
    }

    .site-header:has(.dashboard-clock) .main-nav {
        display: none;
    }

    .site-header:has(.dashboard-clock) .site-notifications {
        margin-left: auto;
    }

    .site-header:has(.dashboard-clock) .dashboard-clock {
        position: absolute;
        top: 50%;
        left: 50%;
        z-index: 1;
        margin: 0;
        transform: translate(-50%, -50%);
    }
}

@media (min-width: 761px) and (max-width: 900px) {
    .site-header:has(.dashboard-clock) .nav-shell {
        justify-content: flex-start;
        gap: 0.5rem;
    }

    .site-header:has(.dashboard-clock) .brand-logo {
        order: 2;
        margin-right: auto;
    }

    .site-header:has(.dashboard-clock) .organizer-mobile-menu {
        order: 1;
    }

    .site-header:has(.dashboard-clock) .site-notifications {
        order: 4;
    }

    .site-header:has(.dashboard-clock) .organizer-topbar-account {
        order: 5;
        margin-left: 0;
    }

    .site-header:has(.dashboard-clock) .nav-actions {
        display: none;
    }
}

.organizer-topbar-account {
    position: relative;
    margin-left: auto;
}

.organizer-workspace-mobile-account {
    display: none;
}

.site-notifications {
    position: relative;
    flex: 0 0 auto;
}

.site-notification-link {
    position: relative;
    display: grid;
    width: 2.75rem;
    height: 2.75rem;
    flex: 0 0 auto;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.08);
    color: var(--vdm-white);
    cursor: pointer;
    list-style: none;
    text-decoration: none;
    transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

.site-notification-count {
    position: absolute;
    top: -0.15rem;
    right: -0.15rem;
    display: grid;
    min-width: 1.05rem;
    height: 1.05rem;
    place-items: center;
    padding: 0 0.18rem;
    border: 2px solid #fff;
    border-radius: 999px;
    background: #ed252c;
    color: #fff;
    font-size: 0.58rem;
    font-weight: 800;
    line-height: 1;
}

.site-notification-item > div > strong a,
.site-notification-open {
    color: inherit;
    text-decoration: none;
}

.site-notification-open {
    display: inline-flex;
    margin-top: 0.25rem;
    color: #0866f5;
    font-size: 0.66rem;
    font-weight: 700;
}

.site-notification-alert .site-notification-indicator {
    background: #0866f5;
}

.site-notification-severity-critical .site-notification-indicator {
    background: #ed252c;
}

.site-notification-severity-warning .site-notification-indicator {
    background: #f39900;
}

.site-notification-link::-webkit-details-marker {
    display: none;
}

.site-notification-link svg {
    width: 1.3rem;
    height: 1.3rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.site-notifications[open] > .site-notification-link,
.site-notification-link:hover,
.site-notification-link:focus-visible {
    border-color: var(--vdm-gold);
    background: rgba(255, 255, 255, 0.16);
    color: var(--vdm-gold);
}

.site-notification-link:focus-visible {
    outline: 3px solid var(--vdm-gold);
    outline-offset: 2px;
}

.site-notification-panel {
    position: fixed;
    z-index: 60;
    top: var(--site-notification-top, 5rem);
    right: 0;
    display: grid;
    width: min(26rem, calc(100vw - 2rem));
    max-height: calc(100dvh - var(--site-notification-top, 5rem));
    grid-template-rows: auto minmax(0, 1fr);
    overflow: hidden;
    border: 0;
    border-radius: 0 0 0 var(--vdm-radius-lg);
    background: var(--vdm-white);
    box-shadow: none;
    color: var(--vdm-navy);
}

.site-notification-panel-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.1rem;
    background: linear-gradient(115deg, var(--vdm-navy), #173B91);
    color: var(--vdm-white);
}

.site-notification-panel-heading span {
    color: var(--vdm-gold);
    font-size: 0.62rem;
    font-weight: var(--vdm-font-weight-bold);
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.site-notification-panel-heading h2 {
    margin: 0.15rem 0 0;
    color: inherit;
    font-size: var(--vdm-font-size-md);
}

.site-notification-panel-heading a {
    flex: 0 0 auto;
    color: var(--vdm-white);
    font-size: var(--vdm-font-size-xs);
    font-weight: var(--vdm-font-weight-semibold);
    text-decoration: underline;
    text-underline-offset: 0.2em;
}

.site-notification-panel-actions {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 0.7rem;
}

.site-notification-panel-actions form {
    display: block;
    margin: 0;
}

.site-notification-panel-actions button {
    padding: 0;
    border: 0;
    background: transparent;
    color: #fff;
    font: inherit;
    font-size: 0.72rem;
    font-weight: 700;
    cursor: pointer;
}

.site-notification-status {
    margin: 0;
    padding: 0.45rem 1rem;
    background: #edf5ff;
    color: var(--vdm-navy);
    font-size: 0.72rem;
}

.site-notification-list {
    display: grid;
    gap: 0;
    margin: 0;
    padding: 0.2rem 1rem;
    overflow-y: auto;
    overscroll-behavior: contain;
    list-style: none;
    scrollbar-width: none;
}

.site-notification-list::-webkit-scrollbar {
    display: none;
}

.site-notification-item {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 0.75rem;
    align-items: start;
    padding: 0.85rem 0.1rem;
    border-bottom: 1px solid var(--vdm-border);
}

.site-notification-item:last-child {
    border-bottom: 0;
}

.site-notification-indicator {
    width: 0.6rem;
    height: 0.6rem;
    margin-top: 0.4rem;
    border-radius: 50%;
    background: var(--vdm-blue);
    box-shadow: 0 0 0 4px #EAF3FF;
}

.site-notification-reservation .site-notification-indicator {
    background: #D99B00;
    box-shadow: 0 0 0 4px #FFF6D8;
}

.site-notification-event .site-notification-indicator {
    background: var(--vdm-navy);
    box-shadow: 0 0 0 4px #EAF3FF;
}

.site-notification-refund .site-notification-indicator {
    background: var(--vdm-red);
    box-shadow: 0 0 0 4px #FFF0F0;
}

.site-notification-item strong {
    display: block;
    color: var(--vdm-navy);
    font-size: var(--vdm-font-size-xs);
}

.site-notification-item p {
    margin: 0.2rem 0;
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-xs);
    overflow-wrap: anywhere;
}

.site-notification-item time {
    color: var(--vdm-muted);
    font-size: 0.68rem;
}

.site-notification-item > form {
    display: block;
    margin: 0;
}

.site-notification-dismiss {
    display: grid;
    width: 1.75rem;
    height: 1.75rem;
    place-items: center;
    border: 1px solid #e0e6f0;
    border-radius: 7px;
    background: #fff;
    color: #64728a;
    font-size: 1.25rem;
    line-height: 1;
    cursor: pointer;
}

.site-notification-dismiss:hover,
.site-notification-dismiss:focus-visible {
    border-color: #f0b5b5;
    background: #fff3f3;
    color: #b4232a;
}

.site-notification-empty {
    margin: 0;
    padding: 1.35rem 1.1rem;
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-sm);
}

.site-notification-sign-in {
    margin: 0 1.1rem 1rem;
    color: var(--vdm-blue-interaction);
    font-size: var(--vdm-font-size-sm);
    font-weight: var(--vdm-font-weight-semibold);
}

body:has(.organizer-workspace) .site-notification-link,
body:has(.organizer-workflow-header) .site-notification-link {
    border-color: #E5EAF4;
    background: #F5F7FC;
    color: var(--vdm-navy);
}

body:has(.organizer-workspace) .site-notification-link:hover,
body:has(.organizer-workspace) .site-notifications[open] > .site-notification-link,
body:has(.organizer-workspace) .site-notification-link:focus-visible,
body:has(.organizer-workflow-header) .site-notification-link:hover,
body:has(.organizer-workflow-header) .site-notifications[open] > .site-notification-link,
body:has(.organizer-workflow-header) .site-notification-link:focus-visible {
    border-color: var(--vdm-navy);
    background: var(--vdm-navy);
    color: var(--vdm-white);
}

.organizer-topbar-account > summary {
    display: flex;
    min-height: 2.75rem;
    align-items: center;
    gap: 0.65rem;
    padding: 0.2rem 0.4rem;
    border-radius: var(--vdm-radius-md);
    color: var(--vdm-navy);
    cursor: pointer;
    list-style: none;
}

.organizer-topbar-account > summary::-webkit-details-marker {
    display: none;
}

.organizer-account-avatar {
    display: grid;
    width: 2.25rem;
    height: 2.25rem;
    flex: 0 0 auto;
    place-items: center;
    border: 2px solid #E8EEF9;
    border-radius: 50%;
    background: #EAF3FF;
    color: var(--vdm-navy);
    font-size: var(--vdm-font-size-xs);
    font-weight: var(--vdm-font-weight-bold);
}

.organizer-account-identity {
    display: grid;
    min-width: 0;
    line-height: 1.35;
}

.organizer-account-identity strong {
    max-width: 13rem;
    overflow: hidden;
    color: var(--vdm-text);
    font-size: var(--vdm-font-size-xs);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.organizer-account-identity small {
    color: var(--vdm-muted);
    font-size: 0.68rem;
}

.organizer-account-chevron {
    color: var(--vdm-muted);
}

.organizer-account-menu {
    position: absolute;
    z-index: 30;
    top: calc(100% + 0.35rem);
    right: 0;
    display: grid;
    min-width: 12rem;
    padding: 0.4rem;
    border: 1px solid var(--vdm-border);
    border-radius: var(--vdm-radius-md);
    background: var(--vdm-white);
    box-shadow: var(--vdm-shadow-raised);
}

.organizer-account-menu a,
.organizer-account-menu button {
    display: block;
    width: 100%;
    padding: 0.65rem 0.75rem;
    border: 0;
    border-radius: var(--vdm-radius-sm);
    background: transparent;
    color: var(--vdm-text);
    font: inherit;
    font-size: var(--vdm-font-size-xs);
    text-align: left;
    text-decoration: none;
}

.organizer-account-menu a:hover,
.organizer-account-menu a:focus-visible,
.organizer-account-menu button:hover,
.organizer-account-menu button:focus-visible {
    background: var(--vdm-info-soft);
    color: var(--vdm-blue-interaction);
}

.organizer-dashboard-workspace {
    width: min(calc(100% - 15rem), 110rem);
    margin-top: 0.85rem;
}

.organizer-dashboard-content {
    gap: 0.75rem;
}

.organizer-dashboard-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    min-width: 0;
}

.organizer-dashboard-heading {
    flex: 1 1 auto;
}

.organizer-dashboard-heading h1 {
    font-size: clamp(1.45rem, 2.3vw, 1.75rem);
    letter-spacing: -0.035em;
}

.organizer-dashboard-heading p {
    margin-top: 0.15rem;
    font-size: var(--vdm-font-size-sm);
}

.organizer-dashboard-filters {
    align-items: center;
    flex: 0 1 auto;
    gap: 0.45rem;
}

.organizer-quick-filter {
    flex-wrap: nowrap;
    gap: 0.4rem;
}

.organizer-quick-filter .form-field {
    min-width: 0;
}

.organizer-quick-filter .form-field:first-child {
    width: 5.5rem;
}

.organizer-quick-filter .form-field:nth-child(2) {
    width: 7rem;
}

.organizer-quick-filter select,
.organizer-custom-range > summary {
    min-height: 2.35rem;
    padding-block: 0.35rem;
    font-size: 0.7rem;
}

.organizer-quick-filter .organizer-filter-submit {
    display: inline-flex;
    width: 2rem;
    min-width: 2rem;
    min-height: 2.35rem;
    justify-content: center;
    padding: 0;
}

.organizer-filter-submit svg {
    width: 1rem;
    height: 1rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.organizer-filter-submit > span {
    display: none;
}

.organizer-custom-range > summary {
    white-space: nowrap;
    padding-inline: 0.4rem;
    font-size: 0.62rem;
}

.organizer-create-event {
    min-height: 2.35rem;
    padding: 0.45rem 0.4rem;
    font-size: 0.75rem;
    white-space: nowrap;
}

.organizer-kpi-grid {
    gap: 0.55rem;
}

.organizer-kpi {
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.6rem;
    min-height: 6rem;
    padding: 0.75rem;
}

.organizer-kpi-icon {
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 0.7rem;
}

.organizer-kpi-icon svg {
    width: 1.4rem;
    height: 1.4rem;
}

.organizer-kpi h2 {
    margin-bottom: 0.05rem;
    font-size: 0.72rem;
}

.organizer-kpi > div > strong {
    font-size: clamp(1.15rem, 1.7vw, 1.45rem);
}

.organizer-kpi-trend {
    margin-top: 0.15rem;
    font-size: 0.68rem;
}

.organizer-kpi-trend small {
    font-size: 0.62rem;
}

.organizer-sparkline {
    display: block;
    width: 3.75rem;
    height: 2rem;
    align-self: end;
}

.organizer-sparkline-blue rect {
    fill: #8FC5FF;
}

.organizer-sparkline-gold rect {
    fill: #FFD46A;
}

.organizer-period-caption {
    margin-top: -0.35rem;
    font-size: 0.62rem;
}

.organizer-primary-charts {
    gap: 0.55rem;
}

.organizer-panel-heading {
    min-height: 2.2rem;
    align-items: center;
    padding: 0.45rem 0.7rem;
}

.organizer-panel-heading h2 {
    font-size: 0.72rem;
}

.organizer-panel-heading p {
    display: none;
}

.organizer-line-chart {
    padding: 0.35rem 0.55rem 0.45rem;
}

.organizer-line-chart svg {
    max-height: 9.5rem;
}

.organizer-donut-layout {
    grid-template-columns: minmax(5.5rem, 0.9fr) minmax(0, 1fr);
    gap: 0.35rem;
    padding: 0.4rem 0.55rem;
}

.organizer-donut {
    max-width: 9rem;
}

.organizer-donut-legend {
    gap: 0.35rem;
}

.organizer-donut-legend li {
    font-size: 0.65rem;
}

.organizer-conversion-ring {
    width: min(7rem, 68%);
}

.organizer-conversion-summary {
    margin-bottom: 0.5rem;
}

.organizer-dashboard-lower-grid {
    gap: 0.55rem;
}

.organizer-dashboard-side-panels {
    gap: 0.55rem;
}

.organizer-event-table th,
.organizer-event-table td {
    padding: 0.42rem 0.45rem;
    font-size: 0.62rem;
}

.organizer-dashboard-workspace .organizer-event-table {
    min-width: 36rem;
}

.organizer-financial-cards {
    padding: 0.5rem;
}

.organizer-financial-cards article {
    gap: 0.2rem;
    padding: 0.45rem;
}

.organizer-activity-list li {
    padding: 0.35rem 0;
}

.organizer-summary-grid {
    gap: 0.4rem;
}

.organizer-summary-grid .dashboard-card {
    display: grid;
    grid-template-columns: 2rem minmax(0, 1fr);
    grid-template-rows: auto auto;
    column-gap: 0.45rem;
    align-content: center;
    min-height: 3.8rem;
    padding: 0.5rem;
}

.organizer-summary-icon {
    display: grid;
    width: 2rem;
    height: 2rem;
    grid-row: 1 / span 2;
    place-items: center;
    border-radius: 50%;
    background: rgba(0, 123, 255, 0.1);
    color: var(--vdm-blue);
}

.organizer-summary-icon svg {
    width: 1.25rem;
    height: 1.25rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.organizer-summary-green .organizer-summary-icon {
    background: rgba(23, 107, 56, 0.1);
    color: var(--vdm-success);
}

.organizer-summary-gold .organizer-summary-icon {
    background: rgba(244, 180, 0, 0.16);
    color: var(--vdm-warning);
}

.organizer-summary-purple .organizer-summary-icon {
    background: #EEE8FF;
    color: #8056D9;
}

.organizer-summary-red .organizer-summary-icon {
    background: var(--vdm-red-soft);
    color: var(--vdm-red-ink);
}

.organizer-summary-grid .dashboard-card h3 {
    align-self: end;
    margin: 0;
    font-size: 0.62rem;
    line-height: 1.2;
}

.organizer-summary-grid .dashboard-card > strong {
    align-self: start;
    font-size: 0.95rem;
    line-height: 1.2;
}

.organizer-sidebar-footer {
    display: grid;
    gap: 0.75rem;
    padding-top: 0.85rem;
}

.organizer-sidebar-brand-lockup {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 0.1rem 0.45rem;
    padding: 0 0.35rem;
    color: var(--vdm-gold);
}

.organizer-sidebar-brand-lockup > span {
    grid-row: 1 / span 2;
    font-size: 1.4rem;
}

.organizer-sidebar-brand-lockup strong {
    font-size: 0.8rem;
}

.organizer-sidebar-brand-lockup small {
    color: var(--vdm-white);
    font-size: 0.58rem;
    line-height: 1.4;
}

.organizer-sidebar-footer > a {
    justify-content: space-between;
    padding-inline: 0.35rem;
    font-size: 0.68rem;
}

.organizer-dashboard-workspace .organizer-sidebar {
    gap: 0.75rem;
    padding: 0.9rem 0.65rem;
}

.organizer-dashboard-workspace .organizer-sidebar-label {
    font-size: 0.58rem;
}

.organizer-dashboard-workspace .organizer-sidebar nav {
    gap: 0.15rem;
}

.organizer-dashboard-workspace .organizer-sidebar nav > a {
    min-height: 2.35rem;
    padding: 0.45rem 0.55rem;
    font-size: 0.69rem;
}

.organizer-dashboard-workspace .organizer-sidebar nav > a svg {
    width: 1.1rem;
    height: 1.1rem;
}

@media (max-width: 1200px) {
    .organizer-dashboard-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }

    .organizer-dashboard-filters {
        width: 100%;
        justify-content: flex-end;
    }
}

@media (max-width: 760px) {
    .organizer-dashboard-workspace {
        width: calc(100% - 1rem);
        margin: 0.85rem auto;
    }

    body:has(.organizer-dashboard-workspace) .nav-shell {
        width: calc(100% - 1rem);
        min-height: 3.5rem;
    }

    body:has(.organizer-workspace) .nav-shell > .brand-logo img {
        width: 7.5rem;
        height: 3.25rem;
    }

    body:has(.organizer-workspace) .organizer-account-identity {
        display: none;
    }

    .organizer-dashboard-toolbar {
        gap: 0.55rem;
    }

    .organizer-dashboard-filters {
        justify-content: flex-start;
        flex-wrap: wrap;
    }

    .organizer-summary-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    body:has(.organizer-dashboard-workspace) .organizer-sidebar {
        padding: 0.45rem;
    }

    body:has(.organizer-dashboard-workspace) .organizer-sidebar nav > a {
        min-height: 2.6rem;
        padding: 0.35rem 0.55rem;
    }
}

@media (min-width: 761px) and (max-width: 820px) {
    .organizer-dashboard-workspace {
        width: calc(100% - 1rem);
        margin: 0.85rem auto;
    }
}

@media (max-width: 520px) {
    .organizer-dashboard-toolbar {
        align-items: stretch;
    }

    .organizer-dashboard-filters {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
    }

    .organizer-quick-filter {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 0.85fr);
    }

    .organizer-quick-filter .form-field:first-child,
    .organizer-quick-filter .form-field:nth-child(2) {
        width: auto;
    }

    .organizer-quick-filter .organizer-filter-submit {
        display: inline-flex;
        grid-column: 1 / -1;
        width: 100%;
        min-width: 0;
        min-height: 2.25rem;
        gap: 0.5rem;
        padding-inline: 0.75rem;
    }

    .organizer-filter-submit > span {
        display: inline;
    }

    .organizer-custom-range {
        width: auto;
    }

    .organizer-custom-range > summary {
        min-height: 2.25rem;
        padding-inline: 0.55rem;
    }

    .organizer-create-event {
        width: auto;
        min-height: 2.25rem;
        justify-content: center;
    }

    .organizer-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .organizer-kpi {
        grid-template-columns: auto minmax(0, 1fr);
        min-height: 5.2rem;
        padding: 0.6rem;
    }

    .organizer-kpi-icon {
        width: 2rem;
        height: 2rem;
    }

    .organizer-sparkline {
        display: none;
    }

    .organizer-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .organizer-period-caption {
        line-height: 1.4;
    }

    .organizer-dashboard-content {
        gap: 0.65rem;
    }
}

@media (max-width: 360px) {
    .organizer-kpi-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    body:has(.organizer-workspace) .dashboard-clock {
        display: none;
    }
}

.organizer-icon {
    display: block;
    width: 1.25rem;
    height: 1.25rem;
    flex: 0 0 auto;
}

.organizer-icon .icon-solid {
    fill: currentColor;
    stroke: none;
}

.organizer-icon .icon-outline {
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.organizer-icon .icon-cutout {
    fill: none;
    stroke: #FFFFFF;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.organizer-panel-title {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    min-width: 0;
}

.organizer-panel-title > .organizer-icon {
    width: 1.1rem;
    height: 1.1rem;
    color: #FFFFFF;
}

.organizer-kpi-icon {
    background: transparent;
}

.organizer-kpi-icon > .organizer-icon {
    width: 2rem;
    height: 2rem;
}

.organizer-kpi-gold .organizer-kpi-icon {
    background: transparent;
    color: #D99B00;
}

.organizer-financial-label {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    color: var(--vdm-muted);
    font-size: 0.62rem;
}

.organizer-financial-label > .organizer-icon {
    width: 1rem;
    height: 1rem;
    color: var(--vdm-blue);
}

.organizer-financial-cards article:nth-child(1) .organizer-financial-label > .organizer-icon {
    color: #D99B00;
}

.organizer-financial-cards article:nth-child(2) .organizer-financial-label > .organizer-icon {
    color: var(--vdm-red);
}

.organizer-financial-cards article:nth-child(3) .organizer-financial-label > .organizer-icon {
    color: var(--vdm-success);
}

.organizer-activity-icon > .organizer-icon {
    width: 0.95rem;
    height: 0.95rem;
}

.organizer-activity-reservation .organizer-icon {
    width: 1rem;
    height: 1rem;
}

.organizer-summary-icon .organizer-icon {
    width: 1.25rem;
    height: 1.25rem;
}

.organizer-summary-icon .icon-cutout {
    stroke: #FFFFFF;
}

.organizer-mobile-menu {
    display: none;
}

@media (max-width: 1000px) {
    .site-notification-panel {
        top: var(--site-notification-top, 4.95rem);
        right: 0;
        left: 0;
        width: auto;
        max-height: calc(100dvh - var(--site-notification-top, 4.95rem));
        border-radius: 0 0 var(--vdm-radius-lg) var(--vdm-radius-lg);
    }

    .guest-page > .site-header {
        display: block;
        margin-bottom: 0.75rem;
    }

    .guest-page .auth-brand-panel > .brand-logo {
        display: none;
    }

    .guest-page .auth-brand-panel > p {
        margin-top: 0;
    }

    body.organizer-mobile-menu-open {
        overflow: hidden;
    }

    body:has(.dashboard-sidebar[aria-label="Administrator navigation"]) .dashboard-shell-with-sidebar {
        grid-template-columns: minmax(0, 1fr);
    }

    .dashboard-sidebar[aria-label="Administrator navigation"] {
        display: none;
    }

    .site-header:has(.mobile-nav) .site-header-search-toggle {
        display: grid;
        width: 2.75rem;
        height: 2.75rem;
        flex: 0 0 auto;
        place-items: center;
        padding: 0;
        border: 1px solid #E5EAF4;
        border-radius: 50%;
        background: #F5F7FC;
        color: var(--vdm-navy);
        cursor: pointer;
    }

    .site-header:has(.mobile-nav) .site-header-search-toggle svg {
        width: 1.25rem;
        height: 1.25rem;
        fill: none;
        stroke: currentColor;
        stroke-linecap: round;
        stroke-width: 2;
    }

    .site-header:has(.mobile-nav) .site-header-search-toggle:focus-visible {
        outline: 3px solid var(--vdm-gold);
        outline-offset: 2px;
    }

    .site-header:has(.mobile-nav) .site-header-search-toggle[aria-expanded="true"] {
        border-color: var(--vdm-navy);
        background: var(--vdm-navy);
        color: var(--vdm-white);
    }

    .site-mobile-home-row {
        display: flex;
        align-items: center;
        gap: 0.45rem;
    }

    .mobile-nav > nav .site-mobile-home-row > a {
        width: auto;
        min-width: 0;
        flex: 1;
    }

    .mobile-nav > nav .site-mobile-search-form {
        position: relative;
        display: none;
        width: 100%;
        margin: 0.2rem 0 0;
    }

    .mobile-nav > nav .site-mobile-search-form.is-mobile-open {
        display: block;
    }

    .mobile-nav > nav .site-mobile-search-form .site-header-search-input-wrap {
        background: rgba(255, 255, 255, 0.1);
    }

    .mobile-nav > nav .site-mobile-search-form .site-header-search-input-wrap > button {
        display: grid;
        width: 1.75rem;
        min-height: 1.75rem;
        height: 1.75rem;
        flex: 0 0 auto;
        place-items: center;
        padding: 0;
        border-radius: 50%;
    }

    .mobile-nav > nav .site-mobile-search-form .site-header-search-results {
        right: auto;
        left: 0;
        width: 100%;
        box-sizing: border-box;
        margin-top: 0.35rem;
    }

    .site-header:has(.mobile-nav) .site-notifications {
        order: 3;
        margin-left: auto;
    }

    .site-header:has(.mobile-nav) .mobile-nav {
        order: 4;
    }

    .site-header:has(.mobile-nav) .nav-actions {
        display: none;
    }

    body:has(.organizer-workspace) .site-header,
    body:has(.organizer-workflow-header) .site-header {
        position: sticky;
        top: 0;
        z-index: 40;
    }

    body:has(.organizer-workspace) .nav-shell {
        width: calc(100% - 1rem);
        min-height: 3.75rem;
        justify-content: flex-start;
        gap: 0.5rem;
    }

    body:has(.organizer-workflow-header) .nav-shell {
        width: calc(100% - 1rem);
        min-height: 3.75rem;
        justify-content: flex-start;
        gap: 0.5rem;
    }

    body:has(.organizer-workspace) .nav-shell > .brand-logo {
        order: 2;
        margin-right: auto;
    }

    body:has(.organizer-workflow-header) .nav-shell > .brand-logo {
        order: 2;
        margin-right: auto;
    }

    body:has(.organizer-workspace) .nav-shell > .brand-logo img {
        width: 7.5rem;
        height: 3.25rem;
    }

    body:has(.organizer-workflow-header) .nav-shell > .brand-logo img {
        width: 7.5rem;
        height: 3.25rem;
    }

    body:has(.organizer-workflow-header) .nav-actions {
        display: none;
    }

    .organizer-mobile-menu {
        position: relative;
        z-index: 42;
        order: 1;
        display: block;
    }

    .mobile-nav {
        position: relative;
        z-index: 42;
        display: block;
    }

    .mobile-nav > summary {
        display: grid;
        width: 2.75rem;
        height: 2.75rem;
        flex: 0 0 auto;
        place-content: center;
        gap: 0.3rem;
        border: 1px solid rgba(255, 255, 255, 0.38);
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.16);
        -webkit-backdrop-filter: blur(12px) saturate(160%);
        backdrop-filter: blur(12px) saturate(160%);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.22), 0 4px 14px rgba(0, 0, 0, 0.12);
        cursor: pointer;
        list-style: none;
        transition: background-color 160ms ease, border-color 160ms ease;
    }

    .mobile-nav > summary::-webkit-details-marker {
        display: none;
    }

    .mobile-nav > summary span {
        display: block;
        width: 1.15rem;
        height: 2px;
        border-radius: 2px;
        background: var(--vdm-white);
    }

    .mobile-nav[open] > summary,
    .mobile-nav > summary:hover {
        border-color: var(--vdm-navy);
        background: var(--vdm-navy);
    }

    .mobile-nav[open] > summary span,
    .mobile-nav > summary:hover span {
        background: var(--vdm-white);
    }

    .organizer-mobile-menu > summary,
    .site-notification-link {
        display: grid;
        width: 2.75rem;
        height: 2.75rem;
        flex: 0 0 auto;
        place-items: center;
        border: 1px solid rgba(255, 255, 255, 0.38);
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.16);
        -webkit-backdrop-filter: blur(12px) saturate(160%);
        backdrop-filter: blur(12px) saturate(160%);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.22), 0 4px 14px rgba(0, 0, 0, 0.12);
        color: var(--vdm-white);
        cursor: pointer;
        list-style: none;
        text-decoration: none;
        transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
    }

    .organizer-mobile-menu > summary:hover,
    .organizer-mobile-menu[open] > summary,
    .site-notifications[open] > .site-notification-link,
    .site-notification-link:hover {
        border-color: rgba(244, 180, 0, 0.8);
        background: rgba(255, 255, 255, 0.24);
        color: var(--vdm-gold);
    }

    .mobile-nav[open] > summary,
    .mobile-nav > summary:hover {
        border-color: rgba(244, 180, 0, 0.8);
        background: rgba(255, 255, 255, 0.24);
    }

    .organizer-mobile-menu > summary::-webkit-details-marker {
        display: none;
    }

    .organizer-mobile-menu svg,
    .site-notification-link svg {
        width: 1.35rem;
        height: 1.35rem;
        fill: none;
        stroke: currentColor;
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-width: 2;
    }

    .organizer-mobile-menu > nav {
        position: fixed;
        top: var(--organizer-menu-top, 4.95rem);
        right: 0;
        left: 0;
        display: grid;
        width: auto;
        max-height: min(70dvh, calc(100dvh - var(--organizer-menu-top, 4.95rem) - 1rem));
        align-content: start;
        gap: 0.25rem;
        padding: 0.6rem;
        overflow-y: auto;
        overscroll-behavior: contain;
        border: 0;
        border-radius: 0 0 var(--vdm-radius-lg) var(--vdm-radius-lg);
        background: var(--vdm-white);
        box-shadow: none;
        scrollbar-width: none;
    }

    .organizer-mobile-menu > nav::-webkit-scrollbar {
        display: none;
    }

    .organizer-mobile-menu-heading {
        position: sticky;
        z-index: 1;
        top: -0.6rem;
        display: grid;
        gap: 0.2rem;
        margin: -0.6rem -0.6rem 0.35rem;
        padding: 0.85rem 1rem 0.8rem;
        border-radius: 0;
        background: linear-gradient(115deg, var(--vdm-navy), #173B91);
        color: var(--vdm-white);
    }

    .organizer-mobile-menu-heading span {
        color: var(--vdm-gold);
        font-size: 0.62rem;
        font-weight: var(--vdm-font-weight-bold);
        letter-spacing: 0.12em;
        text-transform: uppercase;
    }

    .organizer-mobile-menu-heading strong {
        font-size: var(--vdm-font-size-sm);
    }

    .organizer-mobile-menu > nav a {
        display: flex;
        min-height: 2.85rem;
        align-items: center;
        gap: 0.75rem;
        padding: 0.65rem 0.8rem;
        border-radius: var(--vdm-radius-sm);
        color: var(--vdm-navy);
        font-size: var(--vdm-font-size-sm);
        font-weight: var(--vdm-font-weight-semibold);
        text-decoration: none;
    }

    .organizer-mobile-menu > nav a.is-active,
    .organizer-mobile-menu > nav a:hover,
    .organizer-mobile-menu > nav a:focus-visible {
        background: var(--vdm-blue-interaction);
        color: var(--vdm-white);
    }

    .organizer-mobile-menu > nav a:focus-visible,
    .organizer-mobile-menu > summary:focus-visible {
        outline: 3px solid var(--vdm-gold);
        outline-offset: 2px;
    }

    .site-notification-link:focus-visible {
        outline: 3px solid var(--vdm-gold);
        outline-offset: 2px;
    }

    .mobile-nav > summary:focus-visible {
        outline: 3px solid var(--vdm-gold);
        outline-offset: 2px;
    }

    .mobile-nav > nav {
        position: fixed;
        z-index: 60;
        top: var(--site-mobile-menu-top, 4.95rem);
        right: 0;
        left: 0;
        display: grid;
        width: auto;
        max-height: min(72dvh, calc(100dvh - var(--site-mobile-menu-top, 4.95rem) - 1rem));
        align-content: start;
        gap: 0.25rem;
        padding: 0.6rem;
        overflow-y: auto;
        overscroll-behavior: contain;
        border: 0;
        border-radius: 0 0 var(--vdm-radius-lg) var(--vdm-radius-lg);
        background: var(--vdm-navy);
        box-shadow: none;
        scrollbar-width: none;
    }

    .mobile-nav > nav::-webkit-scrollbar {
        display: none;
    }

    .site-mobile-menu-heading {
        position: sticky;
        z-index: 1;
        top: -0.6rem;
        display: grid;
        gap: 0.2rem;
        margin: -0.6rem -0.6rem 0.35rem;
        padding: 0.85rem 1rem 0.8rem;
        border-radius: 0;
        background: linear-gradient(115deg, var(--vdm-navy), #173B91);
        color: var(--vdm-white);
    }

    .site-mobile-menu-heading span,
    .site-mobile-menu-section > span {
        color: var(--vdm-gold);
        font-size: 0.62rem;
        font-weight: var(--vdm-font-weight-bold);
        letter-spacing: 0.12em;
        text-transform: uppercase;
    }

    .site-mobile-menu-heading strong {
        font-size: var(--vdm-font-size-sm);
    }

    .site-mobile-menu-section {
        display: grid;
        gap: 0.15rem;
        padding: 0.45rem 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.18);
    }

    .site-mobile-account-menu > summary {
        display: flex;
        width: 100%;
        min-height: 2.8rem;
        align-items: center;
        gap: 0.65rem;
        padding: 0.65rem 0.8rem;
        border-radius: var(--vdm-radius-sm);
        color: var(--vdm-white);
        font-size: var(--vdm-font-size-sm);
        font-weight: var(--vdm-font-weight-semibold);
        box-sizing: border-box;
        cursor: pointer;
        list-style: none;
    }

    .site-mobile-account-menu > summary::-webkit-details-marker {
        display: none;
    }

    .site-mobile-account-menu > summary:hover,
    .site-mobile-account-menu > summary:focus-visible {
        background: var(--vdm-blue-interaction);
        color: var(--vdm-white);
    }

    .site-mobile-account-menu > summary:focus-visible {
        outline: 3px solid var(--vdm-gold);
        outline-offset: 1px;
    }

    .site-mobile-account-menu > summary svg {
        width: 1.15rem;
        height: 1.15rem;
        flex: 0 0 1.15rem;
        fill: none;
        stroke: currentColor;
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-width: 1.8;
    }

    .site-mobile-account-menu > summary .sr-only {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
    }

    .site-mobile-account-chevron {
        display: block;
        margin-left: auto;
        padding: 0;
        font-size: 0.9rem;
        line-height: 1;
        transition: transform 160ms ease;
    }

    .site-mobile-account-menu[open] .site-mobile-account-chevron {
        transform: rotate(180deg);
    }

    .site-mobile-account-menu > div {
        display: grid;
        gap: 0.15rem;
        padding-left: 1.7rem;
    }

    .site-mobile-menu-section > span {
        padding: 0.3rem 0.75rem;
        color: var(--vdm-gold);
        letter-spacing: 0.08em;
    }

    .mobile-nav > nav a,
    .mobile-nav > nav form button {
        display: flex;
        width: 100%;
        min-height: 2.8rem;
        align-items: center;
        padding: 0.65rem 0.8rem;
        border: 0;
        border-radius: var(--vdm-radius-sm);
        background: transparent;
        color: var(--vdm-white);
        font: inherit;
        font-size: var(--vdm-font-size-sm);
        font-weight: var(--vdm-font-weight-semibold);
        text-align: left;
        text-decoration: none;
    }

    .mobile-nav > nav a.is-active,
    .mobile-nav > nav a:hover,
    .mobile-nav > nav a:focus-visible,
    .mobile-nav > nav form button:hover,
    .mobile-nav > nav form button:focus-visible {
        background: var(--vdm-blue-interaction);
        color: var(--vdm-white);
    }

    .mobile-nav > nav a:focus-visible,
    .mobile-nav > nav form button:focus-visible {
        outline: 3px solid var(--vdm-gold);
        outline-offset: 1px;
    }

    .mobile-nav > nav form {
        margin: 0;
    }

    .mobile-nav > nav form button {
        cursor: pointer;
    }

    .organizer-mobile-menu > nav a svg {
        width: 1.25rem;
        height: 1.25rem;
        flex: 0 0 auto;
        fill: none;
        stroke: currentColor;
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-width: 1.8;
    }

    .organizer-mobile-menu > nav a span {
        min-width: 0;
    }

    .site-notifications {
        order: 4;
    }

    .dashboard-clock {
        order: 3;
        margin-left: auto;
    }

    .organizer-topbar-account {
        order: 5;
        margin-left: 0;
    }

    .organizer-workspace-mobile-account {
        display: block;
    }

    .organizer-topbar-account > summary {
        min-height: 2.5rem;
        gap: 0.25rem;
        padding-inline: 0.15rem;
    }

    .organizer-account-avatar {
        width: 2.1rem;
        height: 2.1rem;
    }

    .dashboard-clock {
        padding: 0.3rem 0.4rem;
    }

    .dashboard-clock > span {
        display: none;
    }

    .dashboard-clock > time {
        font-size: 0.72rem;
        letter-spacing: 0.02em;
    }

    body:has(.organizer-workspace) {
        padding-bottom: 0;
    }

    body:has(.organizer-workspace) .mobile-nav {
        display: none;
    }

    body:has(.organizer-workspace) .organizer-sidebar {
        display: none;
    }

    .organizer-dashboard-workspace {
        width: calc(100% - 1rem);
        margin: 0.65rem auto 1rem;
    }

    .organizer-dashboard-workspace .organizer-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .organizer-dashboard-content {
        gap: 0.75rem;
    }

    .organizer-primary-charts {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-primary-charts > .organizer-line-panel {
        grid-column: 1 / -1;
    }

    .organizer-line-chart svg {
        max-height: none;
    }

    .organizer-dashboard-workspace .organizer-event-table {
        min-width: 0;
    }

    .organizer-event-table-wrap {
        overflow-x: visible;
    }

    .organizer-activity-copy strong,
    .organizer-activity-copy small {
        overflow-wrap: anywhere;
    }

    .organizer-activity-list time {
        white-space: normal;
        text-align: right;
    }
}

@media (min-width: 521px) and (max-width: 820px) {
    .organizer-primary-charts {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .organizer-primary-charts > .organizer-line-panel {
        grid-column: 1 / -1;
    }

    .organizer-summary-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .organizer-financial-cards {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 520px) {
    .organizer-dashboard-workspace {
        width: calc(100% - 1rem);
        margin-top: 0.5rem;
    }

    .organizer-dashboard-toolbar {
        gap: 0.55rem;
    }

    .organizer-dashboard-heading h1 {
        font-size: clamp(1.25rem, 6vw, 1.65rem);
    }

    .organizer-dashboard-heading p {
        font-size: 0.78rem;
    }

    .organizer-dashboard-filters {
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
    }

    .organizer-quick-filter {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
        gap: 0.35rem;
    }

    .organizer-quick-filter .form-field:first-child,
    .organizer-quick-filter .form-field:nth-child(2) {
        width: auto;
    }

    .organizer-quick-filter select {
        min-height: 2.35rem;
        padding-inline: 0.4rem;
        font-size: 0.68rem;
    }

    .organizer-quick-filter .organizer-filter-submit {
        grid-column: auto;
        width: 2.25rem;
        min-width: 2.25rem;
        height: 2.35rem;
        padding: 0;
    }

    .organizer-filter-submit > span {
        display: none;
    }

    .organizer-dashboard-workspace .organizer-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .organizer-kpi {
        grid-template-columns: auto minmax(0, 1fr);
        min-height: 5.3rem;
        gap: 0.45rem;
        padding: 0.55rem;
    }

    .organizer-kpi h2 {
        font-size: 0.68rem;
    }

    .organizer-kpi > div > strong {
        font-size: clamp(0.95rem, 4.5vw, 1.2rem);
    }

    .organizer-kpi-trend,
    .organizer-kpi-trend small {
        font-size: 0.58rem;
    }

    .organizer-dashboard-workspace .organizer-primary-charts {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-period-caption {
        font-size: 0.58rem;
    }

    .organizer-dashboard-workspace .organizer-financial-cards {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-event-table tr {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .organizer-event-table td:last-child {
        grid-column: 1 / -1;
    }

    .organizer-row-actions {
        gap: 0.35rem;
    }

    .organizer-row-actions a {
        min-height: 2.25rem;
        align-items: center;
        padding: 0.4rem 0.55rem;
    }

    .organizer-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    html {
        width: 100%;
        overflow-x: hidden;
        overflow-x: clip;
        -webkit-text-size-adjust: 100%;
        text-size-adjust: 100%;
    }

    body {
        width: 100%;
        min-width: 0;
        overflow-x: hidden;
        overflow-x: clip;
    }

    body:has(.organizer-workspace),
    body:has(.organizer-workflow-header) {
        padding-bottom: 0;
    }

    :where(.container, .page-shell, .dashboard-shell, .event-detail-wrap) {
        width: calc(100% - 1.25rem);
        max-width: 100%;
    }

    :where(input, select, textarea, button) {
        max-width: 100%;
    }

    :where(h1, h2, h3, p, a, label, td, th) {
        overflow-wrap: anywhere;
    }

    .nav-shell {
        width: calc(100% - 1rem);
        min-width: 0;
        gap: 0.4rem;
    }

    .site-header .brand-logo img {
        width: clamp(6.6rem, 29vw, 8rem);
        height: auto;
        max-height: 3.25rem;
        object-fit: contain;
    }

    .site-header .dashboard-clock {
        min-width: 0;
        margin-left: auto;
    }

    .site-header .dashboard-clock > time {
        white-space: nowrap;
    }

    .organizer-workspace,
    .organizer-dashboard-workspace {
        width: calc(100% - 1rem);
        max-width: 100%;
        min-width: 0;
        margin-inline: auto;
    }

    .organizer-content,
    .organizer-dashboard-content,
    .organizer-workspace main,
    .organizer-dashboard-workspace main {
        min-width: 0;
        max-width: 100%;
    }

    .organizer-mobile-menu > nav,
    .site-notification-panel {
        right: 0;
        left: 0;
        width: 100%;
        max-width: 100%;
    }

    .profile-page .max-w-7xl {
        width: calc(100% - 1.25rem);
    }

    .auth-shell,
    .event-detail,
    .hero-grid,
    .dashboard-shell-with-sidebar {
        grid-template-columns: minmax(0, 1fr);
    }

    .hero-grid > *,
    .event-detail > *,
    .dashboard-shell-with-sidebar > *,
    .organizer-primary-charts > *,
    .organizer-summary-grid > *,
    .organizer-financial-cards > * {
        min-width: 0;
    }

    .search-box,
    .event-search-form {
        grid-template-columns: minmax(0, 1fr);
    }

    .event-card,
    .ticket-panel,
    .auth-card,
    .organizer-panel,
    .organizer-kpi,
    .organizer-financial-cards article {
        min-width: 0;
        max-width: 100%;
    }

    .organizer-event-table-wrap,
    .table-responsive,
    .table-wrap {
        max-width: 100%;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
    }

    .account-settings-page {
        width: calc(100% - 1rem);
        max-width: 100%;
        min-width: 0;
    }

    .account-settings-layout,
    .account-settings-content,
    .account-settings-primary-card,
    .account-settings-card-grid,
    .account-settings-card {
        min-width: 0;
        max-width: 100%;
    }

    .account-settings-layout > .account-settings-nav {
        max-width: 100%;
    }
}

@media (max-width: 340px) {
    .organizer-dashboard-workspace .organizer-kpi-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-dashboard-filters {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-custom-range,
    .organizer-create-event {
        width: 100%;
    }

    .organizer-create-event {
        min-height: 2.5rem;
    }
}

.account-settings-page {
    width: min(1440px, calc(100% - 2.5rem));
    margin: 1.75rem auto 3rem;
    color: #17233c;
    font-family: var(--vdm-font-family);
}

.account-settings-heading {
    display: flex;
    align-items: flex-end;
    gap: 1.25rem;
    margin-bottom: 1.15rem;
}

.account-settings-eyebrow {
    color: #5571a9;
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.14em;
}

.account-settings-heading h1 {
    margin: 0.25rem 0 0.35rem;
    color: #0b1f6b;
    font-size: clamp(1.8rem, 3vw, 2.45rem);
    font-weight: 800;
    letter-spacing: -0.035em;
    line-height: 1.15;
}

.account-settings-heading p,
.account-settings-card-heading p {
    margin: 0;
    color: #69758b;
    font-size: 0.9rem;
}

.account-settings-avatar {
    display: grid;
    width: 3.35rem;
    height: 3.35rem;
    flex: 0 0 auto;
    place-items: center;
    overflow: hidden;
    border: 2px solid #dfe7fb;
    border-radius: 50%;
    background: #eaf0ff;
    color: #0b1f6b;
    font-size: 1.2rem;
    font-weight: 800;
}

.account-settings-avatar img,
.account-settings-logo-preview img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.account-settings-alert {
    margin: 0 0 1rem;
    padding: 0.8rem 1rem;
    border: 1px solid #b9e8d1;
    border-radius: 12px;
    background: #effbf5;
    color: #17633b;
    font-size: 0.9rem;
}

.account-settings-alert-error {
    border-color: #f0c5c5;
    background: #fff4f4;
    color: #9e3131;
}

.account-settings-nav {
    position: relative;
    display: flex;
    gap: 0.35rem;
    margin-bottom: 1.1rem;
    padding: 0.45rem;
    overflow-x: auto;
    border: 1px solid #e0e6f3;
    border-radius: 13px;
    background: linear-gradient(110deg, #fff 0%, #fbfcff 100%);
    box-shadow: 0 5px 18px rgba(11, 31, 107, 0.04);
    scrollbar-width: none;
}

.account-settings-nav::-webkit-scrollbar {
    display: none;
}

.account-settings-nav a {
    display: inline-flex;
    min-height: 2.8rem;
    flex: 0 0 auto;
    align-items: center;
    gap: 0.5rem;
    padding: 0.55rem 0.9rem;
    border-radius: 9px;
    color: #485875;
    font-size: 0.8rem;
    font-weight: 700;
    text-decoration: none;
    transition: color 150ms ease, background-color 150ms ease, box-shadow 150ms ease;
}

.account-settings-nav a:first-child {
    background: #eaf1ff;
    color: #0b1f6b;
}

.account-settings-page:has(#settings-business:target) .account-settings-nav a[href="#settings-business"],
.account-settings-page:has(#settings-notifications:target) .account-settings-nav a[href="#settings-notifications"],
.account-settings-page:has(#settings-security:target) .account-settings-nav a[href="#settings-security"],
.account-settings-page:has(#settings-preferences:target) .account-settings-nav a[href="#settings-preferences"],
.account-settings-page:has(#settings-danger:target) .account-settings-nav a[href="#settings-danger"] {
    background: #eaf1ff;
    color: #0b1f6b;
}

.account-settings-page:has(#settings-business:target) .account-settings-nav a:first-child:not([href="#settings-business"]),
.account-settings-page:has(#settings-notifications:target) .account-settings-nav a:first-child:not([href="#settings-notifications"]),
.account-settings-page:has(#settings-security:target) .account-settings-nav a:first-child:not([href="#settings-security"]),
.account-settings-page:has(#settings-preferences:target) .account-settings-nav a:first-child:not([href="#settings-preferences"]),
.account-settings-page:has(#settings-danger:target) .account-settings-nav a:first-child:not([href="#settings-danger"]) {
    background: transparent;
    color: #485875;
}

.account-settings-nav a:hover,
.account-settings-nav a:focus-visible {
    background: #edf3ff;
    color: #0b1f6b;
}

.account-settings-nav .organizer-icon {
    width: 1.05rem;
    height: 1.05rem;
}

.account-settings-sections {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 1rem;
}

.account-settings-column {
    display: grid;
    align-content: start;
    gap: 1rem;
}

.account-settings-card {
    min-width: 0;
    padding: clamp(1rem, 1.6vw, 1.45rem);
    scroll-margin-top: 1rem;
    border: 1px solid #dfe6f2;
    border-radius: 15px;
    background: linear-gradient(145deg, #fff 0%, #fdfdff 100%);
    box-shadow: 0 7px 22px rgba(11, 31, 107, 0.055);
}

.account-settings-card:target {
    border-color: #9bbaf2;
    box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.08), 0 7px 22px rgba(11, 31, 107, 0.055);
}

.account-settings-card-heading {
    display: flex;
    align-items: flex-start;
    gap: 0.85rem;
    margin-bottom: 1rem;
}

.account-settings-card-heading h2 {
    margin: 0 0 0.25rem;
    color: #0b1f6b;
    font-size: 1.02rem;
    font-weight: 800;
    letter-spacing: -0.015em;
}

.account-settings-section-icon {
    display: grid;
    width: 2.4rem;
    height: 2.4rem;
    flex: 0 0 auto;
    place-items: center;
    border: 1px solid #e0e9fb;
    border-radius: 10px;
    background: #eff4ff;
    color: #1769e0;
}

.account-settings-section-icon .organizer-icon {
    width: 1.2rem;
    height: 1.2rem;
}

.account-settings-form {
    display: grid;
    gap: 0.85rem;
    margin-top: 0.85rem;
}

.account-settings-form > header {
    display: none;
}

.account-settings-avatar-field,
.account-settings-logo-field {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.account-settings-avatar-field label,
.account-settings-logo-field label,
.account-settings-field-grid label {
    display: grid;
    min-width: 0;
    gap: 0.4rem;
    color: #243250;
    font-size: 0.78rem;
    font-weight: 700;
}

.account-settings-avatar-field small,
.account-settings-logo-field small,
.account-settings-toggle small {
    color: #78849a;
    font-size: 0.74rem;
    font-weight: 500;
}

.account-settings-avatar-field input[type="file"],
.account-settings-logo-field input[type="file"] {
    width: 100%;
    min-height: 0;
    padding: 0;
    border: 0;
    background: transparent;
    font-size: 0.76rem;
}

.account-settings-avatar-field input[type="file"]::file-selector-button,
.account-settings-logo-field input[type="file"]::file-selector-button {
    min-height: 2rem;
    margin-right: 0.55rem;
    padding: 0.35rem 0.7rem;
    border: 1px solid #cbd8ef;
    border-radius: 7px;
    background: #f5f8ff;
    color: #173a84;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}

.account-settings-field-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.85rem;
}

.account-settings-field-grid .account-settings-field-wide {
    grid-column: 1 / -1;
}

.account-settings-form input:not([type="checkbox"]):not([type="file"]),
.account-settings-form select,
.account-settings-form textarea,
.account-settings-card input:not([type="checkbox"]):not([type="file"]),
.account-settings-card select,
.account-settings-card textarea {
    width: 100%;
    min-width: 0;
    min-height: 2.7rem;
    padding: 0.6rem 0.7rem;
    border: 1px solid #d2dced;
    border-radius: 8px;
    background: #fff;
    color: #172b50;
    font: inherit;
    font-size: 0.8rem;
    transition: border-color 150ms ease, box-shadow 150ms ease;
}

.account-settings-form textarea,
.account-settings-card textarea {
    min-height: 5.2rem;
    resize: vertical;
}

.account-settings-card input:focus,
.account-settings-card select:focus,
.account-settings-card textarea:focus {
    border-color: #3685ed;
    outline: 0;
    box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.12);
}

.account-settings-logo-preview {
    display: grid;
    width: 3.8rem;
    height: 3.8rem;
    flex: 0 0 auto;
    place-items: center;
    overflow: hidden;
    border: 1px solid #e0e6f1;
    border-radius: 12px;
    background: #f5f7fc;
    color: #5770a3;
}

.account-settings-logo-preview .organizer-icon {
    width: 1.6rem;
    height: 1.6rem;
}

.account-settings-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.account-settings-primary-button {
    min-height: 2.55rem;
    padding: 0.6rem 1.05rem;
    border: 0;
    border-radius: 8px;
    background: #0878ed !important;
    color: #fff !important;
    font: inherit;
    font-size: 0.8rem;
    font-weight: 750;
    cursor: pointer;
    box-shadow: 0 4px 10px rgba(0, 123, 255, 0.18);
    transition: background-color 150ms ease, box-shadow 150ms ease;
}

.account-settings-primary-button:hover,
.account-settings-primary-button:focus-visible {
    background: #075fc7 !important;
    box-shadow: 0 6px 14px rgba(0, 89, 190, 0.24);
}

.account-settings-toggle-list,
.account-settings-session-list {
    display: grid;
}

.account-settings-toggle,
.account-settings-session {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.85rem 0;
    border-bottom: 1px solid #edf0f6;
}

.account-settings-toggle:first-child,
.account-settings-session:first-child {
    padding-top: 0;
}

.account-settings-toggle:last-child,
.account-settings-session:last-child {
    border-bottom: 0;
}

.account-settings-toggle > span,
.account-settings-session > div {
    display: grid;
    gap: 0.22rem;
}

.account-settings-toggle strong,
.account-settings-session strong,
.account-settings-subsection h3 {
    color: #1b2942;
    font-size: 0.87rem;
}

.account-settings-toggle input[type="checkbox"] {
    width: 2.65rem;
    height: 1.45rem;
    flex: 0 0 auto;
    accent-color: #1769e0;
}

.account-settings-subsection {
    padding: 1rem 0;
    border-top: 1px solid #edf0f6;
}

.account-settings-subsection > section > header h2 {
    color: #1b2942;
    font-size: 0.95rem;
}

.account-settings-subsection > section > header p,
.account-settings-session p,
.account-settings-session small,
.account-settings-muted,
.account-settings-readonly-note {
    margin: 0;
    color: #758198;
    font-size: 0.8rem;
}

.account-settings-subsection h3 {
    margin: 0 0 0.8rem;
}

.account-settings-session > form {
    display: block;
}

.account-settings-text-button {
    padding: 0.45rem 0.65rem;
    border: 1px solid #dce4f2 !important;
    background: #fff !important;
    color: #335487 !important;
    font-size: 0.75rem !important;
    cursor: pointer;
}

.account-settings-security-status {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-top: 0.75rem;
    padding: 0.9rem;
    border: 1px solid #e4e9f3;
    border-radius: 10px;
    background: #f6f8fd;
}

.account-settings-security-status > div {
    flex: 1;
}

.account-settings-security-status strong {
    color: #33415a;
    font-size: 0.82rem;
}

.account-settings-security-status p {
    margin: 0.2rem 0 0;
    color: #78849a;
    font-size: 0.75rem;
}

.account-settings-accordion {
    margin-top: 0.75rem;
}

.account-settings-accordion > .account-settings-accordion-summary {
    display: flex;
    width: 100%;
    text-align: left;
    cursor: pointer;
    list-style: none;
}

.account-settings-accordion-summary::-webkit-details-marker {
    display: none;
}

.account-settings-accordion-summary:focus-visible {
    outline: 3px solid #0874f5;
    outline-offset: 3px;
}

.account-settings-accordion-summary > span:nth-child(2) {
    flex: 1;
}

.account-settings-accordion-summary > span:nth-child(2) > strong,
.account-settings-accordion-summary > span:nth-child(2) > span {
    display: block;
}

.account-settings-accordion-summary > span:nth-child(2) > span {
    margin-top: 0.2rem;
    color: #78849a;
    font-size: 0.75rem;
    font-weight: 400;
}

.account-settings-accordion-summary::after {
    width: 0.5rem;
    height: 0.5rem;
    flex: 0 0 auto;
    align-self: center;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    color: #78849a;
    content: "";
    transform: rotate(45deg) translateY(-0.15rem);
    transition: transform 160ms ease;
}

.account-settings-accordion[open] > .account-settings-accordion-summary::after {
    transform: rotate(225deg) translate(-0.1rem, -0.05rem);
}

.account-settings-accordion-content {
    padding: 0.25rem 0.25rem 0.75rem;
}

.account-settings-status-dot {
    width: 0.55rem;
    height: 0.55rem;
    flex: 0 0 auto;
    border-radius: 50%;
    background: #9da8b9;
}

.account-settings-status-label {
    color: #7a8495;
    font-size: 0.72rem;
    font-weight: 700;
}

.account-settings-two-factor-form {
    display: grid;
    max-width: 32rem;
    gap: 0.65rem;
    margin: 0.75rem 0;
}

.account-settings-two-factor-form .account-settings-field {
    display: grid;
    gap: 0.35rem;
    color: #243250;
    font-size: 0.75rem;
    font-weight: 700;
}

.account-settings-two-factor-form input,
.account-settings-two-factor-form select {
    width: 100%;
    min-height: 2.5rem;
    padding: 0.55rem 0.65rem;
    border: 1px solid #d2dced;
    border-radius: 8px;
    background: #fff;
    color: #172b50;
    font: inherit;
}

.account-settings-two-factor-setup,
.account-settings-two-factor-recovery {
    margin-top: 0.8rem;
    padding: 0.9rem;
    border: 1px solid #dce7f8;
    border-radius: 9px;
    background: #f7f9fd;
    color: #33415a;
    font-size: 0.78rem;
}

.account-settings-two-factor-setup p,
.account-settings-two-factor-recovery p {
    margin: 0.25rem 0 0.65rem;
}

.account-settings-two-factor-qr {
    display: block;
    width: 13.75rem;
    max-width: 100%;
    height: auto;
    margin: 0.7rem 0;
    padding: 0.5rem;
    border: 1px solid #e1e7f0;
    border-radius: 8px;
    background: #fff;
}

.account-settings-two-factor-setup code,
.account-settings-two-factor-recovery code {
    overflow-wrap: anywhere;
    color: #102b6a;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-weight: 700;
}

.account-settings-two-factor-recovery ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.4rem;
    margin: 0.7rem 0 0;
    padding: 0;
    list-style: none;
}

.account-settings-two-factor-recovery li {
    padding: 0.35rem 0.5rem;
    border-radius: 5px;
    background: #fff;
}

.account-settings-passkeys {
    margin-top: 0.9rem;
    padding: 0.9rem;
    border: 1px solid #dce7f8;
    border-radius: 9px;
    background: #f7f9fd;
    color: #33415a;
    font-size: 0.78rem;
}

.account-settings-passkeys > strong {
    color: #102b6a;
}

.account-settings-passkeys > p {
    margin: 0.25rem 0 0.65rem;
}

.account-settings-passkey-list {
    display: grid;
    gap: 0.5rem;
}

.account-settings-passkey-list > p {
    margin: 0;
}

.account-settings-passkey-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.65rem;
    border: 1px solid #e1e7f0;
    border-radius: 7px;
    background: #fff;
}

.account-settings-passkey-item > div {
    min-width: 0;
}

.account-settings-passkey-item p {
    margin: 0.2rem 0 0;
    color: #78849a;
    font-size: 0.7rem;
}

.account-settings-passkey-registration {
    margin-bottom: 0;
}

.account-settings-field-error {
    color: #b42318;
    font-size: 0.72rem;
    font-weight: 500;
}

.account-settings-readonly-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.9rem;
    margin: 1rem 0 0;
}

.account-settings-readonly-grid > div {
    padding: 0.8rem;
    border-radius: 9px;
    background: #f7f9fd;
}

.account-settings-readonly-grid dt {
    color: #758198;
    font-size: 0.72rem;
}

.account-settings-readonly-grid dd {
    margin: 0.25rem 0 0;
    overflow-wrap: anywhere;
    color: #25334e;
    font-size: 0.85rem;
    font-weight: 700;
}

.account-settings-danger-card {
    border-color: #f0d5d8;
    background: linear-gradient(145deg, #fff 0%, #fffafa 100%);
}

.account-settings-danger-card .account-settings-section-icon {
    background: #fff0f0;
    color: #c83d42;
}

.account-settings-danger-card .account-delete-section {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.account-settings-danger-card .account-delete-section header h2 {
    display: none;
}

.account-settings-danger-card .account-delete-section header p {
    max-width: 52rem;
    margin: 0;
    color: #758198;
    font-size: 0.82rem;
}

.account-settings-danger-card .account-delete-section > button {
    flex: 0 0 auto;
    background: #c43b42 !important;
}

@media (min-width: 760px) {
    .account-settings-sections {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-items: start;
        gap: 1.15rem;
    }
}

@media (max-width: 759px) {
    .account-settings-page {
        width: calc(100% - 1.25rem);
        margin-top: 1rem;
    }

    .account-settings-nav {
        margin-inline: -0.1rem;
    }

    .account-settings-nav a {
        min-height: 2.45rem;
        padding-inline: 0.65rem;
        font-size: 0.75rem;
    }

    .account-settings-nav a .organizer-icon {
        display: none;
    }

    .account-settings-column {
        display: contents;
    }

    #settings-profile { order: 1; }
    #settings-business { order: 2; }
    #settings-notifications { order: 3; }
    #settings-security { order: 4; }
    #settings-preferences { order: 5; }
    #settings-danger { order: 6; }

    .account-settings-field-grid,
    .account-settings-readonly-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .account-settings-field-grid .account-settings-field-wide {
        grid-column: auto;
    }

    .account-settings-danger-card .account-delete-section {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 420px) {
    .account-settings-page {
        width: calc(100% - 1rem);
    }

    .account-settings-heading h1 {
        font-size: 1.55rem;
    }

    .account-settings-heading p {
        font-size: 0.82rem;
    }

    .account-settings-avatar {
        width: 2.8rem;
        height: 2.8rem;
    }

    .account-settings-card {
        padding: 0.9rem;
        border-radius: 13px;
    }

    .account-settings-card-heading {
        gap: 0.6rem;
    }

    .account-settings-session {
        align-items: flex-start;
    }
}

.account-settings-page {
    width: min(100%, 1440px);
    margin: 0.9rem auto 2rem;
    color: #0b1f6b;
}

.account-settings-heading {
    margin-bottom: 0.9rem;
}

.account-settings-heading h1 {
    margin: 0 0 0.1rem;
    font-size: clamp(1.6rem, 2.4vw, 2rem);
    letter-spacing: -0.025em;
}

.account-settings-heading p {
    color: #18336f;
    font-size: 0.82rem;
}

.account-settings-layout {
    display: grid;
    grid-template-columns: 10.25rem minmax(0, 1fr);
    align-items: start;
    gap: 0.85rem;
}

.account-settings-layout > .account-settings-nav {
    position: sticky;
    top: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    margin: 0;
    padding: 0.45rem;
    overflow: visible;
    border: 1px solid #e0e7f5;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 5px 16px rgba(11, 31, 107, 0.04);
}

.account-settings-layout > .account-settings-nav a,
.account-settings-layout > .account-settings-nav a:first-child {
    min-height: 2.7rem;
    justify-content: flex-start;
    gap: 0.55rem;
    padding: 0.55rem 0.6rem;
    border-radius: 8px;
    background: transparent;
    color: #0b1f6b;
    font-size: 0.68rem;
    line-height: 1.25;
}

.account-settings-layout > .account-settings-nav a .organizer-icon {
    width: 1.15rem;
    height: 1.15rem;
    color: #0759e8;
}

.account-settings-layout > .account-settings-nav a:hover,
.account-settings-layout > .account-settings-nav a:focus-visible,
.account-settings-layout > .account-settings-nav a:first-child,
.account-settings-layout:has(#settings-business:target) > .account-settings-nav a[href="#settings-business"],
.account-settings-layout:has(#settings-payout:target) > .account-settings-nav a[href="#settings-payout"],
.account-settings-layout:has(#settings-notifications:target) > .account-settings-nav a[href="#settings-notifications"],
.account-settings-layout:has(#settings-security:target) > .account-settings-nav a[href="#settings-security"],
.account-settings-layout:has(#settings-preferences:target) > .account-settings-nav a[href="#settings-preferences"] {
    background: #0860ed;
    color: #fff;
    box-shadow: 0 3px 8px rgba(8, 96, 237, 0.16);
}

.account-settings-layout > .account-settings-nav a:hover .organizer-icon,
.account-settings-layout > .account-settings-nav a:focus-visible .organizer-icon,
.account-settings-layout > .account-settings-nav a:first-child .organizer-icon,
.account-settings-layout:has(#settings-business:target) > .account-settings-nav a[href="#settings-business"] .organizer-icon,
.account-settings-layout:has(#settings-payout:target) > .account-settings-nav a[href="#settings-payout"] .organizer-icon,
.account-settings-layout:has(#settings-notifications:target) > .account-settings-nav a[href="#settings-notifications"] .organizer-icon,
.account-settings-layout:has(#settings-security:target) > .account-settings-nav a[href="#settings-security"] .organizer-icon,
.account-settings-layout:has(#settings-preferences:target) > .account-settings-nav a[href="#settings-preferences"] .organizer-icon {
    color: #fff;
}

.account-settings-layout > .account-settings-nav .account-settings-nav-danger {
    min-height: 2.8rem;
    margin-top: 0.35rem;
    border: 1px solid #ffd1d1;
    background: #fff0f0;
    color: #c32222;
}

.account-settings-layout > .account-settings-nav .account-settings-nav-danger .organizer-icon {
    color: #e11d2e;
}

.account-settings-content {
    display: grid;
    min-width: 0;
    gap: 0.75rem;
}

.account-settings-primary-card,
.account-settings-card {
    min-width: 0;
    border: 1px solid #dfe6f3;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 5px 17px rgba(11, 31, 107, 0.045);
}

.account-settings-primary-card {
    padding: 0.75rem 0.85rem;
}

.account-settings-primary-section {
    min-width: 0;
    scroll-margin-top: 1rem;
}

.account-settings-primary-section + .account-settings-primary-section {
    margin-top: 0.65rem;
    padding-top: 0.65rem;
    border-top: 1px solid #e1e8f4;
}

.account-settings-card-heading {
    gap: 0.6rem;
    margin-bottom: 0.55rem;
}

.account-settings-section-icon {
    width: 1.85rem;
    height: 1.85rem;
    border: 0;
    border-radius: 7px;
    background: #eef4ff;
    color: #0759e8;
}

.account-settings-section-icon .organizer-icon {
    width: 1.05rem;
    height: 1.05rem;
}

.account-settings-card-heading h2 {
    margin-bottom: 0.05rem;
    color: #0b1f6b;
    font-size: 0.88rem;
    line-height: 1.25;
}

.account-settings-card-heading p {
    color: #53658b;
    font-size: 0.7rem;
    line-height: 1.35;
}

.account-settings-profile-content {
    display: grid;
    grid-template-columns: minmax(0, 1.8fr) minmax(9rem, 0.8fr);
    align-items: start;
    gap: 0.85rem;
}

.account-settings-profile-content > section {
    min-width: 0;
}

.account-settings-profile-content > section > form.account-settings-form {
    display: grid;
    grid-template-columns: 5.25rem minmax(0, 1fr);
    align-items: start;
    gap: 0.55rem 0.7rem;
    margin: 0;
}

.account-settings-profile-content .account-settings-avatar-field {
    grid-column: 1;
    grid-row: 1 / span 3;
    min-width: 0;
    align-items: center;
    flex-direction: column;
    gap: 0.3rem;
    text-align: center;
}

.account-settings-avatar-field .account-settings-avatar {
    width: 4.25rem;
    height: 4.25rem;
    border: 0;
    background: #dceef8;
}

.account-settings-avatar-field label {
    gap: 0.2rem;
    font-size: 0.62rem;
    text-align: left;
}

.account-settings-avatar-field input[type="file"] {
    width: 100%;
    font-size: 0;
}

.account-settings-avatar-field input[type="file"]::file-selector-button {
    min-height: 1.75rem;
    margin: 0;
    padding: 0.25rem 0.4rem;
    font-size: 0.6rem;
}

.account-settings-avatar-field small {
    display: none;
}

.account-settings-profile-content > section > form.account-settings-form > div:not(.account-settings-avatar-field) {
    min-width: 0;
}

.account-settings-profile-content > section > form.account-settings-form > div:not(.account-settings-avatar-field):not(.flex) {
    grid-column: 2;
    display: grid;
    gap: 0.2rem;
    color: #0b1f6b;
    font-size: 0.67rem;
    font-weight: 700;
}

.account-settings-profile-content > section > form.account-settings-form > div:nth-child(3) input,
.account-settings-profile-content > section > form.account-settings-form > div:nth-child(4) input {
    margin: 0 !important;
}

.account-settings-profile-content > section > form.account-settings-form > div:last-child {
    grid-column: 2;
    align-self: end;
}

.account-settings-card input:not([type="checkbox"]):not([type="file"]),
.account-settings-card select,
.account-settings-card textarea,
.account-settings-primary-card input:not([type="checkbox"]):not([type="file"]),
.account-settings-primary-card select,
.account-settings-primary-card textarea {
    min-height: 2rem;
    padding: 0.38rem 0.5rem;
    border: 1px solid #d3def0;
    border-radius: 6px;
    color: #152e68;
    font-size: 0.68rem;
}

.account-settings-primary-card textarea,
.account-settings-card textarea {
    min-height: 2.8rem;
}

.account-settings-primary-card .account-settings-actions,
.account-settings-card .account-settings-actions {
    justify-content: flex-end;
}

.account-settings-primary-card .account-settings-primary-button,
.account-settings-card .account-settings-primary-button {
    min-height: 2.1rem;
    padding: 0.4rem 0.72rem;
    border-radius: 6px;
    background: #0759e8 !important;
    font-size: 0.68rem;
    box-shadow: none;
}

.account-settings-password {
    align-self: start;
    padding: 0.2rem 0.1rem;
}

.account-settings-password > summary {
    display: flex;
    min-height: 2rem;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    padding: 0.4rem;
    border: 1px solid #d9e5fc;
    border-radius: 7px;
    background: #f3f7ff;
    color: #0759e8;
    font-size: 0.65rem;
    font-weight: 700;
    cursor: pointer;
    list-style: none;
}

.account-settings-password > summary::-webkit-details-marker {
    display: none;
}

.account-settings-password > summary .organizer-icon {
    width: 0.9rem;
    height: 0.9rem;
}

.account-settings-password[open] {
    grid-column: 1 / -1;
    padding: 0.65rem;
    border: 1px solid #e1e8f4;
    border-radius: 8px;
    background: #fbfcff;
}

.account-settings-password > section > header h2 {
    color: #0b1f6b;
    font-size: 0.82rem;
}

.account-settings-password > section > header p {
    color: #657393;
    font-size: 0.68rem;
}

.account-settings-password form {
    display: grid;
    gap: 0.55rem;
    margin-top: 0.55rem;
}

.account-settings-password form > div {
    display: grid;
    gap: 0.15rem;
    font-size: 0.65rem;
    font-weight: 700;
}

.account-settings-business-grid {
    display: grid;
    grid-template-columns: minmax(6.5rem, 0.85fr) repeat(2, minmax(0, 1fr));
    gap: 0.5rem 0.65rem;
}

.account-settings-business-grid > label,
.account-settings-business-logo label {
    display: grid;
    min-width: 0;
    align-content: start;
    gap: 0.16rem;
    color: #142e6d;
    font-size: 0.62rem;
    font-weight: 700;
}

.account-settings-business-grid .account-settings-field-wide {
    grid-column: span 2;
}

.account-settings-business-logo {
    grid-row: span 2;
    display: flex;
    align-items: flex-start;
    gap: 0.45rem;
}

.account-settings-business-logo .account-settings-logo-preview {
    width: 5.9rem;
    height: 4.25rem;
    border-color: transparent;
    background: #f1f5ff;
}

.account-settings-business-logo label small {
    color: #607094;
    font-size: 0.56rem;
    font-weight: 500;
    line-height: 1.3;
}

.account-settings-business-logo input[type="file"] {
    width: 100%;
    font-size: 0;
}

.account-settings-business-logo input[type="file"]::file-selector-button {
    min-height: 1.8rem;
    margin: 0;
    padding: 0.25rem 0.4rem;
    font-size: 0.58rem;
}

.account-settings-unavailable {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    margin-top: 0.6rem;
    padding: 0.55rem;
    border: 1px solid #e4eafb;
    border-radius: 7px;
    background: #f7f9ff;
    scroll-margin-top: 1rem;
}

.account-settings-unavailable > .organizer-icon {
    width: 1rem;
    height: 1rem;
    color: #0759e8;
}

.account-settings-unavailable > div {
    flex: 1;
}

.account-settings-unavailable strong,
.account-settings-unavailable > span {
    color: #233e7b;
    font-size: 0.63rem;
    font-weight: 700;
}

.account-settings-unavailable p {
    margin: 0.1rem 0 0;
    color: #657393;
    font-size: 0.6rem;
}

.account-settings-unavailable > span {
    color: #7b8498;
}

.account-settings-card-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 0.65rem;
}

.account-settings-card {
    padding: 0.7rem 0.75rem;
    scroll-margin-top: 1rem;
}

.account-settings-card .account-settings-card-heading {
    padding-bottom: 0.5rem;
    border-bottom: 1px solid #e7edf7;
}

.account-settings-card .account-settings-form {
    gap: 0.55rem;
    margin-top: 0.45rem;
}

.account-settings-toggle {
    gap: 0.45rem;
    padding: 0.42rem 0;
    border-bottom-color: #edf1f8;
}

.account-settings-toggle > span {
    gap: 0.08rem;
}

.account-settings-toggle strong {
    color: #102b6a;
    font-size: 0.65rem;
}

.account-settings-toggle small {
    font-size: 0.58rem;
}

.account-settings-toggle input[type="checkbox"] {
    appearance: none;
    position: relative;
    width: 1.9rem;
    height: 1.05rem;
    border-radius: 99px;
    background: #cbd4e4;
    cursor: pointer;
    transition: background-color 150ms ease;
}

.account-settings-toggle input[type="checkbox"]::after {
    position: absolute;
    top: 0.12rem;
    left: 0.12rem;
    width: 0.81rem;
    height: 0.81rem;
    border-radius: 50%;
    background: #fff;
    content: "";
    transition: transform 150ms ease;
}

.account-settings-toggle input[type="checkbox"]:checked {
    background: #0874f5;
}

.account-settings-toggle input[type="checkbox"]:checked::after {
    transform: translateX(0.85rem);
}

.account-settings-security-status {
    gap: 0.45rem;
    margin: 0;
    padding: 0.55rem 0;
    border: 0;
    border-radius: 0;
    border-bottom: 1px solid #edf1f8;
    background: transparent;
}

.account-settings-security-status > .organizer-icon {
    width: 0.9rem;
    height: 0.9rem;
    flex: 0 0 auto;
    color: #0874f5;
}

.account-settings-security-status strong {
    color: #102b6a;
    font-size: 0.63rem;
}

.account-settings-security-status p {
    font-size: 0.57rem;
}

.account-settings-status-label {
    font-size: 0.56rem;
}

.account-settings-small-button {
    flex: 0 0 auto;
    padding: 0.3rem 0.4rem;
    border: 1px solid #bdd2fa;
    border-radius: 5px;
    background: #fff;
    color: #0759e8;
    font: inherit;
    font-size: 0.55rem;
    font-weight: 700;
    text-decoration: none;
    cursor: pointer;
}

.account-settings-session-list {
    max-height: 12rem;
    overflow-y: auto;
    scroll-margin-top: 1rem;
}

.account-settings-session {
    padding: 0.45rem 0;
}

.account-settings-session strong {
    font-size: 0.62rem;
}

.account-settings-session p,
.account-settings-session small,
.account-settings-muted {
    font-size: 0.57rem;
}

.account-settings-danger-card {
    border-color: #ffd2d2;
    background: #fff7f7;
}

.account-settings-danger-card .account-settings-card-heading {
    border-color: #ffe1e1;
}

.account-settings-danger-card .account-settings-section-icon {
    background: #ffe5e5;
    color: #ed202b;
}

.account-settings-danger-card .account-settings-card-heading h2 {
    color: #c41d25;
}

.account-settings-deactivation {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.45rem;
    padding: 0.45rem 0;
    border-bottom: 1px solid #ffe1e1;
}

.account-settings-deactivation strong {
    color: #b51e27;
    font-size: 0.62rem;
}

.account-settings-deactivation p {
    margin: 0.08rem 0 0;
    color: #8e5960;
    font-size: 0.55rem;
}

.account-settings-deactivation > span {
    color: #9e5056;
    font-size: 0.55rem;
    font-weight: 700;
}

.account-settings-danger-card .account-delete-section {
    align-items: center;
    gap: 0.5rem;
    padding-top: 0.5rem;
}

.account-settings-danger-card .account-delete-section header p {
    font-size: 0.58rem;
    line-height: 1.35;
}

.account-settings-danger-card .account-delete-section > button {
    min-height: 1.8rem;
    padding: 0.3rem 0.55rem;
    border-radius: 5px;
    background: #fff !important;
    color: #d71920 !important;
    box-shadow: inset 0 0 0 1px #ff8c90;
    font-size: 0.58rem;
}

.account-settings-alert {
    margin-bottom: 0.65rem;
    padding: 0.55rem 0.75rem;
    border-radius: 8px;
    font-size: 0.75rem;
}

@media (max-width: 760px) {
    .account-settings-page {
        width: calc(100% - 1rem);
        margin-top: 0.65rem;
    }

    .account-settings-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 0.6rem;
    }

    .account-settings-layout > .account-settings-nav {
        position: static;
        flex-direction: row;
        gap: 0.25rem;
        padding: 0.35rem;
        overflow-x: auto;
    }

    .account-settings-layout > .account-settings-nav a,
    .account-settings-layout > .account-settings-nav a:first-child {
        min-width: max-content;
        min-height: 2.35rem;
        font-size: 0.66rem;
    }

    .account-settings-card-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 520px) {
    .account-settings-heading h1 {
        font-size: 1.45rem;
    }

    .account-settings-profile-content {
        grid-template-columns: minmax(0, 1fr);
    }

    .account-settings-password {
        grid-column: 1;
    }

    .account-settings-business-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .account-settings-business-logo {
        grid-column: 1 / -1;
        grid-row: auto;
    }
}

* {
    scrollbar-width: none !important;
}

*::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
}

@media (min-width: 1440px) {
    .container,
    .customer-catalog,
    .event-detail-wrap,
    .page-shell,
    .dashboard-shell,
    .dashboard-shell-with-sidebar {
        width: calc(100% - 3rem);
        max-width: none;
    }
}

.organizer-landing {
    overflow: hidden;
    background: #fff;
}

.organizer-landing-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: #fff;
    color: #172033;
}

.organizer-landing-hero::before,
.organizer-landing-hero::after {
    display: none;
}

.organizer-landing-hero-grid {
    display: grid;
    min-height: 34rem;
    grid-template-columns: minmax(0, 1fr) minmax(0, 0.9fr);
    align-items: center;
    gap: clamp(2.5rem, 6vw, 6rem);
    padding-block: clamp(3rem, 6vw, 5rem);
}

.organizer-landing-copy {
    position: relative;
    z-index: 1;
    max-width: 39rem;
}

.organizer-landing-eyebrow,
.organizer-landing-kicker {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    color: #0759c7;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.organizer-landing-eyebrow {
    padding: 0.55rem 0.8rem;
    border: 1px solid #dce5f4;
    border-radius: 999px;
    background: #f7f9fd;
}

.organizer-landing-eyebrow > span {
    width: 0.48rem;
    height: 0.48rem;
    border-radius: 50%;
    background: #007bff;
    box-shadow: 0 0 0 4px rgba(0, 123, 255, 0.12);
}

.organizer-landing-copy h1 {
    margin: 1.5rem 0 1.2rem;
    color: #0b1f6b;
    font-size: clamp(2.8rem, 5.2vw, 5.2rem);
    font-weight: 800;
    letter-spacing: -0.065em;
    line-height: 1.02;
}

.organizer-landing-copy h1 span {
    color: #1268d6;
}

.organizer-landing-lead {
    max-width: 35rem;
    margin: 0;
    color: #687386;
    font-size: clamp(1rem, 1.35vw, 1.15rem);
    line-height: 1.8;
}

.organizer-landing-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1rem 1.5rem;
    margin-top: 2rem;
}

.organizer-landing-button {
    display: inline-flex;
    min-height: 3.25rem;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    padding: 0.8rem 1.25rem;
    border: 1px solid #ffd45d;
    border-radius: 0.75rem;
    background: #ffd45d;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.18);
    color: #091b56;
    font-size: 0.9rem;
    font-weight: 800;
    text-decoration: none;
    transition: box-shadow 160ms ease, background-color 160ms ease;
}

.organizer-landing-button:hover {
    background: #ffe08a;
    box-shadow: 0 16px 34px rgba(0, 0, 0, 0.22);
}

.organizer-landing-button:focus-visible,
.organizer-landing-secondary-link:focus-visible,
.organizer-landing-text-link:focus-visible {
    outline: 3px solid #007bff;
    outline-offset: 4px;
}

.organizer-landing-secondary-link {
    display: inline-flex;
    min-height: 2.75rem;
    align-items: center;
    gap: 0.55rem;
    color: #0b1f6b;
    font-size: 0.88rem;
    font-weight: 700;
    text-decoration: none;
}

.organizer-landing-secondary-link:hover {
    color: #1268d6;
}

.organizer-landing-highlights {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem 1.25rem;
    margin-top: 2rem;
    color: #44516a;
    font-size: 0.75rem;
    font-weight: 600;
}

.organizer-landing-highlights span {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
}

.organizer-landing-highlights i {
    display: grid;
    width: 1.15rem;
    height: 1.15rem;
    place-items: center;
    border: 1px solid #9ec7ff;
    border-radius: 50%;
    color: #0759c7;
    font-size: 0.65rem;
    font-style: normal;
}

.organizer-landing-art {
    display: grid;
    min-width: 0;
    place-items: center;
}

.organizer-ticket-carousel {
    width: 100%;
}

.organizer-ticket-carousel-slides {
    display: grid;
    min-height: 18rem;
    overflow: hidden;
    place-items: center;
}

.organizer-ticket-carousel-slide {
    display: grid;
    width: 100%;
    justify-items: center;
    gap: 0.7rem;
    margin: 0;
}

.organizer-ticket-carousel-slide[hidden] {
    display: none;
}

.organizer-ticket-carousel-slide img {
    display: block;
    width: 100%;
    max-height: 24rem;
    object-fit: contain;
}

.organizer-ticket-carousel-slide figcaption {
    color: #687386;
    font-size: 0.82rem;
    font-weight: 700;
    text-align: center;
}

.organizer-ticket-carousel-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.8rem;
    margin-top: 1rem;
}

.organizer-ticket-carousel-arrow {
    min-width: 2.5rem;
    min-height: 2.5rem;
    border: 1px solid #dce2ec;
    border-radius: 999px;
    background: #fff;
    color: #0b1f6b;
    cursor: pointer;
    font: inherit;
    font-weight: 700;
    font-size: 1.5rem;
    line-height: 1;
}

.organizer-ticket-carousel-arrow:hover {
    border-color: #9ec7ff;
    background: #f7f9fd;
}

.organizer-ticket-carousel-arrow:focus-visible,
.organizer-ticket-carousel-dot:focus-visible {
    outline: 3px solid #007bff;
    outline-offset: 3px;
}

.organizer-ticket-carousel-dots {
    display: flex;
    align-items: center;
    gap: 0.45rem;
}

.organizer-ticket-carousel-dot {
    width: 0.65rem;
    height: 0.65rem;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #cbd4e3;
    cursor: pointer;
}

.organizer-ticket-carousel-dot[aria-pressed="true"] {
    background: #0759c7;
    box-shadow: 0 0 0 3px #e6f1ff;
}

.organizer-landing-intro {
    border-bottom: 1px solid #e8edf6;
    background: #fff;
}

.organizer-landing-intro-inner {
    display: flex;
    min-height: 6rem;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1rem 2rem;
    color: #0b1f6b;
}

.organizer-landing-intro-inner > span {
    color: #687694;
    font-size: 0.76rem;
    font-weight: 700;
}

.organizer-landing-intro-inner > div {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    font-size: 0.82rem;
    font-weight: 700;
}

.organizer-landing-intro-inner i {
    color: #0b75e8;
    font-size: 0.68rem;
    font-style: normal;
    font-weight: 800;
    letter-spacing: 0.04em;
}

.organizer-landing-section {
    padding: clamp(4rem, 8vw, 7rem) 0;
    background: #f5f7fc;
}

.organizer-landing-section-heading {
    max-width: 47rem;
    margin: 0 auto 3rem;
    text-align: center;
}

.organizer-landing-kicker {
    color: #0759c7;
    font-size: 0.7rem;
}

.organizer-landing-section-heading h2,
.organizer-landing-workflow-copy h2,
.organizer-landing-cta h2 {
    margin: 0.8rem 0;
    color: #0b1f6b;
    font-size: clamp(2rem, 3.8vw, 3.3rem);
    font-weight: 800;
    letter-spacing: -0.055em;
    line-height: 1.1;
}

.organizer-landing-section-heading h2 span {
    color: #1268d6;
}

.organizer-landing-section-heading > p,
.organizer-landing-workflow-copy > p,
.organizer-landing-cta p {
    margin: 0;
    color: #657393;
    font-size: 0.95rem;
    line-height: 1.75;
}

.organizer-landing-feature-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.25rem;
}

.organizer-landing-feature {
    position: relative;
    min-width: 0;
    padding: 1.65rem;
    border: 1px solid #e2e8f3;
    border-radius: 1.15rem;
    background: #fff;
    box-shadow: 0 12px 30px rgba(11, 31, 107, 0.045);
    transition: box-shadow 160ms ease, border-color 160ms ease;
}

.organizer-landing-feature:hover {
    border-color: #b6cdf3;
    box-shadow: 0 20px 40px rgba(11, 31, 107, 0.09);
}

.organizer-landing-feature-icon {
    display: grid;
    width: 3rem;
    height: 3rem;
    place-items: center;
    margin-bottom: 1.35rem;
    border-radius: 0.9rem;
}

.organizer-landing-feature-icon svg {
    width: 1.5rem;
    height: 1.5rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.7;
}

.organizer-feature-blue {
    background: #edf3ff;
    color: #0759e8;
}

.organizer-feature-gold {
    background: #fff5d8;
    color: #a57100;
}

.organizer-feature-red {
    background: #fff0ef;
    color: #d53835;
}

.organizer-landing-feature-number {
    color: #75839e;
    font-size: 0.63rem;
    font-weight: 800;
    letter-spacing: 0.12em;
}

.organizer-landing-feature h3 {
    margin: 0.45rem 0;
    color: #0b1f6b;
    font-size: 1.15rem;
    letter-spacing: -0.025em;
}

.organizer-landing-feature p {
    margin: 0;
    color: #657393;
    font-size: 0.84rem;
    line-height: 1.75;
}

.organizer-landing-workflow {
    padding: clamp(4rem, 8vw, 7rem) 0;
    background: #fff;
    scroll-margin-top: 5rem;
}

.organizer-landing-workflow-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
    align-items: start;
    gap: clamp(2.5rem, 8vw, 8rem);
}

.organizer-landing-workflow-copy {
    position: sticky;
    top: 7rem;
}

.organizer-landing-workflow-copy h2 {
    max-width: 28rem;
}

.organizer-landing-workflow-copy h2 span {
    color: #1268d6;
}

.organizer-landing-text-link {
    display: inline-flex;
    min-height: 2.75rem;
    align-items: center;
    gap: 0.55rem;
    margin-top: 1.3rem;
    color: #0759c7;
    font-size: 0.86rem;
    font-weight: 800;
    text-decoration: none;
}

.organizer-landing-text-link:hover {
    color: #0b1f6b;
}

.organizer-landing-steps {
    position: relative;
    display: grid;
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
}

.organizer-landing-steps::before {
    position: absolute;
    top: 1.6rem;
    bottom: 1.6rem;
    left: 1.55rem;
    width: 1px;
    background: #dce5f4;
    content: "";
}

.organizer-landing-steps li {
    position: relative;
    display: grid;
    grid-template-columns: 3.1rem minmax(0, 1fr);
    gap: 1rem;
    padding: 0 0 1.65rem;
}

.organizer-landing-steps li:last-child {
    padding-bottom: 0;
}

.organizer-landing-steps li > span {
    z-index: 1;
    display: grid;
    width: 3.1rem;
    height: 3.1rem;
    place-items: center;
    border: 1px solid #dce5f4;
    border-radius: 50%;
    background: #fff;
    color: #0759c7;
    font-size: 0.75rem;
    font-weight: 800;
}

.organizer-landing-steps h3 {
    margin: 0.25rem 0 0.35rem;
    color: #0b1f6b;
    font-size: 1rem;
}

.organizer-landing-steps p {
    margin: 0;
    color: #657393;
    font-size: 0.82rem;
    line-height: 1.7;
}

.organizer-landing-cta {
    padding: 0 0 clamp(4rem, 7vw, 6rem);
    background: #fff;
}

.organizer-landing-cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    padding: clamp(1.75rem, 5vw, 3.5rem);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 1.5rem;
    background:
        radial-gradient(ellipse at 85% 15%, rgba(0, 123, 255, 0.32), transparent 42%),
        #0b1f6b;
    box-shadow: 0 22px 54px rgba(11, 31, 107, 0.16);
}

.organizer-landing-cta h2 {
    color: #fff;
    font-size: clamp(1.8rem, 3.2vw, 2.7rem);
}

.organizer-landing-cta p {
    max-width: 38rem;
    color: #dce5ff;
}

.organizer-landing-cta .organizer-landing-button {
    flex: 0 0 auto;
}

@media (max-width: 1000px) {
    .organizer-landing-hero-grid {
        min-height: 0;
        grid-template-columns: minmax(0, 1fr) minmax(0, 0.85fr);
        gap: 2rem;
    }

    .organizer-landing-workflow-grid {
        gap: 3rem;
    }
}

@media (max-width: 760px) {
    .organizer-landing-hero-grid {
        grid-template-columns: minmax(0, 1fr);
        padding-block: 3.5rem 4rem;
    }

    .organizer-landing-copy {
        max-width: 42rem;
    }

    .organizer-landing-copy h1 {
        max-width: 39rem;
        font-size: clamp(2.55rem, 9vw, 4rem);
    }

    .organizer-landing-art {
        width: min(100%, 34rem);
        min-height: 0;
        justify-self: center;
        padding: 0;
    }

    .organizer-ticket-carousel-slides {
        min-height: 14rem;
    }

    .organizer-ticket-carousel-slide img {
        max-height: 21rem;
    }

    .organizer-landing-intro-inner {
        justify-content: flex-start;
        padding-block: 1.25rem;
    }

    .organizer-landing-intro-inner > span {
        width: 100%;
    }

    .organizer-landing-feature-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-landing-feature {
        padding: 1.35rem;
    }

    .organizer-landing-workflow-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 2rem;
    }

    .organizer-landing-workflow-copy {
        position: static;
    }

    .organizer-landing-cta-inner {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 480px) {
    .organizer-landing-hero-grid {
        gap: 2.75rem;
        padding-top: 2.5rem;
    }

    .organizer-landing-copy h1 {
        margin-top: 1.1rem;
        font-size: clamp(2.35rem, 11vw, 3.1rem);
    }

    .organizer-landing-lead {
        font-size: 0.94rem;
    }

    .organizer-landing-actions {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.4rem;
    }

    .organizer-landing-button {
        width: 100%;
    }

    .organizer-landing-highlights {
        display: grid;
        gap: 0.65rem;
    }

    .organizer-ticket-carousel-slides {
        min-height: 10rem;
    }

    .organizer-ticket-carousel-slide img {
        max-height: 15rem;
    }

    .organizer-ticket-carousel-controls {
        gap: 0.55rem;
    }

    .organizer-landing-intro-inner > div {
        font-size: 0.75rem;
    }

    .organizer-landing-steps li {
        grid-template-columns: 2.65rem minmax(0, 1fr);
        gap: 0.8rem;
    }

    .organizer-landing-steps li > span {
        width: 2.65rem;
        height: 2.65rem;
    }

    .organizer-landing-steps::before {
        left: 1.3rem;
    }

    .organizer-landing-cta .organizer-landing-button {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .organizer-landing *,
    .organizer-landing *::before,
    .organizer-landing *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
    }

    .organizer-ticket-carousel-slide {
        animation: none;
    }
}

.organizer-landing-previews {
    padding: clamp(4rem, 8vw, 7rem) 0;
    background: #fff;
}

.organizer-landing-previews .organizer-landing-section-heading {
    margin-bottom: 2.5rem;
}

.organizer-landing-previews .organizer-landing-section-heading h2 span {
    color: #1268d6;
}

.organizer-preview-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 1rem;
}

.organizer-preview-panel {
    min-width: 0;
    padding: 1.15rem;
    border: 1px solid #e1e8f4;
    border-radius: 1.1rem;
    background: #f9faff;
    box-shadow: 0 12px 32px rgba(11, 31, 107, 0.055);
}

.organizer-preview-event-panel {
    grid-column: 1 / -1;
}

.organizer-preview-ticket-panel,
.organizer-preview-scanner-panel {
    grid-column: span 3;
}

.organizer-preview-panel-heading {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.organizer-preview-panel-icon {
    display: grid;
    width: 2.55rem;
    height: 2.55rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 0.8rem;
}

.organizer-preview-panel-icon svg {
    width: 1.3rem;
    height: 1.3rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.7;
}

.organizer-preview-panel-heading > span:nth-child(2) {
    display: grid;
    min-width: 0;
    gap: 0.12rem;
}

.organizer-preview-panel-heading strong {
    color: #0b1f6b;
    font-size: 0.85rem;
}

.organizer-preview-panel-heading small {
    color: #73809b;
    font-size: 0.68rem;
}

.organizer-preview-window-dots {
    display: flex;
    gap: 0.25rem;
    margin-left: auto;
}

.organizer-preview-window-dots i {
    width: 0.45rem;
    height: 0.45rem;
    border-radius: 50%;
    background: #d3dbea;
}

.organizer-preview-window-dots i:first-child {
    background: #ed6a63;
}

.organizer-preview-window-dots i:nth-child(2) {
    background: #f2bf4a;
}

.organizer-preview-window-dots i:last-child {
    background: #52b788;
}

.organizer-preview-browser {
    overflow: hidden;
    border: 1px solid #dfe6f2;
    border-radius: 0.85rem;
    background: #fff;
}

.organizer-preview-browser-bar {
    display: flex;
    height: 2.2rem;
    align-items: center;
    gap: 0.32rem;
    padding: 0 0.8rem;
    border-bottom: 1px solid #e8edf5;
    background: #fff;
}

.organizer-preview-browser-bar > span {
    width: 0.38rem;
    height: 0.38rem;
    border-radius: 50%;
    background: #d3dbea;
}

.organizer-preview-browser-bar > i {
    width: min(45%, 18rem);
    height: 0.42rem;
    margin-left: auto;
    margin-right: auto;
    border-radius: 999px;
    background: #f0f3f8;
}

.organizer-preview-event-art {
    position: relative;
    display: flex;
    min-height: 12rem;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
    padding: clamp(1.2rem, 4vw, 2.5rem);
    background:
        radial-gradient(circle at 79% 38%, rgba(247, 197, 72, 0.26), transparent 18%),
        linear-gradient(115deg, #081b5c, #123a9a 62%, #0759c7);
    color: #fff;
}

.organizer-preview-event-art::before,
.organizer-preview-event-art::after {
    position: absolute;
    right: 12%;
    bottom: -7rem;
    width: 19rem;
    height: 19rem;
    border: 1px solid rgba(255, 255, 255, 0.17);
    border-radius: 50%;
    content: "";
}

.organizer-preview-event-art::after {
    right: 5%;
    bottom: -10rem;
    width: 25rem;
    height: 25rem;
    border-color: rgba(247, 197, 72, 0.24);
}

.organizer-preview-art-kicker,
.organizer-preview-art-title,
.organizer-preview-art-mark {
    position: relative;
    z-index: 1;
}

.organizer-preview-art-kicker {
    color: #f7c548;
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.16em;
}

.organizer-preview-art-title {
    margin-top: 0.4rem;
    font-size: clamp(1.5rem, 3vw, 2.35rem);
    font-weight: 800;
    letter-spacing: -0.045em;
    line-height: 1.04;
}

.organizer-preview-art-mark {
    position: absolute;
    top: 50%;
    right: clamp(1.5rem, 8vw, 7rem);
    display: grid;
    width: 5.2rem;
    height: 5.2rem;
    place-items: center;
    transform: translateY(-50%);
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 1.3rem;
    background: rgba(255, 255, 255, 0.1);
    color: #f7c548;
    backdrop-filter: blur(8px);
}

.organizer-preview-art-mark svg {
    width: 2.6rem;
    height: 2.6rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.4;
}

.organizer-preview-art-glow {
    position: absolute;
    top: 25%;
    right: 20%;
    width: 9rem;
    height: 9rem;
    border-radius: 50%;
    background: rgba(0, 123, 255, 0.3);
    filter: blur(35px);
}

.organizer-preview-event-info {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.15rem;
}

.organizer-preview-category,
.organizer-preview-review {
    color: #74819a;
    font-size: 0.57rem;
    font-weight: 800;
    letter-spacing: 0.09em;
}

.organizer-preview-event-info h3 {
    margin: 0.2rem 0;
    color: #0b1f6b;
    font-size: 1rem;
}

.organizer-preview-event-info p {
    margin: 0;
    color: #72809a;
    font-size: 0.7rem;
}

.organizer-preview-review {
    flex: 0 0 auto;
    padding: 0.4rem 0.55rem;
    border: 1px solid #e6ebf4;
    border-radius: 999px;
    background: #f8faff;
}

.organizer-preview-event-footer {
    display: flex;
    min-height: 3.2rem;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.5rem 1.15rem;
    border-top: 1px solid #edf0f5;
    color: #657393;
    font-size: 0.68rem;
}

.organizer-preview-event-footer > span:first-child {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
}

.organizer-preview-event-footer i,
.organizer-preview-scanner-ready i,
.organizer-preview-scanner-top > span:first-child i {
    width: 0.45rem;
    height: 0.45rem;
    border-radius: 50%;
    background: #27a36a;
}

.organizer-preview-demo-button {
    padding: 0.45rem 0.65rem;
    border-radius: 0.45rem;
    background: #fff1d2;
    color: #805a00;
    font-size: 0.62rem;
    font-weight: 800;
}

.organizer-preview-caption {
    margin: 0.85rem 0 0;
    color: #657393;
    font-size: 0.72rem;
    line-height: 1.65;
}

.organizer-preview-ticket {
    position: relative;
    overflow: hidden;
    border: 1px solid #e2e8f3;
    border-radius: 0.9rem;
    background: #fff;
    box-shadow: 0 10px 24px rgba(11, 31, 107, 0.06);
}

.organizer-preview-ticket-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.6rem;
    padding: 0.75rem 0.9rem;
    border-bottom: 1px solid #e9edf4;
}

.organizer-preview-ticket-top img {
    width: 5.25rem;
    height: 2rem;
    object-fit: contain;
    object-position: left center;
}

.organizer-preview-ticket-top > span {
    color: #71809c;
    font-size: 0.55rem;
    font-weight: 800;
    letter-spacing: 0.1em;
}

.organizer-preview-ticket-event {
    padding: 0.9rem;
    border-bottom: 1px dashed #dce4f2;
}

.organizer-preview-ticket-event > span {
    color: #0759c7;
    font-size: 0.55rem;
    font-weight: 800;
    letter-spacing: 0.1em;
}

.organizer-preview-ticket-event h3 {
    margin: 0.25rem 0 0.55rem;
    color: #0b1f6b;
    font-size: 1rem;
}

.organizer-preview-ticket-event p {
    margin: 0.25rem 0 0;
    color: #657393;
    font-size: 0.68rem;
}

.organizer-preview-ticket-event p span {
    display: inline-block;
    width: 1rem;
    color: #0759c7;
    font-weight: 800;
    text-align: center;
}

.organizer-preview-ticket-stub {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    padding: 0.75rem 0.9rem 1.3rem;
}

.organizer-preview-ticket-stub > span:last-child {
    display: grid;
    gap: 0.12rem;
}

.organizer-preview-ticket-stub small {
    color: #78859e;
    font-size: 0.52rem;
    font-weight: 700;
    letter-spacing: 0.07em;
}

.organizer-preview-ticket-stub strong {
    color: #0b1f6b;
    font-size: 0.75rem;
}

.organizer-preview-ticket-qr {
    position: relative;
    display: block;
    width: 3.6rem;
    height: 3.6rem;
    flex: 0 0 auto;
    border: 0.28rem solid #fff;
    outline: 1px solid #e1e7f0;
    background-color: #edf2fb;
    background-image:
        linear-gradient(90deg, #193576 25%, transparent 25% 50%, #193576 50% 75%, transparent 75%),
        linear-gradient(#193576 25%, transparent 25% 50%, #193576 50% 75%, transparent 75%);
    background-position: 0 0, 3px 4px;
    background-size: 9px 9px;
}

.organizer-preview-ticket-qr::before,
.organizer-preview-ticket-qr::after,
.organizer-preview-ticket-qr i {
    position: absolute;
    width: 0.85rem;
    height: 0.85rem;
    border: 0.17rem solid #193576;
    background: #fff;
    content: "";
}

.organizer-preview-ticket-qr::before {
    top: 0.12rem;
    left: 0.12rem;
}

.organizer-preview-ticket-qr::after {
    top: 0.12rem;
    right: 0.12rem;
}

.organizer-preview-ticket-qr i {
    bottom: 0.12rem;
    left: 0.12rem;
}

.organizer-preview-watermark {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 0.28rem;
    background: #fff2d6;
    color: #815d09;
    font-size: 0.48rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-align: center;
}

.organizer-preview-scanner {
    overflow: hidden;
    border-radius: 0.85rem;
    background: #101b33;
    color: #fff;
}

.organizer-preview-scanner-top,
.organizer-preview-scanner-bottom {
    display: flex;
    min-height: 2.5rem;
    align-items: center;
    justify-content: space-between;
    gap: 0.6rem;
    padding: 0.55rem 0.75rem;
}

.organizer-preview-scanner-top {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.organizer-preview-scanner-top > span:first-child,
.organizer-preview-scanner-ready {
    display: inline-flex;
    align-items: center;
    gap: 0.38rem;
    font-size: 0.58rem;
    font-weight: 800;
    letter-spacing: 0.06em;
}

.organizer-preview-scanner-top > span:first-child i,
.organizer-preview-scanner-ready i {
    display: inline-block;
    background: #65d8a1;
    box-shadow: 0 0 0 3px rgba(101, 216, 161, 0.12);
}

.organizer-preview-scanner-top > span:last-child {
    color: #a7b5d1;
    font-size: 0.52rem;
    font-weight: 700;
    letter-spacing: 0.09em;
}

.organizer-preview-camera {
    position: relative;
    display: grid;
    min-height: 8.6rem;
    place-items: center;
    overflow: hidden;
    background:
        radial-gradient(ellipse at center, rgba(0, 123, 255, 0.18), transparent 60%),
        linear-gradient(135deg, #172949, #0d1830);
}

.organizer-preview-camera::after {
    position: absolute;
    right: 12%;
    left: 12%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(101, 216, 161, 0.8), transparent);
    box-shadow: 0 0 14px rgba(101, 216, 161, 0.55);
    content: "";
}

.organizer-preview-camera-ticket {
    display: grid;
    width: 3.25rem;
    height: 3.25rem;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 0.75rem;
    background: rgba(255, 255, 255, 0.08);
    color: #dce5ff;
}

.organizer-preview-camera-ticket svg {
    width: 1.8rem;
    height: 1.8rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.6;
}

.organizer-preview-camera-prompt {
    position: absolute;
    bottom: 0.8rem;
    color: #a7b5d1;
    font-size: 0.56rem;
}

.organizer-preview-scan-corner {
    position: absolute;
    z-index: 1;
    width: 1rem;
    height: 1rem;
    border-color: #65d8a1;
    border-style: solid;
}

.organizer-scan-top-left {
    top: 0.7rem;
    left: 18%;
    border-width: 2px 0 0 2px;
    border-radius: 0.35rem 0 0;
}

.organizer-scan-top-right {
    top: 0.7rem;
    right: 18%;
    border-width: 2px 2px 0 0;
    border-radius: 0 0.35rem 0 0;
}

.organizer-scan-bottom-left {
    bottom: 0.7rem;
    left: 18%;
    border-width: 0 0 2px 2px;
    border-radius: 0 0 0 0.35rem;
}

.organizer-scan-bottom-right {
    right: 18%;
    bottom: 0.7rem;
    border-width: 0 2px 2px 0;
    border-radius: 0 0 0.35rem;
}

.organizer-preview-scanner-bottom {
    flex-wrap: wrap;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.organizer-preview-scanner-ready {
    color: #c9f3dc;
    letter-spacing: 0;
}

.organizer-preview-manual {
    color: #a7b5d1;
    font-size: 0.55rem;
}

.organizer-preview-disclaimer {
    margin: 1rem 0 0;
    color: #78859e;
    font-size: 0.62rem;
    text-align: center;
}

@media (max-width: 760px) {
    .organizer-preview-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-preview-event-panel,
    .organizer-preview-ticket-panel,
    .organizer-preview-scanner-panel {
        grid-column: 1;
    }
}

@media (max-width: 480px) {
    .organizer-preview-panel {
        padding: 0.85rem;
    }

    .organizer-preview-panel-heading {
        gap: 0.55rem;
    }

    .organizer-preview-panel-heading small {
        font-size: 0.61rem;
    }

    .organizer-preview-event-info {
        align-items: flex-start;
        flex-direction: column;
    }

    .organizer-preview-review {
        align-self: flex-start;
    }

    .organizer-preview-art-mark {
        right: 1rem;
        width: 3.5rem;
        height: 3.5rem;
        border-radius: 1rem;
    }

    .organizer-preview-art-mark svg {
        width: 1.8rem;
        height: 1.8rem;
    }
}

.organizer-preview-etag-panel {
    grid-column: span 3;
}

.organizer-preview-scanner-panel {
    grid-column: 1 / -1;
}

.organizer-preview-etag {
    position: relative;
    overflow: hidden;
    padding: 1.1rem;
    border: 1px solid #e6eaf2;
    border-radius: 1rem;
    background: linear-gradient(145deg, #fff 0%, #f5f8ff 100%);
    box-shadow: 0 15px 34px rgba(11, 31, 107, 0.1);
}

.organizer-preview-etag-heading,
.organizer-preview-etag-footer,
.organizer-preview-etag-body {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.organizer-preview-etag-heading {
    padding-bottom: 0.9rem;
    border-bottom: 1px dashed #cfd7e6;
}

.organizer-preview-etag-heading > span,
.organizer-preview-etag-body > div > span,
.organizer-preview-etag-body > div > small,
.organizer-preview-etag-footer {
    color: #647087;
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.08em;
}

.organizer-preview-etag-heading .brand-logo,
.organizer-preview-etag-heading .brand-logo img {
    width: 6rem;
    max-height: 2rem;
}

.organizer-preview-etag-body {
    padding: 1.2rem 0;
}

.organizer-preview-etag-body > div {
    display: grid;
    gap: 0.45rem;
}

.organizer-preview-etag-body > div > strong {
    color: #14213d;
    font-size: 1.12rem;
}

.organizer-preview-etag-body > div > small {
    font-size: 0.66rem;
}

.organizer-preview-etag-qr,
.organizer-preview-etag-qr::before,
.organizer-preview-etag-qr::after,
.organizer-preview-etag-qr i {
    display: block;
    width: 4.5rem;
    height: 4.5rem;
}

.organizer-preview-etag-qr {
    position: relative;
    flex: 0 0 auto;
    border: 0.45rem solid #fff;
    outline: 1px solid #e0e5ef;
    background:
        linear-gradient(90deg, #11245b 25%, transparent 25% 50%, #11245b 50% 75%, transparent 75%) 0 0 / 12px 12px,
        linear-gradient(#11245b 25%, transparent 25% 50%, #11245b 50% 75%, transparent 75%) 0 0 / 12px 12px;
}

.organizer-preview-etag-qr::before,
.organizer-preview-etag-qr::after,
.organizer-preview-etag-qr i {
    position: absolute;
    width: 0.8rem;
    height: 0.8rem;
    border: 0.22rem solid #11245b;
    background: #fff;
}

.organizer-preview-etag-qr::before {
    top: 0;
    left: 0;
    content: "";
}

.organizer-preview-etag-qr::after {
    top: 0;
    right: 0;
    content: "";
}

.organizer-preview-etag-qr i {
    bottom: 0;
    left: 0;
}

.organizer-preview-etag-footer {
    padding-top: 0.85rem;
    border-top: 1px dashed #cfd7e6;
}

.organizer-preview-etag-footer strong {
    color: #176b38;
}

.guest-tag-create-card,
.guest-tag-list-card {
    margin-bottom: 1.25rem;
}

.guest-tag-card-heading,
.guest-tag-list-heading,
.guest-tag-row-main,
.guest-tag-row-actions {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.guest-tag-card-heading,
.guest-tag-list-heading {
    justify-content: space-between;
}

.guest-tag-card-icon {
    display: grid;
    width: 2.8rem;
    height: 2.8rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 0.9rem;
    background: #edf5ff;
    color: var(--vdm-blue);
}

.guest-tag-card-icon svg,
.guest-tag-security-note svg {
    width: 1.25rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.guest-tag-card-heading h2,
.guest-tag-list-heading h2 {
    margin: 0;
}

.guest-tag-card-heading p,
.guest-tag-empty-state p {
    margin: 0.35rem 0 0;
    color: var(--vdm-muted);
}

.guest-tag-create-form {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
    align-items: end;
    gap: 0.9rem;
    margin-top: 1.4rem;
}

.guest-tag-security-note {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    margin: 1rem 0 0;
    color: var(--vdm-muted);
    font-size: 0.82rem;
}

.guest-tag-security-note svg {
    flex: 0 0 auto;
    color: var(--vdm-success);
}

.guest-tag-list-count {
    padding: 0.35rem 0.65rem;
    border-radius: 999px;
    background: #edf5ff;
    color: #0759c7;
    font-size: 0.78rem;
    font-weight: 700;
}

.guest-tag-list {
    margin-top: 1rem;
}

.guest-tag-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr);
    align-items: center;
    gap: 1rem;
    padding: 1rem 0;
    border-top: 1px solid var(--vdm-border);
}

.guest-tag-row-main {
    min-width: 0;
}

.guest-tag-avatar {
    display: grid;
    width: 2.6rem;
    height: 2.6rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 50%;
    background: #eaf0ff;
    color: var(--vdm-navy);
    font-weight: 800;
}

.guest-tag-guest {
    display: grid;
    min-width: 0;
    gap: 0.18rem;
}

.guest-tag-guest strong,
.guest-tag-guest span,
.guest-tag-guest small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.guest-tag-guest span,
.guest-tag-guest small {
    color: var(--vdm-muted);
    font-size: 0.78rem;
}

.guest-tag-status {
    margin-left: auto;
    padding: 0.3rem 0.6rem;
    border-radius: 999px;
    background: #edf5ff;
    color: #0759c7;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: capitalize;
}

.guest-tag-status-checked_in {
    background: var(--vdm-success-soft);
    color: var(--vdm-success);
}

.guest-tag-status-revoked {
    background: var(--vdm-red-soft);
    color: var(--vdm-red-ink);
}

.guest-tag-row-actions {
    justify-content: flex-end;
    flex-wrap: wrap;
}

.guest-tag-row-actions form {
    margin: 0;
}

.guest-tag-share-field {
    flex: 1 1 14rem;
}

.guest-tag-share-field input {
    width: 100%;
    min-width: 0;
}

.guest-tag-share-feedback {
    flex-basis: 100%;
    color: var(--vdm-success);
    font-size: 0.75rem;
    text-align: right;
}

.guest-tag-pass-page {
    display: grid;
    width: min(100% - 2rem, 42rem);
    gap: 1rem;
    margin: 2rem auto;
}

.guest-tag-pass-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    color: var(--vdm-muted);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.1em;
}

.guest-tag-pass-heading .brand-logo,
.guest-tag-pass-heading .brand-logo img {
    width: 8rem;
    max-height: 2.5rem;
}

.guest-tag-pass-card {
    overflow: hidden;
    border: 1px solid var(--vdm-border);
    border-radius: 1.25rem;
    background: var(--vdm-white);
    box-shadow: 0 22px 65px rgba(11, 31, 107, 0.12);
}

.guest-tag-pass-state {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 1rem 1.25rem;
    background: var(--vdm-warning-soft);
    color: var(--vdm-warning);
}

.guest-tag-pass-state-used {
    background: var(--vdm-success-soft);
    color: var(--vdm-success);
}

.guest-tag-pass-state-revoked {
    background: var(--vdm-red-soft);
    color: var(--vdm-red-ink);
}

.guest-tag-pass-state p {
    margin: 0.25rem 0 0;
}

.guest-tag-pass-event {
    display: grid;
    grid-template-columns: 8rem minmax(0, 1fr);
    gap: 1.1rem;
    padding: 1.5rem;
}

.guest-tag-pass-event > img,
.guest-tag-pass-event-placeholder {
    width: 8rem;
    height: 8rem;
    border-radius: 0.85rem;
    object-fit: cover;
}

.guest-tag-pass-event-placeholder {
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, var(--vdm-navy), var(--vdm-blue));
    color: white;
    font-weight: 800;
}

.guest-tag-pass-event > div:last-child > span,
.guest-tag-pass-details span {
    color: var(--vdm-muted);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.08em;
}

.guest-tag-pass-event h1 {
    margin: 0.4rem 0;
    font-size: 1.4rem;
}

.guest-tag-pass-event p {
    margin: 0.25rem 0;
    color: var(--vdm-muted);
}

.guest-tag-pass-divider {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0 1.5rem;
}

.guest-tag-pass-divider span {
    height: 1px;
    flex: 1;
    background: var(--vdm-border);
}

.guest-tag-pass-divider i {
    width: 0.8rem;
    height: 0.8rem;
    border: 1px solid var(--vdm-border);
    border-radius: 50%;
    background: var(--vdm-background);
}

.guest-tag-pass-details {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    padding: 1.4rem 1.5rem;
}

.guest-tag-pass-details > div {
    display: grid;
    gap: 0.35rem;
}

.guest-tag-pass-details strong {
    overflow-wrap: anywhere;
}

.guest-tag-pass-qr-wrap {
    display: grid;
    justify-items: center;
    gap: 0.45rem;
    padding: 1.5rem;
    border-top: 1px solid var(--vdm-border);
    text-align: center;
}

.guest-tag-pass-qr {
    padding: 0.7rem;
    border: 1px solid var(--vdm-border);
    border-radius: 0.8rem;
    background: white;
}

.guest-tag-pass-qr svg {
    display: block;
    width: min(14rem, 60vw);
    height: auto;
}

.guest-tag-pass-qr-wrap p {
    margin: 0;
    color: var(--vdm-muted);
    font-size: 0.85rem;
}

.guest-tag-pass-footer {
    display: grid;
    gap: 0.3rem;
    padding: 1rem 1.5rem;
    background: var(--vdm-background);
    color: var(--vdm-muted);
    font-size: 0.72rem;
    text-align: center;
}

.guest-tag-print-button {
    justify-self: center;
    padding: 0.75rem 1.2rem;
    border: 0;
    border-radius: 0.7rem;
    background: var(--vdm-navy);
    color: white;
    cursor: pointer;
    font: inherit;
    font-weight: 700;
}

@media (max-width: 760px) {
    .guest-tag-create-form {
        grid-template-columns: minmax(0, 1fr);
    }

    .guest-tag-row {
        grid-template-columns: minmax(0, 1fr);
    }

    .guest-tag-row-actions {
        justify-content: flex-start;
    }

    .guest-tag-share-feedback {
        text-align: left;
    }

    .organizer-preview-etag-panel,
    .organizer-preview-scanner-panel {
        grid-column: 1;
    }

    .guest-tag-pass-page {
        width: min(100% - 1rem, 42rem);
        margin: 0.75rem auto;
    }
}

@media (max-width: 480px) {
    .guest-tag-pass-heading {
        font-size: 0.58rem;
    }

    .guest-tag-pass-event {
        grid-template-columns: 1fr;
        padding: 1rem;
    }

    .guest-tag-pass-event > img,
    .guest-tag-pass-event-placeholder {
        width: 100%;
        height: 10rem;
    }

    .guest-tag-pass-details {
        grid-template-columns: 1fr;
        padding: 1rem;
    }
}

@media print {
    .site-header,
    .site-footer,
    .guest-tag-pass-heading,
    .guest-tag-print-button {
        display: none !important;
    }

    .guest-tag-pass-page {
        width: 100%;
        margin: 0;
    }

    .guest-tag-pass-card {
        border: 0;
        box-shadow: none;
    }
}

.organizer-workspace.event-inventory-dashboard {
    width: min(calc(100% - 19rem), 100rem);
    margin: 1.5rem 2rem 1.5rem 17rem;
}

.event-inventory-dashboard .organizer-content {
    gap: 1rem;
}

.event-inventory-breadcrumbs,
.event-inventory-back-row,
.event-inventory-meta,
.event-inventory-tabs,
.event-inventory-overview-heading,
.event-inventory-card-heading {
    display: flex;
    align-items: center;
}

.event-inventory-breadcrumbs {
    gap: 0.6rem;
    color: #53617b;
    font-size: 0.75rem;
}

.event-inventory-breadcrumbs a {
    color: #53617b;
    text-decoration: none;
}

.event-inventory-breadcrumbs a:hover {
    color: #0759c7;
}

.event-inventory-breadcrumbs [aria-current="page"] {
    color: #0b1f6b;
    font-weight: 700;
}

.event-inventory-back-row {
    justify-content: space-between;
    gap: 0.75rem;
}

.event-inventory-back-link,
.event-inventory-preview-link {
    display: inline-flex;
    min-height: 2rem;
    align-items: center;
    gap: 0.4rem;
    padding: 0.35rem 0.75rem;
    border-radius: 0.45rem;
    background: #eaf1ff;
    color: #0759c7;
    font-size: 0.78rem;
    font-weight: 700;
    text-decoration: none;
}

.event-inventory-preview-link {
    border: 1px solid #dce5f4;
    background: #fff;
    color: #0b1f6b;
}

.event-inventory-heading {
    display: grid;
    grid-template-columns: minmax(11rem, 18rem) minmax(0, 1fr);
    align-items: center;
    gap: 1.25rem;
}

.event-inventory-cover {
    display: block;
    width: 100%;
    aspect-ratio: 1.8;
    border-radius: 0.75rem;
    object-fit: cover;
}

.event-inventory-cover-placeholder {
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, #0b1f6b, #1268d6);
    color: #fff;
    font-size: 1.1rem;
    font-weight: 800;
}

.event-inventory-title h1 {
    margin: 0 0 0.5rem;
    color: #0b1f6b;
    font-size: clamp(1.45rem, 2.2vw, 2rem);
    letter-spacing: -0.035em;
}

.event-inventory-meta {
    flex-wrap: wrap;
    gap: 0.55rem;
}

.event-inventory-meta > span:not(.status-pill) {
    display: inline-flex;
    min-height: 1.9rem;
    align-items: center;
    gap: 0.4rem;
    padding: 0.3rem 0.55rem;
    border-radius: 0.45rem;
    background: #fff;
    color: #23395f;
    font-size: 0.72rem;
    font-weight: 600;
}

.event-inventory-meta svg {
    width: 1rem;
    height: 1rem;
    flex: 0 0 auto;
    fill: none;
    stroke: #0759c7;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.event-inventory-tabs {
    min-width: 0;
    gap: clamp(0.5rem, 1.7vw, 1.7rem);
    overflow-x: auto;
    border-bottom: 1px solid #dce2ec;
    scrollbar-width: none;
}

.event-inventory-tabs::-webkit-scrollbar {
    display: none;
}

.event-inventory-tabs a,
.event-inventory-tabs button {
    display: inline-flex;
    min-height: 2.8rem;
    flex: 0 0 auto;
    align-items: center;
    gap: 0.45rem;
    padding: 0.45rem 0.35rem;
    color: #53617b;
    background: transparent;
    border: 0;
    border-bottom: 3px solid transparent;
    cursor: pointer;
    font-size: 0.78rem;
    font-weight: 700;
    text-decoration: none;
    font-family: inherit;
}

.event-inventory-tabs a:hover,
.event-inventory-tabs button:hover,
.event-inventory-tabs a.is-active,
.event-inventory-tabs button.is-active {
    border-bottom-color: #0879e8;
    color: #0759c7;
}

.event-inventory-tabs svg {
    width: 1rem;
    height: 1rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.event-inventory-metrics {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
}

.event-inventory-metric {
    position: relative;
    display: flex;
    min-width: 0;
    min-height: 5.4rem;
    align-items: center;
    gap: 0.7rem;
    overflow: hidden;
    padding: 0.75rem;
    border: 1px solid #e4e9f2;
    border-radius: 0.8rem;
    background: #fff;
    box-shadow: 0 4px 14px rgba(11, 31, 107, 0.035);
}

.event-inventory-metric::before {
    position: absolute;
    inset: 0 auto 0 0;
    width: 0.28rem;
    background: #0879e8;
    content: "";
}

.event-inventory-metric-sold::before {
    background: #0a9b5b;
}

.event-inventory-metric-reserved::before {
    background: #f59e0b;
}

.event-inventory-metric-available::before {
    background: #64748b;
}

.event-inventory-metric-allocation {
    background: #eef4ff;
}

.event-inventory-metric-sold {
    background: #eaf8f0;
}

.event-inventory-metric-reserved {
    background: #fff6e8;
}

.event-inventory-metric-available {
    background: #eef1f7;
}

.event-inventory-metric-icon {
    display: grid;
    width: 3rem;
    height: 3rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 50%;
    background: #1265e9;
    color: #fff;
}

.event-inventory-metric-sold .event-inventory-metric-icon {
    background: #079b58;
    color: #fff;
}

.event-inventory-metric-reserved .event-inventory-metric-icon {
    background: #f59b08;
    color: #fff;
}

.event-inventory-metric-available .event-inventory-metric-icon {
    background: #566c88;
    color: #fff;
}

.event-inventory-metric-icon svg {
    width: 1.35rem;
    height: 1.35rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.event-inventory-metric-copy {
    display: grid;
    min-width: 0;
    gap: 0.1rem;
}

.event-inventory-metric-copy strong {
    overflow: hidden;
    color: #0b1f6b;
    font-size: clamp(1.3rem, 2vw, 1.8rem);
    font-weight: 800;
    line-height: 1.1;
    text-overflow: ellipsis;
}

.event-inventory-metric-copy small {
    color: #25334e;
    font-size: 0.72rem;
    font-weight: 600;
}

.event-inventory-overview {
    display: grid;
    gap: 0.5rem;
}

.event-inventory-overview-heading {
    justify-content: space-between;
    gap: 1rem;
}

.event-inventory-overview-heading h2 {
    margin: 0;
    color: #0b1f6b;
    font-size: 1.1rem;
    font-weight: 800;
}

.event-inventory-overview-heading p {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.65rem;
    margin: 0;
    color: #536780;
    font-size: 0.7rem;
    font-weight: 700;
}

.event-inventory-overview-heading p span:first-child {
    color: #079455;
}

.event-inventory-overview-heading p span:nth-child(2) {
    color: #d97706;
}

.event-inventory-progress {
    display: flex;
    height: 2rem;
    overflow: hidden;
    border-radius: 999px;
    background: #e5eaf2;
    color: #fff;
}

.event-inventory-progress > span {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    font-size: 0.75rem;
    font-weight: 800;
    white-space: nowrap;
}

.event-inventory-progress-sold {
    background: #08a45b;
}

.event-inventory-progress-reserved {
    background: #f6a900;
}

.event-inventory-progress-available {
    background: #566c88;
}

.event-inventory-lower-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.8fr) minmax(14rem, 0.9fr);
    align-items: stretch;
    gap: 0.85rem;
}

.organizer-content .page-card.event-inventory-categories,
.organizer-content .page-card.event-inventory-quick-actions,
.event-inventory-category-manager-content {
    padding: 1rem;
    border: 1px solid #e1e8f4;
    border-radius: 0.9rem;
    background: #fff;
    box-shadow: 0 5px 18px rgba(11, 31, 107, 0.045);
}

.event-inventory-card-heading {
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.7rem;
}

.event-inventory-card-heading h2,
.event-inventory-quick-actions h2 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
    color: #0b1f6b;
    font-size: 1.05rem;
    font-weight: 800;
}

.event-inventory-card-heading h2 svg {
    width: 1.1rem;
    height: 1.1rem;
    fill: none;
    stroke: #0759c7;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.event-inventory-outline-action {
    display: inline-flex;
    min-height: 2rem;
    align-items: center;
    gap: 0.35rem;
    padding: 0.35rem 0.6rem;
    border: 1px solid #2f80ff;
    border-radius: 0.55rem;
    background: #fff;
    color: #0759c7;
    cursor: pointer;
    font: inherit;
    font-size: 0.7rem;
    font-weight: 700;
}

.event-inventory-outline-action svg,
.event-inventory-quick-actions svg {
    width: 1rem;
    height: 1rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.event-inventory-table-wrap {
    overflow-x: auto;
}

.event-inventory-dashboard .event-inventory-table {
    width: 100%;
    min-width: 0;
    border-collapse: collapse;
    color: #172033;
    font-size: 0.68rem;
    text-align: left;
}

.event-inventory-table th,
.event-inventory-table td {
    padding: 0.55rem 0.35rem;
    border-bottom: 1px solid #e5eaf2;
    white-space: nowrap;
}

.event-inventory-table thead th {
    background: #f1f5fb;
    color: #243552;
    font-size: 0.66rem;
    font-weight: 800;
}

.event-inventory-table tbody td:first-child {
    color: #0b1f6b;
    font-weight: 700;
}

.event-inventory-table tfoot th {
    background: #e7efff;
    color: #0b1f6b;
    font-weight: 800;
}

.event-inventory-status {
    display: inline-flex;
    padding: 0.28rem 0.55rem;
    border-radius: 999px;
    font-size: 0.64rem;
    font-weight: 700;
}

.event-inventory-status.is-available {
    background: #d9f4e4;
    color: #08783e;
}

.event-inventory-status.is-sold-out {
    background: #fff0ef;
    color: #a82020;
}

.event-inventory-empty {
    color: #687386;
    text-align: center;
}

.event-inventory-quick-actions {
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
}

.event-inventory-quick-actions h2 {
    margin-bottom: 0.25rem;
}

.event-inventory-quick-actions h2 > span {
    color: #f4a900;
    font-size: 1.35rem;
}

.event-inventory-quick-actions > a,
.event-inventory-quick-actions > button {
    display: flex;
    min-height: 2.75rem;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    padding: 0.55rem 0.7rem;
    border: 1px solid #2f80ff;
    border-radius: 0.65rem;
    background: #fff;
    color: #0759c7;
    cursor: pointer;
    font: inherit;
    font-size: 0.74rem;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
}

.event-inventory-quick-actions > a:hover,
.event-inventory-quick-actions > button:hover {
    background: #eef5ff;
}

.event-inventory-quick-actions > a.event-inventory-action-primary {
    border-color: #e52624;
    background: #e52624;
    color: #fff;
}

.event-inventory-quick-actions > a.event-inventory-action-primary:hover {
    background: #ca1e1c;
}

.event-inventory-quick-actions > a:last-of-type:not(.event-inventory-action-primary) {
    border-color: #1265e9;
    background: #1265e9;
    color: #fff;
}

.event-inventory-quick-actions > a:last-of-type:not(.event-inventory-action-primary):hover {
    background: #0754d2;
}

.event-inventory-tab-panel {
    display: grid;
    min-width: 0;
    gap: 1rem;
    scroll-margin-top: 5rem;
}

.event-inventory-tab-panel[hidden] {
    display: none !important;
}

.event-operations-panel {
    display: grid;
    min-width: 0;
    gap: 1rem;
    padding: 1.1rem;
    border: 1px solid #e1e8f4;
    border-radius: 0.9rem;
    background: #fff;
    box-shadow: 0 5px 18px rgba(11, 31, 107, 0.045);
}

.event-operations-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.event-operations-heading h2 {
    margin: 0;
    color: #0b1f6b;
    font-size: 1.1rem;
}

.event-operations-heading p,
.event-operations-footnote {
    margin: 0.25rem 0 0;
    color: #687386;
    font-size: 0.75rem;
}

.event-operations-count,
.event-operations-status {
    display: inline-flex;
    flex: 0 0 auto;
    padding: 0.35rem 0.65rem;
    border-radius: 999px;
    background: #eaf1ff;
    color: #0759c7;
    font-size: 0.7rem;
    font-weight: 700;
}

.event-operations-empty {
    margin: 0;
    padding: 2rem 1rem;
    border: 1px dashed #cbd6e7;
    border-radius: 0.65rem;
    color: #687386;
    font-size: 0.85rem;
    text-align: center;
}

.event-inventory-report-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 1rem;
}

.event-inventory-report-metrics {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr));
    gap: 0.7rem;
}

.event-inventory-report-metrics article {
    display: grid;
    gap: 0.2rem;
    padding: 0.85rem;
    border: 1px solid #e1e8f4;
    border-radius: 0.7rem;
    background: #f7f9fd;
}

.event-inventory-report-metrics strong {
    color: #0b1f6b;
    font-size: 1.3rem;
}

.event-inventory-report-metrics span {
    color: #53617b;
    font-size: 0.72rem;
}

.event-inventory-collection-total {
    margin: 0;
    color: #079455;
    font-size: 1.5rem;
    font-weight: 800;
}

.event-inventory-report-grid h3 {
    margin: 0.5rem 0 0;
    color: #0b1f6b;
    font-size: 0.9rem;
}

@media (max-width: 1100px) {
    .event-inventory-dashboard .event-inventory-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .event-inventory-lower-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .event-inventory-quick-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .event-inventory-quick-actions h2 {
        grid-column: 1 / -1;
    }
}

@media (max-width: 760px) {
    .organizer-workspace.event-inventory-dashboard {
        width: calc(100% - 1rem);
        max-width: 100%;
        margin: 0.75rem auto 1rem;
        grid-template-columns: none;
    }

    .event-inventory-heading {
        grid-template-columns: minmax(0, 1fr);
    }

    .event-inventory-cover {
        max-height: 13rem;
    }

    .event-inventory-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 520px) {
    .organizer-workspace.event-inventory-dashboard {
        width: min(100% - 1rem, 32rem);
        margin-block: 0.75rem;
    }

    .event-inventory-breadcrumbs {
        font-size: 0.65rem;
    }

    .event-inventory-heading {
        gap: 0.75rem;
    }

    .event-inventory-cover {
        aspect-ratio: 1.7;
    }

    .event-inventory-meta > span:not(.status-pill) {
        white-space: normal;
    }

    .event-inventory-metrics {
        gap: 0.5rem;
    }

    .event-inventory-metric {
        min-height: 4.5rem;
        gap: 0.5rem;
        padding: 0.6rem;
    }

    .event-inventory-metric-icon {
        width: 2rem;
        height: 2rem;
    }

    .event-inventory-metric-copy strong {
        font-size: 1.1rem;
    }

    .event-inventory-metric-copy small {
        font-size: 0.63rem;
    }

    .event-inventory-overview-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.35rem;
    }

    .event-inventory-overview-heading p {
        justify-content: flex-start;
        font-size: 0.65rem;
    }

    .event-inventory-progress {
        height: 1.55rem;
    }

    .event-inventory-progress > span {
        font-size: 0.62rem;
    }

    .event-inventory-quick-actions {
        grid-template-columns: minmax(0, 1fr);
    }

    .event-inventory-quick-actions h2 {
        grid-column: 1;
    }

    .event-inventory-card-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .event-operations-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .event-inventory-tabs {
        gap: 0.35rem;
    }

    .event-inventory-tabs a,
    .event-inventory-tabs button {
        font-size: 0.68rem;
    }
}

.event-inventory-reference-header {
    position: sticky;
    z-index: 40;
    top: 0;
    min-height: 3.5rem;
    border-bottom: 1px solid #dce3f0;
    background: #fff;
    box-shadow: 0 2px 10px rgba(11, 31, 107, 0.06);
}

.event-inventory-reference-topbar {
    display: grid;
    width: calc(100% - 11.5rem);
    min-height: 3.5rem;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 1rem;
    margin-left: 11.5rem;
    padding: 0 1.25rem;
}

.event-inventory-reference-topbar .organizer-mobile-menu {
    position: relative;
    display: block;
    order: 0;
}

.event-inventory-reference-topbar .organizer-mobile-menu > summary {
    display: grid;
    width: 2.5rem;
    height: 2.5rem;
    place-items: center;
    border: 0;
    border-radius: 0.45rem;
    background: transparent;
    color: #0b1f6b;
    cursor: pointer;
    list-style: none;
}

.event-inventory-reference-topbar .organizer-mobile-menu > summary::-webkit-details-marker {
    display: none;
}

.event-inventory-reference-topbar .organizer-mobile-menu > summary:hover,
.event-inventory-reference-topbar .organizer-mobile-menu[open] > summary {
    background: #edf3ff;
}

.event-inventory-reference-topbar .organizer-mobile-menu > summary svg {
    width: 1.35rem;
    height: 1.35rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-width: 2;
}

.event-inventory-reference-breadcrumbs {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 0.65rem;
    color: #40506e;
    font-size: 0.78rem;
}

.event-inventory-reference-breadcrumbs a {
    overflow: hidden;
    color: #40506e;
    text-decoration: none;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.event-inventory-reference-breadcrumbs a:hover,
.event-inventory-reference-breadcrumbs [aria-current="page"] {
    color: #0b1f6b;
    font-weight: 700;
}

.event-inventory-reference-account {
    margin-left: 0;
}

.event-inventory-reference-account > summary {
    min-height: 2.5rem;
    gap: 0.45rem;
    padding: 0;
}

.event-inventory-reference-account .organizer-account-avatar {
    width: 2.25rem;
    height: 2.25rem;
    border: 0;
    background: #0b1f6b;
    color: #fff;
}

.event-inventory-reference-account .organizer-account-identity {
    display: none;
}

body:has(.event-inventory-dashboard) .event-inventory-reference-sidebar {
    display: flex;
    position: fixed;
    z-index: 41;
    top: 0;
    bottom: 0;
    left: 0;
    width: 11.5rem;
    max-height: 100dvh;
    gap: 0.7rem;
    overflow: hidden;
    padding: 0.85rem 0.7rem;
    border-radius: 0;
    background: linear-gradient(165deg, #0b1f6b, #06164f);
    box-shadow: 2px 0 12px rgba(4, 17, 58, 0.12);
}

body:has(.event-inventory-dashboard) .event-inventory-breadcrumbs,
body:has(.event-inventory-dashboard) .event-inventory-preview-link {
    display: none;
}

.event-inventory-dashboard .event-inventory-cover {
    aspect-ratio: 2.15;
}

.event-inventory-reference-sidebar-brand {
    display: flex;
    min-height: 5.2rem;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
}

.event-inventory-reference-sidebar-brand .brand-logo {
    display: flex;
    width: 100%;
    justify-content: center;
}

.event-inventory-reference-sidebar-brand .brand-logo img {
    width: 8rem;
    height: 4.8rem;
    object-fit: contain;
}

.event-inventory-reference-profile {
    display: grid;
    min-width: 0;
    grid-template-columns: 2.25rem minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.55rem;
    padding: 0.45rem 0.25rem 0.65rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    color: #fff;
    text-decoration: none;
}

.event-inventory-reference-profile-avatar {
    display: grid;
    width: 2.15rem;
    height: 2.15rem;
    place-items: center;
    border: 2px solid rgba(255, 255, 255, 0.8);
    border-radius: 50%;
    background: #dce9ff;
    color: #0b1f6b;
    font-size: 0.72rem;
    font-weight: 800;
}

.event-inventory-reference-profile > span:nth-child(2) {
    display: grid;
    min-width: 0;
    gap: 0.15rem;
}

.event-inventory-reference-profile small,
.event-inventory-reference-profile strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.event-inventory-reference-profile small {
    color: #d5def5;
    font-size: 0.62rem;
}

.event-inventory-reference-profile strong {
    font-size: 0.68rem;
}

.event-inventory-reference-sidebar nav {
    display: grid;
    min-height: 0;
    flex: 1 1 auto;
    align-content: start;
    gap: 0.2rem;
    overflow-y: auto;
    scrollbar-width: none;
}

.event-inventory-reference-sidebar nav::-webkit-scrollbar {
    display: none;
}

.event-inventory-reference-sidebar nav a {
    display: flex;
    min-width: 0;
    min-height: 2.45rem;
    flex: 0 0 auto;
    align-items: center;
    gap: 0.55rem;
    padding: 0.48rem 0.58rem;
    border-radius: 0.55rem;
    color: #f3f6ff;
    font-size: 0.73rem;
    font-weight: 600;
    text-decoration: none;
}

.event-inventory-reference-sidebar nav a:hover,
.event-inventory-reference-sidebar nav a:focus-visible {
    background: rgba(255, 255, 255, 0.12);
}

.event-inventory-reference-sidebar nav a.is-active {
    background: #1265e9;
    color: #fff;
}

.event-inventory-reference-sidebar nav a svg {
    width: 1.15rem;
    height: 1.15rem;
    flex: 0 0 auto;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.event-inventory-reference-promo {
    display: grid;
    flex: 0 0 auto;
    justify-items: center;
    gap: 0.35rem;
    padding: 0.75rem 0.55rem;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 0.75rem;
    background: rgba(255, 255, 255, 0.06);
    text-align: center;
}

.event-inventory-reference-promo > span {
    color: #ffbf22;
    font-size: 1.5rem;
    line-height: 1;
}

.event-inventory-reference-promo strong {
    color: #fff;
    font-size: 0.73rem;
}

.event-inventory-reference-promo small {
    color: #d4def7;
    font-size: 0.62rem;
    line-height: 1.35;
}

.event-inventory-reference-promo a {
    display: flex;
    min-height: 2rem;
    align-items: center;
    justify-content: center;
    margin-top: 0.2rem;
    padding: 0.35rem 0.6rem;
    border-radius: 0.5rem;
    background: #e52624;
    color: #fff;
    font-size: 0.65rem;
    font-weight: 800;
    text-decoration: none;
}

.event-inventory-reference-promo a:hover {
    background: #ca1e1c;
}

.organizer-workspace.event-inventory-dashboard {
    width: calc(100% - 14rem);
    margin: 1rem 1rem 1.5rem 13rem;
}

@media (max-width: 760px) {
    body:has(.event-inventory-dashboard) .event-inventory-reference-sidebar,
    body:has(.organizer-my-events-dashboard) .event-inventory-reference-sidebar {
        display: none;
    }

    .event-inventory-reference-topbar {
        width: 100%;
        min-height: 3.5rem;
        grid-template-columns: auto minmax(0, 1fr) auto auto;
        gap: 0.45rem;
        margin-left: 0;
        padding-inline: 0.5rem;
    }
}

.organizer-workspace.organizer-my-events-dashboard {
        display: block;
        width: calc(100% - 14rem);
        margin: 1rem 1rem 1.5rem 12.6rem;
    }

    .organizer-my-events-dashboard .organizer-content {
        gap: 0.8rem;
    }

    body:has(.organizer-my-events-dashboard) .event-inventory-reference-sidebar {
        display: flex;
        position: fixed;
        z-index: 41;
        top: 0;
        bottom: 0;
        left: 0;
        width: 11.5rem;
        max-height: 100dvh;
        gap: 0.7rem;
        overflow: hidden;
        padding: 0.85rem 0.7rem;
        border-radius: 0;
        background: linear-gradient(165deg, #0b1f6b, #06164f);
        box-shadow: 2px 0 12px rgba(4, 17, 58, 0.12);
    }

    body:has(.organizer-my-events-dashboard) .event-inventory-reference-topbar {
        width: calc(100% - 11.5rem);
        margin-left: 11.5rem;
    }

    body:has(.organizer-my-events-dashboard) .event-inventory-reference-sidebar-brand {
        min-height: 5.8rem;
    }

    body:has(.organizer-my-events-dashboard) .event-inventory-reference-sidebar-brand .brand-logo img {
        width: 8.6rem;
        height: 5.2rem;
    }

    .organizer-my-events-dashboard .organizer-my-events-filters .visually-hidden {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        overflow: hidden !important;
        clip: rect(0, 0, 0, 0) !important;
        white-space: nowrap !important;
        clip-path: inset(50%) !important;
    }

    .organizer-my-events-date-filter {
        position: relative;
    }

    body:has(.organizer-my-events-dashboard) .site-header {
        position: sticky;
    }

    .organizer-my-events-breadcrumbs {
        display: none !important;
    }

    .organizer-my-events-dashboard .organizer-content > .notice {
        margin: 0;
    }

    .organizer-my-events-heading {
        display: flex;
        min-width: 0;
        align-items: center;
        justify-content: space-between;
        gap: 1rem;
        padding: 0.1rem 0.15rem 0.35rem;
    }

    .organizer-my-events-heading > div {
        display: flex;
        min-width: 0;
        align-items: center;
        gap: 0.8rem;
    }

    .organizer-my-events-heading > div > svg {
        width: 2.8rem;
        height: 2.8rem;
        flex: 0 0 auto;
        fill: #007bff;
        stroke: #007bff;
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-width: 1.8;
    }

    .organizer-my-events-heading > div > span {
        min-width: 0;
    }

    .organizer-my-events-heading h1 {
        margin: 0;
        color: #0b1f6b;
        font-size: clamp(1.45rem, 2.2vw, 1.9rem);
        font-weight: 800;
        letter-spacing: -0.035em;
    }

    .organizer-my-events-heading p {
        margin: 0.15rem 0 0;
        color: #53617b;
        font-size: 0.78rem;
    }

    .organizer-my-events-create,
    .organizer-my-event-primary,
    .organizer-my-event-secondary,
    .organizer-my-event-more > summary {
        display: inline-flex;
        min-height: 2.2rem;
        align-items: center;
        justify-content: center;
        gap: 0.35rem;
        padding: 0.4rem 0.65rem;
        border: 1px solid #007bff;
        border-radius: 0.5rem;
        background: #fff;
        color: #0065df;
        cursor: pointer;
        font: inherit;
        font-size: 0.68rem;
        font-weight: 700;
        line-height: 1.2;
        text-decoration: none;
        white-space: nowrap;
    }

    .organizer-my-events-create {
        min-height: 2.7rem;
        padding-inline: 0.9rem;
        border-color: #075dff;
        border-radius: 0.65rem;
        background: #075dff;
        color: #fff;
        font-size: 0.76rem;
    }

    .organizer-my-events-create:hover,
    .organizer-my-event-secondary:hover {
        background: #edf4ff;
        color: #0050c8;
    }

    .organizer-my-events-create:hover {
        background: #004fd6;
        color: #fff;
    }

    .organizer-my-events-create svg,
    .organizer-my-event-actions svg {
        width: 1rem;
        height: 1rem;
        fill: none;
        stroke: currentColor;
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-width: 2;
    }

    .organizer-my-events-stats {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 0.6rem;
    }

    .organizer-my-events-stat {
        display: flex;
        min-width: 0;
        min-height: 4.9rem;
        align-items: center;
        gap: 0.8rem;
        padding: 0.55rem 0.7rem;
        border: 1px solid #dfe7f6;
        border-radius: 0.75rem;
        background: linear-gradient(135deg, #fff, #f8faff);
        box-shadow: 0 0.15rem 0.5rem rgba(11, 31, 107, 0.045);
    }

    .organizer-my-events-stat-icon {
        display: grid;
        width: 3.2rem;
        height: 3.2rem;
        flex: 0 0 auto;
        place-items: center;
        border-radius: 50%;
        background: #075dff;
        color: #fff;
    }

    .organizer-my-events-stat-icon svg {
        width: 1.55rem;
        height: 1.55rem;
        fill: none;
        stroke: currentColor;
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-width: 2;
    }

    .organizer-my-events-stat > span:last-child {
        display: grid;
        min-width: 0;
        gap: 0.15rem;
    }

    .organizer-my-events-stat small {
        color: #0b1f6b;
        font-size: 0.7rem;
        font-weight: 600;
        line-height: 1.2;
    }

    .organizer-my-events-stat strong {
        color: #0b1f6b;
        font-size: 1.15rem;
        line-height: 1;
    }

    .organizer-my-events-stat-published {
        background: linear-gradient(135deg, #fff, #f2fbf6);
    }

    .organizer-my-events-stat-published .organizer-my-events-stat-icon {
        background: #079c54;
    }

    .organizer-my-events-stat-pending {
        background: linear-gradient(135deg, #fff, #fff8f0);
    }

    .organizer-my-events-stat-pending .organizer-my-events-stat-icon {
        background: #ff970e;
    }

    .organizer-my-events-stat-draft .organizer-my-events-stat-icon {
        background: #687b9d;
    }

    .organizer-my-events-filters {
        display: grid;
        grid-template-columns: minmax(11rem, 1.45fr) minmax(8rem, 0.85fr) minmax(9rem, 1.1fr) auto auto;
        gap: 0.6rem;
        align-items: center;
    }

    .organizer-my-events-filters > label,
    .organizer-my-events-search {
        display: flex;
        min-width: 0;
    }

    .organizer-my-events-search {
        position: relative;
        align-items: center;
    }

    .organizer-my-events-search > svg {
        position: absolute;
        left: 0.7rem;
        width: 1rem;
        height: 1rem;
        fill: none;
        stroke: #0b1f6b;
        stroke-linecap: round;
        stroke-width: 2;
        pointer-events: none;
    }

    .organizer-my-events-filters input,
    .organizer-my-events-filters select {
        width: 100%;
        min-width: 0;
        height: 2.25rem;
        padding: 0.4rem 0.65rem;
        border: 1px solid #d5dff1;
        border-radius: 0.5rem;
        background: #fff;
        color: #0b1f6b;
        font: inherit;
        font-size: 0.68rem;
    }

    .organizer-my-events-filters .organizer-my-events-search input {
        padding-left: 2.25rem;
    }

    .organizer-my-events-filters input::placeholder {
        color: #66748e;
        opacity: 1;
    }

    .organizer-my-events-filter-button {
        display: inline-flex;
        min-width: 6rem;
        height: 2.25rem;
        align-items: center;
        justify-content: center;
        gap: 0.35rem;
        padding: 0.4rem 0.8rem;
        border: 1px solid #075dff;
        border-radius: 0.5rem;
        background: #075dff;
        color: #fff;
        cursor: pointer;
        font: inherit;
        font-size: 0.7rem;
        font-weight: 700;
    }

    .organizer-my-events-filter-button svg {
        width: 1rem;
        height: 1rem;
        fill: none;
        stroke: currentColor;
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-width: 2;
    }

    .organizer-my-events-date-filter {
        justify-self: end;
    }

    .organizer-my-events-date-filter > summary {
        display: inline-flex;
        align-items: center;
        gap: 0.35rem;
        color: #0759c7;
        cursor: pointer;
        font-size: 0.67rem;
        font-weight: 700;
        list-style: none;
    }

    .organizer-my-events-date-filter > summary::-webkit-details-marker {
        display: none;
    }

    .organizer-my-events-date-filter > summary svg {
        width: 0.95rem;
        height: 0.95rem;
        fill: none;
        stroke: currentColor;
        stroke-linecap: round;
        stroke-width: 2;
    }

    .organizer-my-events-date-filter > div {
        display: flex;
        position: absolute;
        z-index: 4;
        gap: 0.6rem;
        margin-top: 0.35rem;
        padding: 0.65rem;
        border: 1px solid #dce5f4;
        border-radius: 0.6rem;
        background: #fff;
        box-shadow: 0 0.4rem 1.2rem rgba(11, 31, 107, 0.12);
    }

    .organizer-my-events-date-filter label {
        display: grid;
        gap: 0.25rem;
        color: #53617b;
        font-size: 0.65rem;
    }

    .organizer-my-events-date-filter input {
        width: 9.5rem;
    }

    .organizer-my-events-list {
        display: grid;
        gap: 0.45rem;
    }

    .organizer-my-event-card {
        display: grid;
        min-width: 0;
        grid-template-columns: minmax(9rem, 12.8rem) minmax(10rem, 1.6fr) minmax(9rem, 1fr) minmax(10rem, 1.15fr);
        align-items: center;
        gap: 0.85rem;
        padding: 0.55rem 0.7rem;
        border: 1px solid #dce5f6;
        border-radius: 0.7rem;
        background: #fff;
        box-shadow: 0 0.2rem 0.7rem rgba(11, 31, 107, 0.055);
    }

    .organizer-my-event-image {
        display: grid;
        width: 100%;
        height: 7.4rem;
        place-items: center;
        border-radius: 0.55rem;
        object-fit: cover;
    }

    .organizer-my-event-art {
        position: relative;
        display: grid;
        width: 100%;
        height: 7.4rem;
        overflow: hidden;
        place-items: center;
        border-radius: 0.55rem;
        background: linear-gradient(135deg, #0b1f6b, #1265e9);
    }

    .organizer-my-event-image-fallback {
        display: grid;
        position: absolute;
        inset: 0;
        place-items: center;
        padding: 0.5rem;
        color: #fff;
        font-size: 0.7rem;
        font-weight: 800;
        text-align: center;
    }

    .organizer-my-event-art > img {
        position: relative;
    }

    .organizer-my-event-art > img[hidden] {
        display: none;
    }

    .organizer-my-event-art:not(.is-placeholder) > .organizer-my-event-image-fallback {
        display: none;
    }

    .organizer-my-event-image-placeholder {
        padding: 0.5rem;
        background: linear-gradient(135deg, #0b1f6b, #1265e9);
        color: #fff;
        font-size: 0.7rem;
        font-weight: 800;
        text-align: center;
    }

    .organizer-my-event-details,
    .organizer-my-event-sales,
    .organizer-my-event-actions {
        display: grid;
        min-width: 0;
        align-content: center;
    }

    .organizer-my-event-details {
        gap: 0.22rem;
    }

    .organizer-my-event-details h2 {
        overflow: hidden;
        margin: 0 0 0.1rem;
        color: #0b1f6b;
        font-size: 1rem;
        font-weight: 800;
        letter-spacing: -0.025em;
        line-height: 1.2;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .organizer-my-event-details p {
        display: flex;
        min-width: 0;
        align-items: center;
        gap: 0.35rem;
        overflow: hidden;
        margin: 0;
        color: #243552;
        font-size: 0.66rem;
        line-height: 1.3;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .organizer-my-event-details p svg {
        width: 0.85rem;
        height: 0.85rem;
        flex: 0 0 auto;
        fill: none;
        stroke: #0759d6;
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-width: 2;
    }

    .organizer-my-event-sales {
        min-height: 4.7rem;
        gap: 0.35rem;
        padding-left: 0.85rem;
        border-left: 1px solid #c9d5ea;
    }

    .organizer-my-event-status {
        display: inline-flex;
        width: max-content;
        max-width: 100%;
        min-height: 1.7rem;
        align-items: center;
        gap: 0.32rem;
        padding: 0.25rem 0.55rem;
        border-radius: 999px;
        background: #e8edf5;
        color: #485c80;
        font-size: 0.66rem;
        font-weight: 800;
        line-height: 1.1;
    }

    .organizer-my-event-status svg {
        width: 0.9rem;
        height: 0.9rem;
        flex: 0 0 auto;
        fill: none;
        stroke: currentColor;
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-width: 2.4;
    }

    .organizer-my-event-status-published {
        background: #dcf5e7;
        color: #07823e;
    }

    .organizer-my-event-status-pending,
    .organizer-my-event-status-pending-approval {
        background: #fff0d9;
        color: #c76b00;
    }

    .organizer-my-event-status-rejected,
    .organizer-my-event-status-cancelled {
        background: #ffeaeb;
        color: #b4232d;
    }

    .organizer-my-event-sales > strong {
        color: #0b1f6b;
        font-size: 0.68rem;
        font-weight: 700;
    }

    .organizer-my-event-progress {
        display: block;
        width: 100%;
        height: 0.55rem;
        overflow: hidden;
        border-radius: 999px;
        background: #e0e5ef;
    }

    .organizer-my-event-progress > span {
        display: block;
        height: 100%;
        border-radius: inherit;
        background: linear-gradient(90deg, #07994d, #23c26b);
    }

    .organizer-my-event-actions {
        gap: 0.4rem;
        padding-left: 0.85rem;
        border-left: 1px solid #c9d5ea;
    }

    .organizer-my-event-action-row {
        display: flex;
        min-width: 0;
        gap: 0.35rem;
    }

    .organizer-my-event-secondary,
    .organizer-my-event-more > summary {
        min-width: 0;
        min-height: 1.9rem;
        padding: 0.3rem 0.4rem;
        border-radius: 0.4rem;
        font-size: 0.63rem;
    }

    .organizer-my-event-secondary svg {
        width: 0.85rem;
        height: 0.85rem;
    }

    .organizer-my-event-more {
        position: relative;
    }

    .organizer-my-event-more > summary {
        list-style: none;
    }

    .organizer-my-event-more > summary::-webkit-details-marker {
        display: none;
    }

    .organizer-my-event-more > div {
        display: grid;
        position: absolute;
        z-index: 8;
        top: calc(100% + 0.25rem);
        right: 0;
        min-width: 9rem;
        padding: 0.3rem;
        border: 1px solid #dce5f4;
        border-radius: 0.55rem;
        background: #fff;
        box-shadow: 0 0.4rem 1rem rgba(11, 31, 107, 0.13);
    }

    .organizer-my-event-more > div a {
        padding: 0.5rem;
        border-radius: 0.35rem;
        color: #243552;
        font-size: 0.65rem;
        text-decoration: none;
    }

    .organizer-my-event-more > div a:hover,
    .organizer-my-event-more > div a:focus-visible {
        background: #edf3ff;
        color: #0759d6;
    }

    .organizer-my-event-primary {
        width: 100%;
        min-height: 1.9rem;
        border-color: transparent;
        border-radius: 0.42rem;
        color: #fff;
        font-size: 0.65rem;
    }

    .organizer-my-event-analytics {
        background: #e52624;
    }

    .organizer-my-event-analytics:hover {
        background: #ca1e1c;
        color: #fff;
    }

    .organizer-my-event-continue {
        background: #079d53;
    }

    .organizer-my-event-continue:hover {
        background: #087c45;
        color: #fff;
    }

    .organizer-my-event-awaiting {
        background: #075dff;
        cursor: default;
    }

    .organizer-my-events-pagination {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 0.8rem;
        padding: 0.1rem 0.25rem;
    }

    .organizer-my-events-pagination p {
        margin: 0;
        color: #0b1f6b;
        font-size: 0.68rem;
        font-weight: 600;
    }

    .organizer-my-events-pagination nav {
        display: flex;
        gap: 0.3rem;
    }

    .organizer-my-events-pagination nav a,
    .organizer-my-events-pagination nav > span {
        display: grid;
        width: 1.8rem;
        height: 1.8rem;
        place-items: center;
        border: 1px solid #dce5f4;
        border-radius: 0.35rem;
        background: #fff;
        color: #394a68;
        font-size: 0.68rem;
        text-decoration: none;
    }

    .organizer-my-events-pagination nav a[aria-current="page"] {
        border-color: #075dff;
        background: #075dff;
        color: #fff;
    }

    .organizer-my-events-pagination nav > span {
        color: #9aa5b7;
    }

    .organizer-my-events-empty {
        display: grid;
        justify-items: center;
        gap: 0.65rem;
        padding: 3rem 1rem;
        border: 1px solid #dce5f4;
        border-radius: 0.75rem;
        background: #fff;
        text-align: center;
    }

    .organizer-my-events-empty > svg {
        width: 2.5rem;
        height: 2.5rem;
        fill: none;
        stroke: #075dff;
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-width: 2;
    }

    .organizer-my-events-empty h2,
    .organizer-my-events-empty p {
        margin: 0;
    }

    .organizer-my-events-empty h2 {
        color: #0b1f6b;
        font-size: 1rem;
    }

    .organizer-my-events-empty p {
        color: #53617b;
        font-size: 0.75rem;
    }

    .organizer-my-events-dashboard :is(a, button, summary, input, select):focus-visible {
        outline: 3px solid rgba(0, 123, 255, 0.45);
        outline-offset: 2px;
    }

    @media (max-width: 1080px) {
        .organizer-my-event-card {
            grid-template-columns: minmax(7rem, 8.5rem) minmax(8rem, 1.35fr) minmax(8rem, 0.9fr) minmax(8.5rem, 1fr);
            gap: 0.6rem;
        }

        .organizer-my-event-actions {
            padding-left: 0.6rem;
        }

        .organizer-my-event-sales {
            padding-left: 0.6rem;
        }
    }

    @media (max-width: 900px) {
        .organizer-my-events-filters {
            grid-template-columns: minmax(0, 1.4fr) minmax(7rem, 0.9fr) minmax(7rem, 1fr) auto;
        }

        .organizer-my-events-date-filter {
            grid-column: 1 / 4;
            grid-row: 2;
            justify-self: start;
        }

        .organizer-my-events-filter-button {
            grid-column: 4;
            grid-row: 1;
        }

        .organizer-my-event-card {
            grid-template-columns: minmax(7rem, 9rem) minmax(0, 1fr) minmax(8rem, 0.9fr);
        }

        .organizer-my-event-actions {
            grid-column: 2 / -1;
            grid-template-columns: 1fr 1fr;
            align-items: center;
            padding: 0.4rem 0 0;
            border-top: 1px solid #e3e9f3;
            border-left: 0;
        }
    }

    @media (max-width: 760px) {
        body:has(.organizer-my-events-dashboard) .event-inventory-reference-sidebar {
            display: none;
        }

        .organizer-workspace.organizer-my-events-dashboard {
            width: calc(100% - 1rem);
            margin: 0.75rem auto 1rem;
        }

        body:has(.organizer-my-events-dashboard) .event-inventory-reference-topbar {
            width: 100%;
            margin-left: 0;
        }

        .organizer-my-events-dashboard .organizer-content {
            gap: 0.7rem;
        }

        .organizer-my-events-heading {
            align-items: flex-start;
        }

        .organizer-my-events-heading > div > svg {
            width: 2.3rem;
            height: 2.3rem;
        }

        .organizer-my-events-create {
            min-height: 2.4rem;
            padding-inline: 0.6rem;
            font-size: 0.68rem;
        }

        .organizer-my-events-stats {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .organizer-my-events-filters {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .organizer-my-events-date-filter,
        .organizer-my-events-filter-button {
            grid-column: auto;
            grid-row: auto;
        }

        .organizer-my-events-filters .organizer-my-events-search {
            grid-column: 1 / -1;
        }

        .organizer-my-events-filter-button {
            width: 100%;
        }

        .organizer-my-event-card {
            grid-template-columns: minmax(6rem, 8rem) minmax(0, 1fr);
            gap: 0.65rem;
        }

        .organizer-my-event-image {
            height: 5.2rem;
        }

        .organizer-my-event-art {
            height: 5.2rem;
        }

        .organizer-my-event-sales {
            grid-column: 1 / -1;
            min-height: 0;
            grid-template-columns: auto minmax(0, 1fr);
            align-items: center;
            gap: 0.4rem 0.7rem;
            padding: 0.55rem 0 0;
            border-top: 1px solid #e3e9f3;
            border-left: 0;
        }

        .organizer-my-event-sales > strong {
            text-align: right;
        }

        .organizer-my-event-progress {
            grid-column: 1 / -1;
        }

        .organizer-my-event-actions {
            grid-column: 1 / -1;
            grid-template-columns: minmax(0, 1fr);
            padding: 0;
            border: 0;
        }
    }

    @media (max-width: 480px) {
        .organizer-my-events-heading {
            flex-wrap: wrap;
        }

        .organizer-my-events-heading > div {
            gap: 0.5rem;
        }

        .organizer-my-events-heading > div > svg {
            width: 1.9rem;
            height: 1.9rem;
        }

        .organizer-my-events-heading h1 {
            font-size: 1.35rem;
        }

        .organizer-my-events-heading p {
            font-size: 0.68rem;
        }

        .organizer-my-events-stat {
            min-height: 4rem;
            gap: 0.45rem;
            padding: 0.45rem;
        }

        .organizer-my-events-stat-icon {
            width: 2.4rem;
            height: 2.4rem;
        }

        .organizer-my-events-stat-icon svg {
            width: 1.2rem;
            height: 1.2rem;
        }

        .organizer-my-events-stat small {
            font-size: 0.6rem;
        }

        .organizer-my-events-stat strong {
            font-size: 1rem;
        }

        .organizer-my-events-filters {
            gap: 0.4rem;
        }

        .organizer-my-events-filters input,
        .organizer-my-events-filters select {
            height: 2.4rem;
            padding-inline: 0.45rem;
            font-size: 0.62rem;
        }

        .organizer-my-events-filters .organizer-my-events-search input {
            padding-left: 2rem;
        }

        .organizer-my-event-card {
            grid-template-columns: 5.5rem minmax(0, 1fr);
            gap: 0.5rem;
            padding: 0.5rem;
        }

        .organizer-my-event-image {
            height: 4.1rem;
        }

        .organizer-my-event-art {
            height: 4.1rem;
        }

        .organizer-my-event-details h2 {
            font-size: 0.8rem;
        }

        .organizer-my-event-details p {
            font-size: 0.6rem;
        }

        .organizer-my-event-action-row {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
        }

        .organizer-my-event-secondary,
        .organizer-my-event-more > summary {
            width: 100%;
            font-size: 0.6rem;
        }

        .organizer-my-events-pagination {
            align-items: flex-start;
            flex-direction: column;
        }

        .organizer-my-events-pagination nav {
            align-self: flex-end;
        }
    }

@media (max-width: 760px) {
    .event-inventory-reference-breadcrumbs {
        gap: 0.35rem;
        font-size: 0.65rem;
    }

    .event-inventory-reference-account .organizer-account-chevron {
        display: none;
    }

    .organizer-workspace.event-inventory-dashboard {
        width: calc(100% - 1rem);
        margin: 0.75rem auto 1rem;
    }
}

@media (max-width: 420px) {
    .event-inventory-reference-breadcrumbs a:first-child,
    .event-inventory-reference-breadcrumbs > span:first-of-type {
        display: none;
    }

    .event-inventory-reference-topbar {
        grid-template-columns: auto minmax(0, 1fr) auto auto;
    }
}

.event-ticket-categories {
    display: grid;
    gap: 0.8rem;
    padding: 1rem;
    border: 1px solid #e1e8f4;
    border-radius: 0.9rem;
    background: #fff;
    box-shadow: 0 5px 18px rgba(11, 31, 107, 0.045);
}

.event-ticket-categories-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.event-ticket-categories-heading h2 {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    margin: 0;
    color: #0b1f6b;
    font-size: 1.15rem;
    font-weight: 800;
}

.event-ticket-categories-heading h2 svg {
    width: 1.35rem;
    height: 1.35rem;
    fill: none;
    stroke: #0759c7;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.event-ticket-categories-heading p {
    margin: 0.15rem 0 0 1.9rem;
    color: #687386;
    font-size: 0.72rem;
}

.event-ticket-category-add {
    display: inline-flex;
    min-height: 2.45rem;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    padding: 0.45rem 0.85rem;
    border: 1px solid #e52624;
    border-radius: 0.6rem;
    background: #e52624;
    color: #fff;
    cursor: pointer;
    font: inherit;
    font-size: 0.76rem;
    font-weight: 800;
}

.event-ticket-category-add:hover {
    border-color: #ca1e1c;
    background: #ca1e1c;
}

.event-ticket-category-add span {
    font-size: 1.1rem;
    line-height: 1;
}

.event-ticket-category-metrics {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.65rem;
}

.event-ticket-category-metric {
    display: flex;
    min-width: 0;
    min-height: 4.5rem;
    align-items: center;
    gap: 0.65rem;
    padding: 0.65rem;
    border: 1px solid #e5eaf2;
    border-radius: 0.7rem;
    background: #eef4ff;
}

.event-ticket-category-metric-sold {
    background: #effaf3;
}

.event-ticket-category-metric-reserved {
    background: #fff7eb;
}

.event-ticket-category-metric-available {
    background: #f0f2f7;
}

.event-ticket-category-metric-icon {
    display: grid;
    width: 2.5rem;
    height: 2.5rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 50%;
    background: #1265e9;
    color: #fff;
}

.event-ticket-category-metric-sold .event-ticket-category-metric-icon {
    background: #079b58;
}

.event-ticket-category-metric-reserved .event-ticket-category-metric-icon {
    background: #f59b08;
}

.event-ticket-category-metric-available .event-ticket-category-metric-icon {
    background: #566c88;
}

.event-ticket-category-metric-icon svg {
    width: 1.35rem;
    height: 1.35rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.event-ticket-category-metric-copy {
    display: grid;
    min-width: 0;
    gap: 0.05rem;
}

.event-ticket-category-metric-copy strong {
    color: #0b1f6b;
    font-size: 1.25rem;
    line-height: 1.05;
}

.event-ticket-category-metric-copy small {
    color: #243552;
    font-size: 0.66rem;
}

.event-ticket-category-table-wrap {
    border-radius: 0.6rem;
}

.event-ticket-category-table {
    min-width: 760px !important;
}

.event-ticket-category-table th,
.event-ticket-category-table td {
    padding: 0.6rem 0.45rem;
    font-size: 0.7rem;
}

.event-ticket-category-name {
    display: flex;
    min-width: 8.5rem;
    align-items: center;
    gap: 0.55rem;
}

.event-ticket-category-badge {
    display: grid;
    width: 2.15rem;
    height: 2.15rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 0.45rem;
    background: #1265e9;
    color: #fff;
    font-size: 0.62rem;
    font-weight: 800;
}

.event-ticket-category-badge-vip {
    background: #17191f;
}

.event-ticket-category-badge-early-bird {
    background: #e8a000;
}

.event-ticket-category-name > span:last-child {
    display: grid;
    gap: 0.08rem;
}

.event-ticket-category-name strong {
    color: #172033;
    font-size: 0.72rem;
}

.event-ticket-category-name small {
    max-width: 10rem;
    overflow: hidden;
    color: #687386;
    font-size: 0.61rem;
    text-overflow: ellipsis;
}

.event-ticket-category-status {
    display: inline-flex;
    min-width: 4rem;
    justify-content: center;
    padding: 0.3rem 0.55rem;
    border-radius: 999px;
    background: #d9f4e4;
    color: #08783e;
    font-size: 0.64rem;
    font-weight: 800;
}

.event-ticket-category-status.is-inactive {
    background: #eef1f7;
    color: #56627a;
}

.event-ticket-category-actions {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.event-ticket-category-edit {
    position: relative;
}

.event-ticket-category-edit > summary {
    display: inline-flex;
    min-height: 1.9rem;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border: 1px solid #2f80ff;
    border-radius: 0.45rem;
    background: #fff;
    color: #0759c7;
    cursor: pointer;
    font-size: 0.66rem;
    font-weight: 700;
    list-style: none;
    white-space: nowrap;
}

.event-ticket-category-edit > summary::-webkit-details-marker {
    display: none;
}

.event-ticket-category-edit > summary a {
    color: inherit;
    text-decoration: none;
}

.event-ticket-category-delete {
    display: inline-flex;
    min-height: 1.9rem;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border: 1px solid #ff5361;
    border-radius: 0.45rem;
    background: #fff;
    color: #d82032;
    cursor: pointer;
    font: inherit;
    font-size: 0.66rem;
    font-weight: 700;
    white-space: nowrap;
}

.event-ticket-category-delete:disabled {
    border-color: #e2e6ee;
    color: #9aa3b2;
    cursor: not-allowed;
}

.event-ticket-category-form {
    display: grid;
    gap: 0.85rem;
    min-width: min(34rem, calc(100vw - 3rem));
    padding: 1rem;
    border: 1px solid #dce5f4;
    border-radius: 0.7rem;
    background: #fff;
}

.event-ticket-category-edit .event-ticket-category-form {
    margin-top: 0.55rem;
}

.event-ticket-category-form h3 {
    margin: 0;
    color: #0b1f6b;
    font-size: 0.95rem;
}

.event-ticket-category-form .two-col {
    gap: 0.7rem;
}

.event-ticket-category-form .form-field {
    gap: 0.25rem;
}

.event-ticket-category-form .form-field > span {
    font-size: 0.7rem;
}

.event-ticket-category-create-summary {
    display: inline-flex;
    min-height: 2rem;
    align-items: center;
    justify-content: center;
    padding: 0.35rem 0.65rem;
    border: 1px solid #1265e9;
    border-radius: 0.5rem;
    background: #fff;
    color: #0759c7;
    cursor: pointer;
    font-size: 0.7rem;
    font-weight: 700;
    list-style: none;
}

.event-ticket-category-create-summary::-webkit-details-marker {
    display: none;
}

.event-ticket-category-create[open] > .event-ticket-category-create-summary {
    display: none;
}

.event-ticket-category-note {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
    padding: 0.65rem 0.75rem;
    border: 1px solid #bfd4ff;
    border-radius: 0.55rem;
    background: #eaf1ff;
    color: #173c9b;
    font-size: 0.7rem;
}

.event-ticket-category-note span {
    font-size: 1rem;
}

@media (max-width: 760px) {
    .event-ticket-categories-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .event-ticket-category-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 420px) {
    .event-ticket-category-metrics {
        gap: 0.45rem;
    }

    .event-ticket-category-metric {
        min-height: 4rem;
        gap: 0.45rem;
        padding: 0.5rem;
    }

    .event-ticket-category-metric-icon {
        width: 2rem;
        height: 2rem;
    }

    .event-ticket-category-metric-copy strong {
        font-size: 1rem;
    }
}

.event-ticket-category-wizard {
    display: grid;
    gap: 1rem;
    min-width: 0;
}

.event-ticket-wizard-progress {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.55rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.event-ticket-wizard-progress li {
    min-width: 0;
}

.event-ticket-wizard-progress button {
    display: flex;
    width: 100%;
    min-height: 3.2rem;
    align-items: center;
    gap: 0.55rem;
    padding: 0.55rem;
    border: 1px solid #dfe6f2;
    border-radius: 0.65rem;
    background: #f7f9fd;
    color: #53617b;
    cursor: pointer;
    font: inherit;
    text-align: left;
}

.event-ticket-wizard-progress button:disabled {
    cursor: default;
}

.event-ticket-wizard-progress button[aria-current="step"] {
    border-color: #1265e9;
    background: #eaf1ff;
    color: #0b1f6b;
}

.event-ticket-wizard-progress li.is-complete button {
    border-color: #a7dfbd;
    background: #effaf3;
    color: #08783e;
    cursor: pointer;
}

.event-ticket-wizard-progress button > span {
    display: grid;
    width: 1.8rem;
    height: 1.8rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 50%;
    background: #e0e7f2;
    color: #44536c;
    font-size: 0.75rem;
    font-weight: 800;
}

.event-ticket-wizard-progress button[aria-current="step"] > span {
    background: #1265e9;
    color: #fff;
}

.event-ticket-wizard-progress li.is-complete button > span {
    background: #079b58;
    color: #fff;
}

.event-ticket-wizard-progress button strong {
    overflow: hidden;
    font-size: 0.72rem;
    text-overflow: ellipsis;
}

.event-ticket-wizard-step {
    display: grid;
    gap: 1rem;
    padding: 1rem;
    border: 1px solid #e1e8f4;
    border-radius: 0.75rem;
    background: #fff;
}

.event-ticket-wizard-step[hidden] {
    display: none !important;
}

.event-ticket-wizard-step > header h3 {
    margin: 0;
    color: #0b1f6b;
    font-size: 1rem;
}

.event-ticket-wizard-step > header p {
    margin: 0.2rem 0 0;
    color: #687386;
    font-size: 0.74rem;
}

.event-ticket-category-wizard .two-col {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.8rem;
}

.event-ticket-category-wizard .form-field {
    display: grid;
    min-width: 0;
    gap: 0.35rem;
}

.event-ticket-category-wizard .form-field-wide {
    grid-column: 1 / -1;
}

.event-ticket-category-wizard .form-field > span {
    color: #243552;
    font-size: 0.74rem;
    font-weight: 700;
}

.event-ticket-category-wizard .form-field > span strong {
    color: #c62828;
}

.event-ticket-category-wizard .form-field > small {
    color: #687386;
    font-size: 0.66rem;
    line-height: 1.45;
}

.event-ticket-category-wizard .form-field input,
.event-ticket-category-wizard .form-field select,
.event-ticket-category-wizard .form-field textarea {
    width: 100%;
    min-width: 0;
    min-height: 2.65rem;
    padding: 0.6rem 0.7rem;
    border: 1px solid #cbd6e7;
    border-radius: 0.5rem;
    background: #fff;
    color: #172033;
    font: inherit;
    font-size: 0.8rem;
}

.event-ticket-category-wizard .form-field textarea {
    min-height: 5.2rem;
    resize: vertical;
}

.event-ticket-category-wizard .form-field input:focus-visible,
.event-ticket-category-wizard .form-field select:focus-visible,
.event-ticket-category-wizard .form-field textarea:focus-visible,
.event-ticket-wizard-progress button:focus-visible,
.event-ticket-wizard-actions button:focus-visible,
.event-ticket-wizard-restore:focus-visible {
    outline: 3px solid rgba(18, 101, 233, 0.3);
    outline-offset: 2px;
}

.event-ticket-price-field {
    display: flex;
    min-width: 0;
    align-items: center;
    border: 1px solid #cbd6e7;
    border-radius: 0.5rem;
    background: #fff;
}

.event-ticket-price-field > span {
    flex: 0 0 auto;
    padding-inline: 0.7rem;
    color: #53617b;
    font-size: 0.75rem;
    font-weight: 800;
}

.event-ticket-category-wizard .event-ticket-price-field input {
    border: 0;
    border-left: 1px solid #e0e6f0;
    border-radius: 0 0.5rem 0.5rem 0;
}

.event-ticket-wizard-info {
    margin: 0;
    padding: 0.65rem 0.75rem;
    border: 1px solid #bfd4ff;
    border-radius: 0.55rem;
    background: #eaf1ff;
    color: #173c9b;
    font-size: 0.7rem;
    line-height: 1.5;
}

.event-ticket-wizard-inventory {
    display: grid;
    gap: 0.6rem;
    padding: 0.85rem;
    border: 1px solid #e1e8f4;
    border-radius: 0.7rem;
    background: #f7f9fd;
}

.event-ticket-wizard-inventory h4 {
    margin: 0;
    color: #0b1f6b;
    font-size: 0.8rem;
}

.event-ticket-wizard-inventory dl,
.event-ticket-wizard-review {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.55rem;
    margin: 0;
}

.event-ticket-wizard-inventory dl > div,
.event-ticket-wizard-review > div {
    display: grid;
    min-width: 0;
    gap: 0.15rem;
    padding: 0.65rem;
    border: 1px solid #e5eaf2;
    border-radius: 0.5rem;
    background: #fff;
}

.event-ticket-wizard-inventory dt,
.event-ticket-wizard-review dt {
    color: #687386;
    font-size: 0.65rem;
}

.event-ticket-wizard-inventory dd,
.event-ticket-wizard-review dd {
    overflow-wrap: anywhere;
    margin: 0;
    color: #0b1f6b;
    font-size: 0.76rem;
    font-weight: 800;
}

.event-ticket-wizard-inventory > p {
    margin: 0;
    color: #53617b;
    font-size: 0.67rem;
    line-height: 1.45;
}

.event-ticket-wizard-review > div {
    min-height: 3.6rem;
}

.event-ticket-wizard-review dd span {
    color: #687386;
    font-size: 0.65rem;
    font-weight: 500;
}

.event-ticket-wizard-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.55rem;
}

.event-ticket-wizard-action-spacer {
    flex: 1 1 auto;
}

.event-ticket-wizard-actions button,
.event-ticket-wizard-restore {
    display: inline-flex;
    min-height: 2.45rem;
    align-items: center;
    justify-content: center;
    padding: 0.45rem 0.75rem;
    border: 1px solid #cbd6e7;
    border-radius: 0.5rem;
    background: #fff;
    color: #243552;
    cursor: pointer;
    font: inherit;
    font-size: 0.72rem;
    font-weight: 700;
}

.event-ticket-wizard-actions [hidden],
.event-ticket-wizard-restore[hidden] {
    display: none;
}

.event-ticket-wizard-actions .event-ticket-wizard-save-draft {
    border-color: #d7deea;
    background: #f7f9fd;
    color: #53617b;
}

.event-ticket-wizard-actions .event-ticket-wizard-next,
.event-ticket-wizard-actions .event-ticket-wizard-confirm {
    border-color: #e52624;
    background: #e52624;
    color: #fff;
}

.event-ticket-wizard-actions .event-ticket-wizard-next:hover,
.event-ticket-wizard-actions .event-ticket-wizard-confirm:hover:not(:disabled) {
    border-color: #ca1e1c;
    background: #ca1e1c;
}

.event-ticket-wizard-actions button:disabled {
    cursor: wait;
    opacity: 0.7;
}

.event-ticket-wizard-restore {
    justify-self: start;
    border-color: #1265e9;
    color: #0759c7;
}

.event-ticket-wizard-draft-status {
    min-height: 1rem;
    margin: 0;
    color: #08783e;
    font-size: 0.7rem;
}

@media (max-width: 760px) {
    .event-ticket-category-wizard .two-col {
        grid-template-columns: minmax(0, 1fr);
    }

    .event-ticket-category-wizard .form-field-wide {
        grid-column: auto;
    }

    .event-ticket-wizard-progress {
        gap: 0.3rem;
    }

    .event-ticket-wizard-progress button {
        min-height: 2.85rem;
        gap: 0.35rem;
        padding: 0.4rem;
    }

    .event-ticket-wizard-progress button strong {
        font-size: 0.62rem;
    }
}

@media (max-width: 420px) {
    .event-ticket-wizard-progress button {
        align-items: flex-start;
        flex-direction: column;
        min-height: 4rem;
    }

    .event-ticket-wizard-progress button > span {
        width: 1.45rem;
        height: 1.45rem;
        font-size: 0.65rem;
    }

    .event-ticket-wizard-progress button strong {
        font-size: 0.57rem;
        line-height: 1.15;
    }

    .event-ticket-wizard-review,
    .event-ticket-wizard-inventory dl {
        grid-template-columns: minmax(0, 1fr);
    }

    .event-ticket-wizard-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .event-ticket-wizard-action-spacer {
        display: none;
    }

    .event-ticket-wizard-actions button {
        width: 100%;
        font-size: 0.66rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .event-ticket-category-wizard *,
    .event-ticket-category-wizard *::before,
    .event-ticket-category-wizard *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
    }
}

.event-ticket-category-create[open] {
    display: block;
    margin-block: 1rem;
    padding: clamp(0.75rem, 2vw, 1.25rem);
    border: 1px solid #dce5f6;
    border-radius: 1rem;
    background: #fff;
    box-shadow: 0 0.6rem 1.8rem rgba(11, 31, 107, 0.08);
}

.event-ticket-category-wizard {
    gap: 1rem;
}

.event-ticket-wizard-heading {
    display: grid;
    gap: 0.25rem;
}

.event-ticket-wizard-return {
    justify-self: start;
    margin-bottom: 0.35rem;
    padding: 0.45rem 0.8rem;
    border-radius: 0.55rem;
    background: #e7efff;
    color: #0759d6;
    font-size: 0.76rem;
    font-weight: 700;
    text-decoration: none;
}

.event-ticket-wizard-return:focus-visible,
.event-ticket-wizard-actions a:focus-visible {
    outline: 3px solid rgba(0, 123, 255, 0.35);
    outline-offset: 2px;
}

.event-ticket-wizard-heading h2 {
    margin: 0;
    color: #0b1f6b;
    font-size: clamp(1.35rem, 2.4vw, 1.9rem);
    font-weight: 800;
    letter-spacing: -0.035em;
}

.event-ticket-wizard-heading p {
    margin: 0;
    color: #53617b;
    font-size: 0.82rem;
}

.event-ticket-wizard-progress {
    gap: 0;
    align-items: start;
    padding-inline: 0.15rem;
}

.event-ticket-wizard-progress li {
    position: relative;
}

.event-ticket-wizard-progress li:not(:last-child)::after {
    position: absolute;
    top: 1.05rem;
    right: -1px;
    left: calc(50% + 1.1rem);
    height: 2px;
    background: #d3dbea;
    content: "";
}

.event-ticket-wizard-progress li.is-complete:not(:last-child)::after {
    background: #007bff;
}

.event-ticket-wizard-progress button,
.event-ticket-wizard-progress button[aria-current="step"],
.event-ticket-wizard-progress li.is-complete button {
    position: relative;
    z-index: 1;
    display: grid;
    justify-items: center;
    gap: 0.4rem;
    min-height: 4.25rem;
    padding: 0.2rem 0.3rem;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #64748b;
    text-align: center;
}

.event-ticket-wizard-progress button:disabled {
    opacity: 1;
}

.event-ticket-wizard-progress button > span,
.event-ticket-wizard-progress button[aria-current="step"] > span,
.event-ticket-wizard-progress li.is-complete button > span {
    width: 2rem;
    height: 2rem;
    background: #8799ba;
    color: #fff;
    font-size: 0.82rem;
    box-shadow: 0 0 0 4px #fff;
}

.event-ticket-wizard-progress button[aria-current="step"] > span {
    background: #007bff;
}

.event-ticket-wizard-progress li.is-complete button > span {
    background: #007bff;
}

.event-ticket-wizard-progress button strong {
    max-width: 100%;
    color: inherit;
    font-size: clamp(0.63rem, 1vw, 0.78rem);
    line-height: 1.25;
}

.event-ticket-wizard-progress button[aria-current="step"] strong,
.event-ticket-wizard-progress li.is-complete button strong {
    color: #0759d6;
}

.event-ticket-wizard-stage {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(17rem, 0.9fr);
    align-items: start;
    gap: 1rem;
}

.event-ticket-wizard-form-content {
    min-width: 0;
}

.event-ticket-wizard-step {
    gap: 1rem;
    padding: clamp(0.85rem, 2vw, 1.25rem);
    border-color: #dce5f6;
    border-radius: 0.9rem;
    background: linear-gradient(180deg, #f3f6ff 0, #fff 5.2rem);
    box-shadow: 0 0.3rem 0.9rem rgba(11, 31, 107, 0.055);
}

.event-ticket-wizard-step > header {
    display: flex;
    align-items: center;
    gap: 0.7rem;
}

.event-ticket-wizard-step-number {
    display: grid;
    width: 2.35rem;
    height: 2.35rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 50%;
    background: #007bff;
    color: #fff;
    font-size: 1.1rem;
    font-weight: 800;
}

.event-ticket-wizard-step > header h3 {
    font-size: 1.05rem;
    font-weight: 800;
}

.event-ticket-wizard-step > header p {
    font-size: 0.75rem;
}

.event-ticket-category-wizard .two-col {
    gap: 0.9rem 1rem;
}

.event-ticket-category-wizard .form-field > span {
    color: #0b1f6b;
    font-size: 0.76rem;
}

.event-ticket-category-wizard .form-field input,
.event-ticket-category-wizard .form-field select,
.event-ticket-category-wizard .form-field textarea {
    min-height: 2.8rem;
    border-color: #cbd9ff;
    border-radius: 0.55rem;
    font-size: 0.82rem;
}

.event-ticket-category-wizard .form-field input:focus-visible,
.event-ticket-category-wizard .form-field select:focus-visible,
.event-ticket-category-wizard .form-field textarea:focus-visible {
    border-color: #007bff;
    outline: 3px solid rgba(0, 123, 255, 0.22);
    outline-offset: 1px;
}

.event-ticket-category-wizard .form-field select:disabled {
    background-color: #f5f7fc;
    color: #53617b;
    cursor: not-allowed;
    opacity: 1;
}

.event-ticket-category-wizard .event-ticket-price-field {
    min-height: 2.8rem;
    border-color: #cbd9ff;
}

.event-ticket-wizard-field-error {
    color: #b42318 !important;
    font-size: 0.7rem !important;
    font-weight: 700;
}

.event-ticket-wizard-character-count {
    text-align: right;
}

.event-ticket-wizard-info {
    border-color: #cbdcff;
    background: #eaf1ff;
    color: #173c9b;
}

.event-ticket-wizard-info strong {
    color: #0759d6;
}

.event-ticket-wizard-inventory {
    border-color: #cbd9ff;
    background: #eef3ff;
}

.event-ticket-wizard-inventory dl {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
}

.event-ticket-wizard-inventory dl > div {
    justify-items: center;
    border: 0;
    border-right: 1px solid #d4def2;
    border-radius: 0;
    background: transparent;
    text-align: center;
}

.event-ticket-wizard-inventory dl > div:last-child {
    border-right: 0;
}

.event-ticket-wizard-inventory dt {
    font-weight: 700;
}

.event-ticket-wizard-inventory dd {
    font-size: 1.35rem;
}

.event-ticket-wizard-preview {
    position: sticky;
    top: 1rem;
    display: grid;
    min-width: 0;
    gap: 0.8rem;
    padding: 0.9rem;
    border: 1px solid #dce5f6;
    border-radius: 0.9rem;
    background: linear-gradient(180deg, #f3f6ff 0, #fff 6rem);
    box-shadow: 0 0.3rem 0.9rem rgba(11, 31, 107, 0.055);
}

.event-ticket-wizard-preview > h3 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
    color: #0b1f6b;
    font-size: 0.95rem;
}

.event-ticket-wizard-preview > h3 svg {
    width: 1.15rem;
    height: 1.15rem;
    fill: none;
    stroke: #007bff;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.event-ticket-preview-event svg {
    width: 1.15rem;
    height: 1.15rem;
    fill: none;
    flex: 0 0 auto;
    stroke: #fff;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.event-ticket-preview-card {
    overflow: hidden;
    border: 1px solid #d4def2;
    border-radius: 0.75rem;
    background: #081c65;
    box-shadow: 0 0.35rem 0.9rem rgba(11, 31, 107, 0.18);
}

.event-ticket-preview-art {
    position: relative;
    display: flex;
    min-height: 10.5rem;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    padding: 1rem;
    background: radial-gradient(ellipse at 70% 30%, #315be2 0, #0b1f6b 48%, #071440 100%);
    color: #fff;
    text-align: center;
}

.event-ticket-preview-art::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(4, 15, 58, 0.32), rgba(4, 15, 58, 0.72));
    content: "";
}

.event-ticket-preview-art > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.event-ticket-preview-art-copy {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 0.22rem;
    max-width: 100%;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.55);
}

.event-ticket-preview-art-copy strong {
    font-size: 1.35rem;
    font-weight: 800;
    letter-spacing: 0.04em;
}

.event-ticket-preview-art-copy > span {
    font-size: 0.68rem;
    font-style: italic;
    font-weight: 600;
}

.event-ticket-preview-art-copy small {
    overflow: hidden;
    margin-top: 0.35rem;
    font-size: 0.72rem;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.event-ticket-preview-art-copy b {
    overflow-wrap: anywhere;
    color: #ffd84d;
    font-size: clamp(1.4rem, 2.2vw, 2rem);
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.event-ticket-preview-type {
    position: absolute;
    z-index: 1;
    top: 0.6rem;
    right: 0.65rem;
    padding: 0.3rem 0.5rem;
    border-radius: 0.35rem;
    background: #ffd84d;
    color: #101d4b;
    font-size: 0.6rem;
    font-weight: 800;
}

.event-ticket-preview-event {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 0.5rem;
    padding: 0.65rem;
    background: #081c65;
    color: #fff;
}

.event-ticket-preview-event > span:nth-child(2),
.event-ticket-preview-event > span:nth-child(4) {
    display: grid;
    min-width: 0;
    gap: 0.15rem;
}

.event-ticket-preview-event strong,
.event-ticket-preview-event small {
    overflow-wrap: anywhere;
    font-size: 0.62rem;
    line-height: 1.3;
}

.event-ticket-preview-price {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    padding: 0.6rem 0.75rem;
    background: linear-gradient(110deg, #ffe869, #f4b400);
    color: #071440;
}

.event-ticket-preview-price strong {
    overflow-wrap: anywhere;
    font-size: clamp(1.05rem, 1.8vw, 1.45rem);
    font-weight: 800;
}

.event-ticket-preview-price span {
    flex: 0 0 auto;
    padding: 0.22rem 0.45rem;
    border-radius: 999px;
    background: #d7f5e1;
    color: #08783e;
    font-size: 0.58rem;
    font-weight: 800;
}

.event-ticket-preview-price span.is-inactive {
    background: #fee4e2;
    color: #b42318;
}

.event-ticket-preview-description {
    min-height: 2.75rem;
    margin: 0;
    padding: 0.7rem;
    background: #fff;
    color: #263552;
    font-size: 0.68rem;
    line-height: 1.5;
    overflow-wrap: anywhere;
}

.event-ticket-preview-summary {
    display: grid;
    gap: 0.5rem;
    padding: 0.7rem;
    border: 1px solid #e0e8f7;
    border-radius: 0.65rem;
    background: #f8faff;
}

.event-ticket-preview-summary h4 {
    margin: 0;
    color: #0b1f6b;
    font-size: 0.74rem;
}

.event-ticket-preview-summary dl {
    display: grid;
    gap: 0.35rem;
    margin: 0;
}

.event-ticket-preview-summary dl > div {
    display: flex;
    justify-content: space-between;
    gap: 0.6rem;
    font-size: 0.65rem;
}

.event-ticket-preview-summary dt {
    color: #53617b;
}

.event-ticket-preview-summary dd {
    margin: 0;
    color: #0b1f6b;
    font-weight: 700;
    text-align: right;
    overflow-wrap: anywhere;
}

.event-ticket-wizard-review-section {
    display: grid;
    gap: 0.5rem;
}

.event-ticket-wizard-review-section > h4 {
    margin: 0;
    padding-bottom: 0.4rem;
    border-bottom: 1px solid #dce5f6;
    color: #0759d6;
    font-size: 0.82rem;
}

.event-ticket-wizard-review {
    gap: 0.4rem;
}

.event-ticket-wizard-review > div {
    min-height: 0;
    border-color: #e1e9f8;
}

.event-ticket-wizard-review-inventory {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.event-ticket-wizard-ready {
    display: grid;
    gap: 0.25rem;
    margin: 0;
    padding: 0.85rem 1rem;
    border: 1px solid #9de0b6;
    border-radius: 0.7rem;
    background: #e7f8ec;
    color: #12663b;
    font-size: 0.76rem;
}

.event-ticket-wizard-ready strong {
    font-size: 0.88rem;
}

.event-ticket-wizard-actions {
    position: sticky;
    z-index: 3;
    bottom: 0;
    padding: 0.7rem;
    border: 1px solid #dce5f6;
    border-radius: 0.8rem;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 -0.35rem 1rem rgba(11, 31, 107, 0.07);
    backdrop-filter: blur(8px);
}

.event-ticket-wizard-actions button,
.event-ticket-wizard-actions a {
    display: inline-flex;
    min-height: 2.65rem;
    align-items: center;
    justify-content: center;
    padding: 0.5rem 0.9rem;
    border: 1px solid #cad7f1;
    border-radius: 0.65rem;
    background: #fff;
    color: #0b1f6b;
    cursor: pointer;
    font: inherit;
    font-size: 0.73rem;
    font-weight: 700;
    text-decoration: none;
}

.event-ticket-wizard-actions .event-ticket-wizard-save-draft {
    border-color: #cbd9ff;
    background: #edf3ff;
    color: #0759d6;
}

.event-ticket-wizard-actions .event-ticket-wizard-next,
.event-ticket-wizard-actions .event-ticket-wizard-confirm {
    border-color: #007bff;
    background: #007bff;
    color: #fff;
}

.event-ticket-wizard-actions .event-ticket-wizard-next:hover,
.event-ticket-wizard-actions .event-ticket-wizard-confirm:hover:not(:disabled) {
    border-color: #0069d9;
    background: #0069d9;
}

.event-ticket-wizard-actions button:disabled {
    cursor: wait;
    opacity: 0.65;
}

@media (max-width: 900px) {
    .event-ticket-wizard-stage {
        grid-template-columns: minmax(0, 1fr);
    }

    .event-ticket-wizard-preview {
        position: static;
    }

    .event-ticket-preview-card {
        display: grid;
        grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
    }

    .event-ticket-preview-art {
        grid-row: span 3;
    }
}

@media (max-width: 760px) {
    .event-ticket-category-create[open] {
        padding: 0.7rem;
    }

    .event-ticket-wizard-progress {
        gap: 0;
    }

    .event-ticket-wizard-progress button,
    .event-ticket-wizard-progress button[aria-current="step"],
    .event-ticket-wizard-progress li.is-complete button {
        min-height: 3.8rem;
        padding-inline: 0.1rem;
    }

    .event-ticket-wizard-progress li:not(:last-child)::after {
        top: 0.95rem;
        left: calc(50% + 0.95rem);
    }

    .event-ticket-wizard-preview {
        padding: 0.75rem;
    }

    .event-ticket-preview-art {
        min-height: 9.5rem;
    }

    .event-ticket-wizard-actions {
        display: flex;
        gap: 0.4rem;
        padding: 0.55rem;
    }
}

@media (max-width: 520px) {
    .event-ticket-wizard-progress button strong {
        font-size: 0.58rem;
    }

    .event-ticket-wizard-progress button > span,
    .event-ticket-wizard-progress button[aria-current="step"] > span,
    .event-ticket-wizard-progress li.is-complete button > span {
        width: 1.75rem;
        height: 1.75rem;
        font-size: 0.72rem;
    }

    .event-ticket-wizard-progress li:not(:last-child)::after {
        top: 0.85rem;
        left: calc(50% + 0.85rem);
    }

    .event-ticket-preview-card {
        display: block;
    }

    .event-ticket-preview-art {
        min-height: 9rem;
    }

    .event-ticket-wizard-inventory dl {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .event-ticket-wizard-review,
    .event-ticket-wizard-review-inventory {
        grid-template-columns: minmax(0, 1fr);
    }

    .event-ticket-wizard-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .event-ticket-wizard-actions .event-ticket-wizard-action-spacer {
        display: none;
    }

    .event-ticket-wizard-actions button,
    .event-ticket-wizard-actions a {
        width: 100%;
        min-width: 0;
        padding-inline: 0.35rem;
        font-size: 0.66rem;
        text-align: center;
    }
}

@media (max-width: 360px) {
    .event-ticket-category-create[open] {
        padding: 0.5rem;
    }

    .event-ticket-wizard-actions {
        grid-template-columns: minmax(0, 1fr);
    }
}

.event-ticket-category-wizard {
    min-width: 0;
    scroll-margin-top: 5.25rem;
    color: #17233f;
    font-family: Montserrat, Arial, sans-serif;
}

.event-ticket-category-create[open] {
    scroll-margin-top: 5.25rem;
}

.event-ticket-wizard-progress button:focus-visible,
.event-ticket-wizard-actions button:focus-visible,
.event-ticket-wizard-actions a:focus-visible,
.event-ticket-wizard-status input:focus-visible + span {
    outline: 3px solid rgba(0, 123, 255, 0.45);
    outline-offset: 3px;
}

.event-ticket-wizard-progress li[aria-current="step"] button {
    color: #007bff;
}

.event-ticket-wizard-progress li.is-complete button > span {
    background: #0b1f6b;
}

.event-ticket-wizard-progress li.is-complete button > span::before {
    content: "";
}

.event-ticket-wizard-status {
    display: grid;
    gap: 0.55rem;
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

.event-ticket-wizard-status legend {
    margin-bottom: 0.1rem;
    color: #0b1f6b;
    font-size: 0.76rem;
    font-weight: 700;
}

.event-ticket-wizard-status legend strong {
    color: #c62828;
}

.event-ticket-wizard-status-options {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
}

.event-ticket-wizard-status-options label {
    position: relative;
    display: inline-flex;
    cursor: pointer;
}

.event-ticket-wizard-status-options input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
}

.event-ticket-wizard-status-options label > span {
    display: inline-flex;
    min-height: 2.45rem;
    align-items: center;
    gap: 0.45rem;
    padding: 0.45rem 0.8rem;
    border: 1px solid #d5deef;
    border-radius: 0.55rem;
    background: #fff;
    color: #52607a;
    font-size: 0.76rem;
    font-weight: 700;
}

.event-ticket-wizard-status-options label > span b {
    display: grid;
    width: 1.25rem;
    height: 1.25rem;
    place-items: center;
    border-radius: 50%;
    background: #e6ecf7;
    color: #53617b;
    font-size: 0.7rem;
}

.event-ticket-wizard-status-options input:checked + span {
    border-color: #007bff;
    background: #eef5ff;
    color: #0759d6;
}

.event-ticket-wizard-status-options input:checked + span b {
    background: #007bff;
    color: #fff;
}

.event-ticket-wizard-status-options input[value="inactive"]:checked + span {
    border-color: #9aa8bf;
    background: #f2f4f8;
    color: #44516a;
}

.event-ticket-wizard-status-options input[value="inactive"]:checked + span b {
    background: #64748b;
}

.event-ticket-wizard-status > small {
    color: #596780;
    font-size: 0.7rem;
    line-height: 1.45;
}

.event-ticket-wizard-info {
    display: block;
    margin: 0;
    padding: 0.8rem 0.9rem;
    border-left: 3px solid #007bff;
    border-radius: 0.45rem;
    font-size: 0.72rem;
    line-height: 1.55;
}

.event-ticket-wizard-info strong {
    display: inline-block;
    margin-bottom: 0.15rem;
}

.event-ticket-preview-art {
    isolation: isolate;
    min-height: 12.5rem;
    background:
        radial-gradient(ellipse at 75% 4%, rgba(244, 180, 0, 0.95), transparent 25%),
        radial-gradient(ellipse at 20% 5%, rgba(244, 180, 0, 0.7), transparent 23%),
        linear-gradient(140deg, #102d98 0%, #0b1f6b 50%, #061344 100%);
}

.event-ticket-preview-art::before {
    position: absolute;
    z-index: 0;
    inset: 0;
    background:
        linear-gradient(110deg, transparent 24%, rgba(255, 255, 255, 0.12) 42%, transparent 60%),
        repeating-linear-gradient(90deg, transparent 0 1.4rem, rgba(255, 255, 255, 0.035) 1.45rem 1.5rem);
    content: "";
}

.event-ticket-preview-art::after {
    z-index: 0;
    background: linear-gradient(180deg, rgba(4, 15, 58, 0.08) 0%, rgba(4, 15, 58, 0.5) 55%, rgba(4, 15, 58, 0.92) 100%);
}

.event-ticket-preview-art > .event-ticket-preview-crowd {
    position: absolute;
    z-index: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 48%;
    fill: #050d2b;
    opacity: 0.8;
}

.event-ticket-preview-art-copy {
    z-index: 1;
    width: 100%;
    gap: 0.24rem;
}

.event-ticket-preview-art-copy strong {
    color: #fff;
    font-size: 1.48rem;
    letter-spacing: 0.08em;
}

.event-ticket-preview-art-copy > span {
    color: #f4b400;
    font-size: 0.64rem;
    letter-spacing: 0.045em;
}

.event-ticket-preview-art-copy small {
    color: rgba(255, 255, 255, 0.9);
    font-size: 0.68rem;
}

.event-ticket-preview-art-copy b {
    color: #f4b400;
    font-size: clamp(1.8rem, 3vw, 2.45rem);
    line-height: 1.08;
}

.event-ticket-preview-art-copy em {
    color: #fff;
    font-size: 0.7rem;
    font-style: normal;
    font-weight: 700;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

.event-ticket-preview-type {
    z-index: 1;
    top: 0.75rem;
    right: 0.75rem;
    padding: 0.35rem 0.55rem;
    background: #f4b400;
}

.event-ticket-category-wizard[data-active-step="2"] .event-ticket-preview-art-copy small,
.event-ticket-category-wizard[data-active-step="3"] .event-ticket-preview-art-copy small {
    display: block;
    margin-top: 0.45rem;
    font-size: clamp(1.05rem, 2.5vw, 1.55rem);
    line-height: 1.2;
    white-space: normal;
}

.ticket-selection .ticket-option-price {
    display: grid;
    justify-items: end;
    gap: 0.1rem;
    text-align: right;
    white-space: normal;
}

.ticket-selection .ticket-option-original-price {
    color: #64748b;
    font-size: 0.68rem;
    text-decoration: line-through;
}

.ticket-selection [data-ticket-option-current] {
    font-weight: 800;
}

.ticket-selection [data-ticket-option-label] {
    color: #08783e;
    font-size: 0.62rem;
    font-weight: 700;
}

.event-ticket-category-wizard[data-active-step="2"] .event-ticket-preview-art-copy b,
.event-ticket-category-wizard[data-active-step="2"] .event-ticket-preview-art-copy em,
.event-ticket-category-wizard[data-active-step="3"] .event-ticket-preview-art-copy b,
.event-ticket-category-wizard[data-active-step="3"] .event-ticket-preview-art-copy em {
    display: none;
}

.event-ticket-preview-price {
    position: relative;
    min-height: 3.1rem;
    justify-content: flex-start;
    padding-right: 3.8rem;
    background: linear-gradient(110deg, #ffe869, #f4b400);
}

.event-ticket-preview-price > small[data-ticket-preview-regular-price]:not([hidden]) {
    color: #52420d;
    font-size: 0.62rem;
    font-weight: 700;
    text-decoration: line-through;
}

.event-ticket-preview-price > span[data-ticket-preview-status] {
    margin-left: auto;
}

.event-ticket-preview-price > .event-ticket-preview-qr {
    position: absolute;
    top: 50%;
    right: 0.55rem;
    display: grid;
    width: 2.65rem;
    height: 2.65rem;
    place-items: center;
    padding: 0.2rem;
    border-radius: 0.2rem;
    background: #fff;
    transform: translateY(-50%);
}

.event-ticket-preview-qr svg {
    display: block;
    width: 100%;
    height: 100%;
}

.event-ticket-wizard-actions {
    gap: 0.65rem;
    padding: 0.75rem 1rem;
    border-radius: 0.35rem;
}

.event-ticket-wizard-actions .event-ticket-wizard-next,
.event-ticket-wizard-actions .event-ticket-wizard-confirm {
    border-color: #0b1f6b;
    background: #0b1f6b;
}

.event-ticket-wizard-actions .event-ticket-wizard-next:hover,
.event-ticket-wizard-actions .event-ticket-wizard-confirm:hover:not(:disabled) {
    border-color: #102d98;
    background: #102d98;
}

.event-ticket-wizard-actions .event-ticket-wizard-cancel {
    color: #b42318;
}

@media (max-width: 520px) {
    .event-ticket-wizard-actions .event-ticket-wizard-next,
    .event-ticket-wizard-actions .event-ticket-wizard-confirm {
        grid-column: 1 / -1;
    }

    .event-ticket-preview-price {
        flex-wrap: wrap;
    }
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] {
    width: calc(100% - 14rem);
    margin: 1rem 1rem 1.5rem 13rem;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .organizer-content {
    gap: 0.8rem;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] > .organizer-content > .event-inventory-breadcrumbs,
.event-inventory-dashboard[data-ticket-editor-focus="true"] > .organizer-content > .event-inventory-back-row,
.event-inventory-dashboard[data-ticket-editor-focus="true"] > .organizer-content > .event-inventory-heading,
.event-inventory-dashboard[data-ticket-editor-focus="true"] > .organizer-content > .event-inventory-tabs,
.event-inventory-dashboard[data-ticket-editor-focus="true"] > .organizer-content > .notice {
    display: none;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] [data-event-inventory-panel]:not(#event-panel-categories) {
    display: none !important;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] #event-panel-categories {
    display: block !important;
    min-width: 0;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-categories {
    display: block;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-categories-heading,
.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-metrics,
.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-table thead,
.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-table tbody > tr:not([data-ticket-edit-row]) {
    display: none;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-table-wrap {
    overflow: visible;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-table,
.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-table tbody,
.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-table tbody > tr,
.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-table tbody > tr > td {
    display: block;
    width: 100%;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-table {
    border: 0;
    background: transparent;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-table tbody > tr[data-ticket-edit-row] {
    border: 0;
    background: transparent;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-table tbody > tr[data-ticket-edit-row] > td {
    display: none;
    padding: 0;
    border: 0;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-table tbody > tr[data-ticket-edit-row] > .event-ticket-category-actions {
    display: block;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-edit {
    display: block;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-edit > summary,
.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-delete {
    display: none;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-edit .event-ticket-category-wizard {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-wizard {
    gap: 0.9rem;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-heading {
    gap: 0.7rem;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-return {
    min-height: 2rem;
    margin: 0;
    padding: 0.4rem 0.75rem;
    border: 1px solid #d5deed;
    background: #fff;
    color: #233554;
    font-size: 0.72rem;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-title {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-title > svg {
    width: 2.45rem;
    height: 2.45rem;
    flex: 0 0 auto;
    fill: #007bff;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-heading h2 {
    font-size: clamp(1.45rem, 2.2vw, 1.8rem);
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-heading p {
    margin-top: 0.18rem;
    font-size: 0.76rem;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-progress button {
    min-height: 3.2rem;
    border-radius: 0.45rem;
    background: #fff;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-stage {
    grid-template-columns: minmax(0, 1.08fr) minmax(18rem, 0.92fr);
    align-items: start;
    gap: 0.9rem;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-step,
.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-preview {
    padding: 1rem;
    border: 1px solid #dce5f4;
    border-radius: 0.65rem;
    background: #fff;
    box-shadow: 0 0.2rem 0.75rem rgba(11, 31, 107, 0.05);
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-step {
    gap: 0.8rem;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-step > header {
    margin: -1rem -1rem 0;
    padding: 0.85rem 1rem;
    border-bottom: 1px solid #e6ecf5;
    background: #f7f9fd;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-step > header .event-ticket-wizard-step-number {
    display: none;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-step > header h3 {
    font-size: 0.92rem;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-step > header p {
    font-size: 0.68rem;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-wizard .two-col {
    gap: 0.65rem 0.8rem;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-wizard .form-field > span {
    font-size: 0.68rem;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-wizard .form-field input,
.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-wizard .form-field select,
.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-wizard .form-field textarea {
    min-height: 2.45rem;
    border-color: #cfdbed;
    border-radius: 0.4rem;
    font-size: 0.72rem;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-wizard .form-field textarea {
    min-height: 5.5rem;
}

.event-ticket-category-name-control,
.event-ticket-type-field {
    position: relative;
    display: flex;
    min-width: 0;
    align-items: center;
}

.event-ticket-category-name-icon,
.event-ticket-type-field > svg {
    position: absolute;
    z-index: 1;
    left: 0.65rem;
    width: 1rem;
    height: 1rem;
    color: #8290a9;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.7;
    pointer-events: none;
}

.event-ticket-category-name-icon {
    color: #f4b400;
    font-size: 0.8rem;
    line-height: 1rem;
}

.event-ticket-category-name-control input,
.event-ticket-type-field select {
    padding-left: 2rem !important;
}

.event-ticket-type-field select {
    appearance: none;
    opacity: 1 !important;
}

.event-ticket-field-info {
    display: inline-grid;
    width: 0.9rem;
    height: 0.9rem;
    place-items: center;
    margin-left: 0.2rem;
    border-radius: 50%;
    background: #e8effa;
    color: #576680;
    font-size: 0.6rem;
    font-style: normal;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-preview > h3 {
    margin-bottom: 0.65rem;
    font-size: 0.82rem;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-preview-art {
    min-height: 10rem;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-preview-summary {
    margin-top: 0.7rem;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-actions {
    position: sticky;
    bottom: 0.5rem;
    z-index: 5;
    min-height: 3.6rem;
    padding: 0.55rem 0.75rem;
    border-radius: 0.45rem;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-actions .event-ticket-wizard-confirm {
    border-color: #007bff;
    background: #007bff;
}

.event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-actions .event-ticket-wizard-confirm:hover:not(:disabled) {
    border-color: #0069d9;
    background: #0069d9;
}

@media (max-width: 900px) {
    .event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-stage {
        grid-template-columns: minmax(0, 1fr);
    }

    .event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-preview {
        position: static;
    }
}

@media (max-width: 760px) {
    .event-inventory-dashboard[data-ticket-editor-focus="true"] {
        width: calc(100% - 1rem);
        margin: 0.75rem auto 1rem;
    }

    .event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-category-wizard .two-col {
        grid-template-columns: minmax(0, 1fr);
    }

    .event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-stage {
        gap: 0.65rem;
    }

    .event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-step,
    .event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-preview {
        padding: 0.8rem;
    }

    .event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-step > header {
        margin: -0.8rem -0.8rem 0;
        padding: 0.75rem 0.8rem;
    }

    .event-inventory-dashboard[data-ticket-editor-focus="true"] .event-inventory-reference-breadcrumbs a,
    .event-inventory-dashboard[data-ticket-editor-focus="true"] .event-inventory-reference-breadcrumbs > span:not([aria-current]) {
        display: none;
    }

    .event-inventory-dashboard[data-ticket-editor-focus="true"] .event-inventory-reference-breadcrumbs [aria-current="page"] {
        overflow: hidden;
        min-width: 0;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
}

@media (max-width: 520px) {
    .event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-title > svg {
        width: 2rem;
        height: 2rem;
    }

    .event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-actions {
        gap: 0.35rem;
        padding: 0.45rem;
    }

    .event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-actions .event-ticket-wizard-cancel,
    .event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-actions .event-ticket-wizard-save-draft,
    .event-inventory-dashboard[data-ticket-editor-focus="true"] .event-ticket-wizard-actions .event-ticket-wizard-confirm {
        grid-column: auto;
    }
}

.site-notifications:not([open]) > .site-notification-panel,
.organizer-topbar-account:not([open]) > .organizer-account-menu,
.organizer-mobile-menu:not([open]) > nav,
.mobile-nav:not([open]) > nav {
    display: none;
}

body:has(.organizer-workspace) .organizer-workspace {
    width: min(calc(100% - 15rem), 90rem);
    margin: 0.15rem 1rem 1.5rem 14rem;
}

body:has(.organizer-workspace) .organizer-sidebar {
    position: fixed;
    z-index: 41;
    top: 4.5rem;
    right: auto;
    bottom: 1rem;
    left: 0;
    display: flex;
    width: 12.5rem;
    max-height: calc(100dvh - 5.5rem);
    min-height: 0;
    gap: 0.75rem;
    overflow: hidden;
    padding: 0.9rem 0.65rem;
    border-radius: 0 var(--vdm-radius-lg) var(--vdm-radius-lg) 0;
    background: linear-gradient(160deg, #0B1F6B, #06164F);
}

body:has(.organizer-workspace) .organizer-sidebar-brand,
body:has(.organizer-workspace) .organizer-sidebar-profile {
    display: none;
}

body:has(.organizer-workspace) .organizer-sidebar-label {
    font-size: 0.58rem;
    letter-spacing: 0.04em;
}

body:has(.organizer-workspace) .organizer-sidebar nav {
    min-height: 0;
    flex: 1 1 auto;
    gap: 0.15rem;
    align-content: start;
    overflow-y: auto;
    scrollbar-width: none;
}

body:has(.organizer-workspace) .organizer-sidebar nav::-webkit-scrollbar {
    display: none;
}

body:has(.organizer-workspace) .organizer-sidebar nav > a {
    min-height: 2.35rem;
    padding: 0.45rem 0.55rem;
    font-size: 0.69rem;
}

body:has(.organizer-workspace) .organizer-sidebar nav > a svg {
    width: 1.1rem;
    height: 1.1rem;
}

body:has(.organizer-workspace) .organizer-sidebar nav > a.is-active {
    background: var(--vdm-blue);
    color: var(--vdm-white);
}

body:has(.organizer-workspace) .organizer-sidebar-footer {
    flex: 0 0 auto;
    margin-top: auto;
}

@media (min-width: 821px) {
    body:has(.organizer-workspace) .event-inventory-reference-topbar {
        width: calc(100% - 12.5rem);
        margin-left: 12.5rem;
    }
}

@media (max-width: 820px) {
    body:has(.organizer-workspace) {
        padding-bottom: calc(5.5rem + env(safe-area-inset-bottom));
    }

    body:has(.organizer-workspace) .organizer-sidebar {
        top: auto;
        right: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        max-height: 5.5rem;
        padding: 0.45rem calc(0.5rem + env(safe-area-inset-right)) calc(0.45rem + env(safe-area-inset-bottom)) calc(0.5rem + env(safe-area-inset-left));
        border-radius: var(--vdm-radius-md) var(--vdm-radius-md) 0 0;
    }

    body:has(.organizer-workspace) .organizer-sidebar-heading,
    body:has(.organizer-workspace) .organizer-sidebar-event,
    body:has(.organizer-workspace) .organizer-sidebar-footer {
        display: none;
    }

    body:has(.organizer-workspace) .organizer-sidebar nav {
        display: flex;
        width: 100%;
        flex-wrap: nowrap;
        gap: var(--vdm-space-1);
        overflow-x: auto;
        overscroll-behavior-inline: contain;
    }

    body:has(.organizer-workspace) .organizer-sidebar nav > a {
        min-height: 2.75rem;
        flex: 0 0 auto;
        justify-content: center;
        padding-inline: var(--vdm-space-3);
        font-size: var(--vdm-font-size-xs);
        white-space: nowrap;
    }

    body:has(.organizer-workspace) .organizer-workspace {
        width: calc(100% - 1rem);
        margin: 0.85rem auto 1rem;
    }

    body:has(.organizer-workspace) .event-inventory-reference-topbar {
        width: 100%;
        min-height: 3.5rem;
        grid-template-columns: auto minmax(0, 1fr) auto auto;
        gap: 0.45rem;
        margin-left: 0;
        padding-inline: 0.5rem;
    }
}

.organizer-inventory-header {
    position: sticky;
    z-index: 45;
    top: 0;
    min-height: 2.9rem;
    border-bottom: 1px solid #dce5fb;
    background: #fff;
}

.organizer-inventory-topbar {
    display: grid;
    width: calc(100% - 175px);
    min-height: 2.9rem;
    grid-template-columns: 2.7rem minmax(0, 1fr) 2.5rem 4.5rem;
    align-items: center;
    gap: 0.25rem;
    margin-left: 175px;
    padding: 0 1rem 0 0;
}

.organizer-inventory-topbar .organizer-mobile-menu {
    display: block;
    border-right: 1px solid #e0e8fa;
}

.organizer-inventory-topbar .organizer-mobile-menu > summary {
    display: grid;
    width: 2.7rem;
    height: 2.9rem;
    place-items: center;
    color: #0b1f6b;
    cursor: pointer;
    list-style: none;
}

.organizer-inventory-topbar .organizer-mobile-menu > summary::-webkit-details-marker {
    display: none;
}

.organizer-inventory-topbar .organizer-mobile-menu > summary svg {
    width: 1.35rem;
    height: 1.35rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-width: 2;
}

.organizer-inventory-breadcrumbs {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 0.55rem;
    overflow: hidden;
    color: #0b1f6b;
    font-size: 0.7rem;
    white-space: nowrap;
}

.organizer-inventory-breadcrumbs a {
    overflow: hidden;
    color: #0b1f6b;
    text-decoration: none;
    text-overflow: ellipsis;
}

.organizer-inventory-breadcrumbs [aria-current="page"] {
    font-weight: 700;
}

.organizer-inventory-account > summary {
    min-height: 2.35rem;
    justify-content: flex-end;
    gap: 0.35rem;
    padding: 0;
}

.organizer-inventory-account .organizer-account-avatar {
    width: 2rem;
    height: 2rem;
    border: 0;
    background: #0b1fbb;
    color: #fff;
    font-size: 0.75rem;
}

.organizer-inventory-account .organizer-account-chevron {
    color: #10266e;
}

.organizer-inventory-workspace {
    display: block;
    width: calc(100% - 175px);
    max-width: none;
    margin: 0 0 0 175px;
    padding: 1rem 1rem 2rem;
}

.organizer-inventory-content {
    display: grid;
    min-width: 0;
    gap: 0.75rem;
}

.organizer-inventory-sidebar {
    position: fixed;
    z-index: 46;
    top: 0;
    right: auto;
    bottom: 0;
    left: 0;
    display: flex;
    width: 175px;
    max-height: 100dvh;
    min-height: 0;
    flex-direction: column;
    gap: 0.55rem;
    overflow: hidden;
    padding: 0.65rem 0.55rem 0.75rem;
    border: 0;
    border-radius: 0;
    background: linear-gradient(165deg, #0b237f 0%, #06164f 100%);
    box-shadow: none;
}

.organizer-inventory-sidebar > .brand-logo {
    display: flex;
    width: 100%;
    height: 4.5rem;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    padding: 0.2rem 0.3rem;
}

.organizer-inventory-sidebar > .brand-logo img {
    display: block;
    width: 8.1rem;
    max-width: 100%;
    height: 4.2rem;
    object-fit: contain;
}

.organizer-inventory-profile {
    display: flex;
    min-height: 3rem;
    flex: 0 0 auto;
    align-items: center;
    gap: 0.55rem;
    padding: 0.3rem 0.35rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.16);
    color: #fff;
    text-decoration: none;
}

.organizer-inventory-avatar {
    display: grid;
    width: 2rem;
    height: 2rem;
    flex: 0 0 auto;
    place-items: center;
    border: 2px solid rgba(255, 255, 255, 0.75);
    border-radius: 50%;
    background: #e7efff;
    color: #0b1f6b;
    font-size: 0.65rem;
    font-weight: 800;
}

.organizer-inventory-avatar-image {
    display: block;
    width: 2rem;
    height: 2rem;
    flex: 0 0 auto;
    border: 2px solid rgba(255, 255, 255, 0.75);
    border-radius: 50%;
    object-fit: cover;
}

.organizer-inventory-profile > span:nth-child(2) {
    display: grid;
    min-width: 0;
    gap: 0.12rem;
}

.organizer-inventory-profile strong,
.organizer-inventory-profile small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.organizer-inventory-profile strong {
    font-size: 0.62rem;
}

.organizer-inventory-profile small {
    color: #d7e3ff;
    font-size: 0.58rem;
}

.organizer-inventory-profile > svg {
    width: 0.85rem;
    height: 0.85rem;
    flex: 0 0 auto;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
}

.organizer-inventory-sidebar nav {
    display: flex;
    min-height: 0;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 0.12rem;
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-width: none;
}

.organizer-inventory-sidebar nav::-webkit-scrollbar {
    display: none;
}

.organizer-inventory-sidebar nav a {
    display: flex;
    min-height: 1.9rem;
    flex: 0 0 auto;
    align-items: center;
    gap: 0.6rem;
    padding: 0.34rem 0.42rem;
    border-radius: 0.42rem;
    color: #f7f9ff;
    font-size: 0.66rem;
    font-weight: 600;
    text-decoration: none;
}

.organizer-inventory-sidebar nav a:hover,
.organizer-inventory-sidebar nav a:focus-visible {
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
}

.organizer-inventory-sidebar nav a.is-active {
    background: #0875ff;
    color: #fff;
    box-shadow: 0 4px 10px rgba(0, 77, 255, 0.25);
}

.organizer-inventory-sidebar nav a svg {
    width: 1.05rem;
    height: 1.05rem;
    flex: 0 0 auto;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.organizer-inventory-upgrade {
    display: grid;
    flex: 0 0 auto;
    justify-items: center;
    gap: 0.24rem;
    padding: 0.5rem 0.4rem 0.55rem;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 0.65rem;
    background: rgba(1, 13, 61, 0.55);
    color: #fff;
    text-align: center;
}

.organizer-inventory-upgrade > span {
    color: #ffc400;
    font-size: 1.45rem;
    line-height: 1;
}

.organizer-inventory-upgrade strong {
    font-size: 0.67rem;
}

.organizer-inventory-upgrade small {
    max-width: 8.5rem;
    color: #d7e3ff;
    font-size: 0.58rem;
    line-height: 1.35;
}

.organizer-inventory-upgrade a {
    display: grid;
    min-height: 1.9rem;
    width: 100%;
    max-width: 6.7rem;
    place-items: center;
    margin-top: 0.12rem;
    border-radius: 0.45rem;
    background: #f51e29;
    color: #fff;
    font-size: 0.62rem;
    font-weight: 700;
    text-decoration: none;
}

.organizer-inventory-heading {
    display: flex;
    min-height: 3rem;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.organizer-inventory-heading-title {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 0.7rem;
}

.organizer-inventory-heading-title > span:last-child {
    min-width: 0;
}

.organizer-inventory-heading-icon {
    display: grid;
    width: 2.9rem;
    height: 2.9rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 0.7rem;
    background: #e5efff;
    color: #0965f5;
    transform: rotate(-24deg);
}

.organizer-inventory-heading-icon svg {
    width: 2rem;
    height: 2rem;
    fill: currentColor;
}

.organizer-inventory-heading h1 {
    margin: 0;
    color: #0b1f6b;
    font-size: clamp(1.05rem, 1.6vw, 1.4rem);
    font-weight: 800;
    letter-spacing: -0.035em;
    line-height: 1.2;
}

.organizer-inventory-heading p {
    margin: 0.16rem 0 0;
    color: #273b73;
    font-size: 0.72rem;
}

.organizer-inventory-heading-actions {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 0.55rem;
}

.organizer-inventory-range,
.organizer-inventory-export {
    display: flex;
    min-height: 2.15rem;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    padding: 0 0.7rem;
    border: 1px solid #d4e0ff;
    border-radius: 0.5rem;
    background: #fff;
    color: #0b1f6b;
    font-size: 0.68rem;
    font-weight: 700;
}

.organizer-inventory-range svg,
.organizer-inventory-export svg {
    width: 1rem;
    height: 1rem;
    flex: 0 0 auto;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.organizer-inventory-range select {
    max-width: 9rem;
    border: 0;
    outline: 0;
    background: transparent;
    color: inherit;
    font: inherit;
}

.organizer-inventory-export {
    border-color: #0664ef;
    background: #0866f5;
    color: #fff;
    cursor: pointer;
    font-family: inherit;
    text-decoration: none;
}

.organizer-inventory-export:hover {
    background: #0758d6;
}

.organizer-inventory-kpis {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.65rem;
}

.organizer-inventory-kpi,
.organizer-inventory-panel,
.organizer-inventory-details {
    min-width: 0;
    border: 1px solid #d9e4ff;
    border-radius: 0.72rem;
    background: #fff;
    box-shadow: 0 4px 15px rgba(18, 60, 135, 0.045);
}

.organizer-inventory-kpi {
    display: flex;
    min-height: 5.2rem;
    align-items: center;
    gap: 0.7rem;
    padding: 0.7rem 0.8rem;
}

.organizer-inventory-kpi-icon {
    display: grid;
    width: 2.85rem;
    height: 2.85rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 50%;
    background: #0866f5;
    color: #fff;
}

.organizer-inventory-kpi-sold .organizer-inventory-kpi-icon { background: #08a85b; }
.organizer-inventory-kpi-reserved .organizer-inventory-kpi-icon { background: #f5a000; }
.organizer-inventory-kpi-available .organizer-inventory-kpi-icon { background: #7919e8; }

.organizer-inventory-kpi-icon svg {
    width: 1.4rem;
    height: 1.4rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.organizer-inventory-kpi-copy {
    display: grid;
    min-width: 0;
    gap: 0.05rem;
}

.organizer-inventory-kpi-copy > span {
    overflow: hidden;
    color: #142a70;
    font-size: 0.69rem;
    font-weight: 600;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.organizer-inventory-kpi-copy strong {
    color: #0b1f6b;
    font-size: 1.2rem;
    font-weight: 800;
    line-height: 1.1;
}

.organizer-inventory-kpi-copy small {
    color: #53658c;
    font-size: 0.59rem;
}

.organizer-inventory-insights {
    display: grid;
    grid-template-columns: minmax(14rem, 0.95fr) minmax(20rem, 1.45fr) minmax(13rem, 0.8fr);
    gap: 0.65rem;
}

.organizer-inventory-panel {
    min-height: 12.1rem;
    padding: 0.7rem 0.8rem;
}

.organizer-inventory-panel h2,
.organizer-inventory-details-heading h2 {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin: 0;
    color: #0b1f6b;
    font-size: 0.78rem;
    font-weight: 800;
}

.organizer-inventory-panel h2 svg,
.organizer-inventory-details-heading h2 svg {
    width: 1.05rem;
    height: 1.05rem;
    flex: 0 0 auto;
    fill: none;
    stroke: #0866f5;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.organizer-inventory-donut-row {
    display: flex;
    height: calc(100% - 1.4rem);
    min-height: 9.2rem;
    align-items: center;
    justify-content: space-around;
    gap: 0.45rem;
    padding-top: 0.2rem;
}

.organizer-inventory-donut {
    display: grid;
    width: clamp(6rem, 8vw, 7.4rem);
    aspect-ratio: 1;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 50%;
    background: conic-gradient(#0866f5 0 var(--sold), #f5a000 var(--sold) var(--reserved), #08a85b var(--reserved) var(--available), #eef3fb var(--available) 100%);
    position: relative;
}

.organizer-inventory-donut::before {
    position: absolute;
    width: 62%;
    aspect-ratio: 1;
    border-radius: 50%;
    background: #fff;
    content: "";
}

.organizer-inventory-donut > span {
    z-index: 1;
    display: grid;
    justify-items: center;
    color: #0b1f6b;
}

.organizer-inventory-donut strong {
    font-size: 1rem;
    font-weight: 800;
}

.organizer-inventory-donut small {
    font-size: 0.58rem;
    font-weight: 600;
}

.organizer-inventory-legend {
    display: grid;
    min-width: 0;
    gap: 0.62rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.organizer-inventory-legend li {
    display: flex;
    align-items: flex-start;
    gap: 0.4rem;
    color: #203671;
    font-size: 0.63rem;
}

.organizer-inventory-legend li > i,
.organizer-inventory-chart-legend i {
    display: block;
    width: 0.55rem;
    height: 0.55rem;
    flex: 0 0 auto;
    margin-top: 0.12rem;
    border-radius: 50%;
    background: var(--legend-color, #0866f5);
}

.organizer-inventory-legend li > span {
    display: grid;
    gap: 0.1rem;
}

.organizer-inventory-legend strong {
    color: #0b1f6b;
    font-size: 0.62rem;
    white-space: nowrap;
}

.organizer-inventory-panel-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}

.organizer-inventory-chart-legend {
    display: flex;
    flex: 0 0 auto;
    gap: 0.5rem;
    color: #344875;
    font-size: 0.58rem;
}

.organizer-inventory-chart-legend span {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    white-space: nowrap;
}

.organizer-inventory-chart-legend span:first-child i,
.organizer-inventory-chart-sold-point { fill: #0866f5; background: #0866f5; }
.organizer-inventory-chart-legend span:last-child i { background: #08a85b; }

.organizer-inventory-chart {
    display: block;
    width: 100%;
    height: 10rem;
    margin-top: 0.25rem;
    overflow: visible;
}

.organizer-inventory-chart-grid {
    stroke: #e5ebf6;
    stroke-width: 1;
}

.organizer-inventory-chart-grid-vertical {
    stroke-dasharray: 2 3;
}

.organizer-inventory-chart-axis,
.organizer-inventory-chart-axis-year {
    fill: #203671;
    font-family: Montserrat, sans-serif;
    font-size: 9px;
}

.organizer-inventory-chart-axis-year {
    fill: #647395;
    font-size: 8px;
}

.organizer-inventory-chart-sold-line {
    fill: none;
    stroke: #0866f5;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2.5;
}

.organizer-inventory-chart-sold-point {
    stroke: #fff;
    stroke-width: 1.5;
}

.organizer-inventory-chart-available-line {
    stroke: #08a85b;
    stroke-dasharray: 5 4;
    stroke-width: 2;
}

.organizer-inventory-quick-insights {
    display: flex;
    flex-direction: column;
}

.organizer-inventory-insight-item {
    display: flex;
    min-height: 2.8rem;
    flex: 1 1 auto;
    align-items: center;
    gap: 0.5rem;
    padding: 0.4rem 0;
    border-bottom: 1px solid #e6ecf7;
}

.organizer-inventory-insight-item:last-child {
    border-bottom: 0;
}

.organizer-inventory-insight-icon {
    display: grid;
    width: 1.75rem;
    height: 1.75rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 50%;
    background: #e6f8ef;
    color: #08a85b;
    font-size: 1rem;
    font-weight: 800;
}

.organizer-inventory-insight-icon svg {
    width: 1rem;
    height: 1rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
}

.insight-peak { background: #f1eaff; color: #7919e8; }
.insight-low { background: #fff2df; color: #f08a00; }

.organizer-inventory-insight-item p {
    display: grid;
    min-width: 0;
    gap: 0.08rem;
    margin: 0;
    color: #0b1f6b;
}

.organizer-inventory-insight-item strong {
    font-size: 0.63rem;
}

.organizer-inventory-insight-item b {
    overflow: hidden;
    color: #13834b;
    font-size: 0.68rem;
    text-overflow: ellipsis;
}

.organizer-inventory-insight-item b.is-negative,
.organizer-inventory-insight-item:last-child b {
    color: #be2834;
}

.organizer-inventory-insight-item small {
    overflow: hidden;
    color: #46577e;
    font-size: 0.55rem;
    text-overflow: ellipsis;
}

.organizer-inventory-details {
    overflow: visible;
}

.organizer-inventory-details-heading {
    display: flex;
    min-height: 2.75rem;
    align-items: center;
    justify-content: space-between;
    gap: 0.6rem;
    padding: 0.45rem 0.65rem;
}

.organizer-inventory-details-heading h2 {
    flex: 0 0 auto;
    font-size: 0.83rem;
}

.organizer-inventory-details-heading h2 svg {
    width: 1.15rem;
    height: 1.15rem;
}

.organizer-inventory-table-filters {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 0.38rem;
}

.organizer-inventory-search,
.organizer-inventory-status {
    display: flex;
    height: 1.9rem;
    min-width: 0;
    align-items: center;
    gap: 0.3rem;
    padding: 0 0.45rem;
    border: 1px solid #d9e3f7;
    border-radius: 0.42rem;
    background: #fff;
}

.organizer-inventory-content .visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    clip-path: inset(50%) !important;
}

.organizer-inventory-search {
    width: 10rem;
}

.organizer-inventory-search svg {
    width: 0.9rem;
    height: 0.9rem;
    flex: 0 0 auto;
    fill: none;
    stroke: #354c7c;
    stroke-width: 2;
}

.organizer-inventory-search input,
.organizer-inventory-status select {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: #1d326c;
    font: inherit;
    font-size: 0.62rem;
}

.organizer-inventory-status {
    width: 7rem;
}

.organizer-inventory-extra-filters {
    position: relative;
}

.organizer-inventory-extra-filters > summary {
    display: flex;
    height: 1.9rem;
    align-items: center;
    gap: 0.3rem;
    padding: 0 0.45rem;
    border-radius: 0.4rem;
    color: #143276;
    cursor: pointer;
    font-size: 0.63rem;
    font-weight: 700;
    list-style: none;
}

.organizer-inventory-extra-filters > summary::-webkit-details-marker { display: none; }
.organizer-inventory-extra-filters > summary:hover { background: #eef4ff; }

.organizer-inventory-extra-filters > summary svg {
    width: 0.95rem;
    height: 0.95rem;
    fill: none;
    stroke: #0866f5;
    stroke-width: 2;
}

.organizer-inventory-extra-filters > div {
    position: absolute;
    z-index: 30;
    top: calc(100% + 0.25rem);
    right: 0;
    display: grid;
    width: 15rem;
    gap: 0.6rem;
    padding: 0.7rem;
    border: 1px solid #d9e3f7;
    border-radius: 0.55rem;
    background: #fff;
    box-shadow: 0 12px 30px rgba(12, 38, 90, 0.16);
}

.organizer-inventory-extra-filters label {
    display: grid;
    gap: 0.25rem;
    color: #203671;
    font-size: 0.62rem;
    font-weight: 700;
}

.organizer-inventory-extra-filters select {
    width: 100%;
    min-height: 2rem;
    border: 1px solid #d9e3f7;
    border-radius: 0.35rem;
    background: #fff;
    color: #0b1f6b;
    font: inherit;
    font-weight: 500;
}

.organizer-inventory-apply-filter,
.organizer-inventory-clear-filter {
    display: grid;
    min-height: 1.9rem;
    place-items: center;
    padding: 0 0.55rem;
    border: 0;
    border-radius: 0.4rem;
    background: transparent;
    color: #0b1f6b;
    cursor: pointer;
    font: inherit;
    font-size: 0.63rem;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
}

.organizer-inventory-apply-filter {
    background: #0866f5;
    color: #fff;
}

.organizer-inventory-apply-filter:hover { background: #0758d6; }
.organizer-inventory-clear-filter:hover { background: #eef4ff; }

.organizer-inventory-table-scroll {
    width: 100%;
    overflow-x: auto;
    border-top: 1px solid #e3eaf7;
    scrollbar-width: thin;
}

.organizer-inventory-table {
    width: 100%;
    min-width: 840px;
    border-collapse: collapse;
    color: #102568;
    font-size: 0.62rem;
    text-align: left;
}

.organizer-inventory-table thead {
    background: #eef3ff;
}

.organizer-inventory-table th {
    height: 1.9rem;
    padding: 0.35rem 0.4rem;
    color: #102568;
    font-size: 0.6rem;
    font-weight: 800;
    white-space: nowrap;
}

.organizer-inventory-table td {
    height: 2.65rem;
    padding: 0.35rem 0.4rem;
    border-top: 1px solid #e5ebf6;
    font-weight: 600;
    white-space: nowrap;
}

.organizer-inventory-table tbody tr:hover {
    background: #f8faff;
}

.organizer-inventory-event-cell {
    display: flex;
    min-width: 9.5rem;
    align-items: center;
    gap: 0.4rem;
}

.organizer-inventory-event-cell > img,
.organizer-inventory-event-placeholder {
    display: grid;
    width: 2.65rem;
    height: 1.75rem;
    flex: 0 0 auto;
    place-items: center;
    overflow: hidden;
    border-radius: 0.25rem;
    background: #e8efff;
    object-fit: cover;
}

.organizer-inventory-event-placeholder svg {
    width: 1rem;
    height: 1rem;
    fill: none;
    stroke: #5571ad;
    stroke-width: 1.5;
}

.organizer-inventory-event-cell > span:last-child {
    display: grid;
    min-width: 0;
    gap: 0.1rem;
}

.organizer-inventory-event-cell strong {
    max-width: 9rem;
    overflow: hidden;
    color: #0b1f6b;
    font-size: 0.61rem;
    text-overflow: ellipsis;
}

.organizer-inventory-event-cell small {
    color: #52658f;
    font-size: 0.54rem;
}

.organizer-inventory-event-date {
    display: inline-grid;
    grid-template-columns: auto auto;
    align-items: center;
    column-gap: 0.25rem;
}

.organizer-inventory-event-date svg {
    width: 0.75rem;
    height: 0.75rem;
    grid-row: span 2;
    fill: none;
    stroke: #183778;
    stroke-width: 1.8;
}

.organizer-inventory-event-date small {
    color: #4a5e8a;
    font-size: 0.53rem;
}

.organizer-inventory-status-badge {
    display: inline-flex;
    min-height: 1.35rem;
    align-items: center;
    gap: 0.25rem;
    padding: 0.15rem 0.4rem;
    border-radius: 1rem;
    background: #e8f8ef;
    color: #12824b;
    font-weight: 700;
}

.organizer-inventory-status-badge i {
    width: 0.46rem;
    height: 0.46rem;
    border-radius: 50%;
    background: currentColor;
}

.organizer-inventory-status-badge.status-good { background: #eaf1ff; color: #1762d1; }
.organizer-inventory-status-badge.status-low { background: #fff3dc; color: #a56300; }
.organizer-inventory-status-badge.status-critical { background: #ffe9e9; color: #cf202c; }
.organizer-inventory-status-badge.status-no-allocation { background: #eff2f8; color: #596986; }

.organizer-inventory-progress {
    display: inline-flex;
    min-width: 4.5rem;
    align-items: center;
    gap: 0.25rem;
}

.organizer-inventory-progress > i {
    display: block;
    width: 3.15rem;
    height: 0.35rem;
    overflow: hidden;
    border-radius: 1rem;
    background: #e1e9fa;
}

.organizer-inventory-progress > i b {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #0866f5;
}

.organizer-inventory-progress strong {
    font-size: 0.55rem;
}

.organizer-inventory-view-link {
    display: inline-flex;
    min-height: 1.55rem;
    align-items: center;
    gap: 0.25rem;
    padding: 0.1rem 0.38rem;
    border: 1px solid #cad9ff;
    border-radius: 0.35rem;
    color: #0757d4;
    font-size: 0.59rem;
    font-weight: 700;
    text-decoration: none;
}

.organizer-inventory-view-link:hover { background: #edf4ff; }

.organizer-inventory-view-link svg {
    width: 0.7rem;
    height: 0.7rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
}

.organizer-inventory-pagination {
    display: flex;
    min-height: 2.6rem;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    padding: 0.35rem 0.6rem;
    color: #0b1f6b;
    font-size: 0.62rem;
    font-weight: 700;
}

.organizer-inventory-pagination nav {
    display: flex;
    align-items: center;
    gap: 0.3rem;
}

.organizer-inventory-pagination nav > span,
.organizer-inventory-pagination nav > a {
    display: inline-flex;
    min-width: 1.75rem;
    min-height: 1.75rem;
    align-items: center;
    justify-content: center;
    padding: 0 0.3rem;
    border: 1px solid #d6e1f8;
    border-radius: 0.35rem;
    background: #fff;
    color: #0b1f6b;
    font-size: 0.65rem;
    text-decoration: none;
}

.organizer-inventory-pagination nav [aria-current="page"] > span {
    display: inline-flex;
    min-width: 1.75rem;
    min-height: 1.75rem;
    align-items: center;
    justify-content: center;
    border: 1px solid #0866f5;
    border-radius: 0.35rem;
    background: #0866f5;
    color: #fff;
}

.organizer-inventory-empty {
    display: grid;
    min-height: 8rem;
    align-content: center;
    justify-items: center;
    gap: 0.35rem;
    border-top: 1px solid #e3eaf7;
    color: #52658f;
    font-size: 0.72rem;
}

.organizer-inventory-empty strong {
    color: #0b1f6b;
    font-size: 0.85rem;
}

@media (max-width: 1100px) {
    .organizer-inventory-insights {
        grid-template-columns: minmax(12rem, 0.9fr) minmax(18rem, 1.4fr);
    }

    .organizer-inventory-quick-insights {
        grid-column: 1 / -1;
        min-height: auto;
    }

    .organizer-inventory-quick-insights .organizer-inventory-insight-item {
        min-height: 2.5rem;
    }
}

@media (max-width: 820px) {
    .organizer-inventory-header {
        min-height: 3rem;
    }

    .organizer-inventory-topbar {
        width: 100%;
        min-height: 3rem;
        grid-template-columns: 2.7rem minmax(0, 1fr) 2.4rem 3.4rem;
        gap: 0.2rem;
        margin-left: 0;
        padding-right: 0.5rem;
    }

    .organizer-inventory-workspace {
        width: 100%;
        margin: 0;
        padding: 0.8rem 0.75rem 1.2rem;
    }

    .organizer-inventory-heading {
        align-items: flex-start;
    }

    .organizer-inventory-heading-actions {
        gap: 0.35rem;
    }

    .organizer-inventory-range,
    .organizer-inventory-export {
        min-height: 2rem;
        padding: 0 0.45rem;
        font-size: 0.61rem;
    }

    .organizer-inventory-kpis {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .organizer-inventory-insights {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }

    .organizer-inventory-trend {
        grid-column: 1 / -1;
        grid-row: 1;
    }

    .organizer-inventory-quick-insights {
        grid-column: 1 / -1;
    }

    .organizer-inventory-details-heading {
        flex-wrap: wrap;
    }

    .organizer-inventory-table-filters {
        width: 100%;
    }
}

@media (max-width: 560px) {
    .organizer-inventory-breadcrumbs {
        gap: 0.32rem;
        font-size: 0.62rem;
    }

    .organizer-inventory-breadcrumbs > span:first-of-type,
    .organizer-inventory-breadcrumbs > a:first-child {
        display: none;
    }

    .organizer-inventory-heading {
        display: grid;
        gap: 0.6rem;
    }

    .organizer-inventory-heading-actions {
        justify-content: flex-end;
    }

    .organizer-inventory-heading-icon {
        width: 2.4rem;
        height: 2.4rem;
    }

    .organizer-inventory-heading p {
        font-size: 0.65rem;
    }

    .organizer-inventory-kpi {
        min-height: 4.6rem;
        gap: 0.45rem;
        padding: 0.55rem 0.5rem;
    }

    .organizer-inventory-kpi-icon {
        width: 2.2rem;
        height: 2.2rem;
    }

    .organizer-inventory-kpi-icon svg {
        width: 1.15rem;
        height: 1.15rem;
    }

    .organizer-inventory-kpi-copy > span { font-size: 0.59rem; }
    .organizer-inventory-kpi-copy strong { font-size: 1rem; }
    .organizer-inventory-kpi-copy small { font-size: 0.52rem; }

    .organizer-inventory-insights {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-inventory-trend,
    .organizer-inventory-quick-insights {
        grid-column: auto;
    }

    .organizer-inventory-trend {
        grid-row: auto;
    }

    .organizer-inventory-distribution {
        min-height: 11rem;
    }

    .organizer-inventory-details-heading h2 {
        font-size: 0.77rem;
    }

    .organizer-inventory-table-filters {
        flex-wrap: wrap;
    }

    .organizer-inventory-search {
        flex: 1 1 100%;
        width: 100%;
    }

    .organizer-inventory-status {
        flex: 1 1 7rem;
    }

    .organizer-inventory-pagination {
        align-items: flex-start;
        flex-direction: column;
    }

    .organizer-inventory-pagination nav {
        align-self: flex-end;
    }
}

@media (max-width: 360px) {
    .organizer-inventory-topbar {
        grid-template-columns: 2.4rem minmax(0, 1fr) 2.1rem 2.8rem;
    }

    .organizer-inventory-topbar .organizer-mobile-menu > summary {
        width: 2.4rem;
    }

    .organizer-inventory-account .organizer-account-avatar {
        width: 1.8rem;
        height: 1.8rem;
    }

    .organizer-inventory-heading-actions {
        width: 100%;
    }

    .organizer-inventory-range,
    .organizer-inventory-export {
        flex: 1 1 0;
    }
}

body:has(.organizer-inventory-workspace) .organizer-workspace.organizer-inventory-workspace {
    display: block;
    width: calc(100% - 175px);
    max-width: none;
    margin: 0 0 0 175px;
    padding: 1rem 1rem 2rem;
}

body:has(.organizer-inventory-workspace) .organizer-sidebar.organizer-inventory-sidebar {
    position: fixed;
    z-index: 46;
    top: 0;
    right: auto;
    bottom: 0;
    left: 0;
    display: flex;
    width: 175px;
    max-height: 100dvh;
    flex-direction: column;
    gap: 0.55rem;
    padding: 0.65rem 0.55rem 0.75rem;
    border: 0;
    border-radius: 0;
}

body:has(.organizer-inventory-workspace) .organizer-inventory-sidebar nav {
    display: flex;
    width: auto;
    flex-direction: column;
    flex-wrap: nowrap;
    gap: 0.12rem;
    overflow-x: hidden;
    overflow-y: auto;
}

body:has(.organizer-inventory-workspace) .organizer-inventory-sidebar nav > a {
    min-height: 1.9rem;
    flex: 0 0 auto;
    justify-content: flex-start;
    padding: 0.34rem 0.42rem;
    font-size: 0.66rem;
    white-space: normal;
}

body:has(.organizer-inventory-workspace) .organizer-inventory-sidebar nav > a svg {
    width: 1.05rem;
    height: 1.05rem;
}

.organizer-inventory-topbar .organizer-mobile-menu {
    order: 0;
    width: 100%;
    min-width: 0;
    justify-self: stretch;
}

.organizer-inventory-breadcrumbs {
    order: 0;
}

@media (max-width: 820px) {
    body:has(.organizer-inventory-workspace) .organizer-workspace.organizer-inventory-workspace {
        width: 100%;
        margin: 0;
        padding: 0.8rem 0.75rem 1.2rem;
    }

}

.organizer-alerts-content {
    gap: 0.8rem;
    color: #0b1f6b;
    font-family: Montserrat, sans-serif;
}

.organizer-alerts-heading,
.organizer-alerts-title,
.organizer-alerts-actions,
.organizer-alert-table-heading,
.organizer-alert-detail-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.organizer-alerts-heading {
    min-height: 4.2rem;
}

.organizer-alerts-title {
    justify-content: flex-start;
}

.organizer-alerts-title-icon {
    display: grid;
    width: 3.2rem;
    height: 3.2rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 0.85rem;
    background: #e8f0ff;
    color: #0866f5;
}

.organizer-alerts-title-icon svg {
    width: 2rem;
    height: 2rem;
    fill: currentColor;
    stroke: #fff;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.organizer-alerts-title h1 {
    margin: 0;
    color: #0b1fbb;
    font-size: clamp(1.25rem, 2vw, 1.7rem);
    font-weight: 800;
}

.organizer-alerts-title p {
    margin: 0.25rem 0 0;
    color: #475b88;
    font-size: 0.76rem;
}

.organizer-alerts-actions {
    flex: 0 0 auto;
}

.organizer-alert-date,
.organizer-alert-export {
    display: inline-flex;
    min-height: 2.45rem;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    padding: 0.45rem 0.7rem;
    border: 1px solid #d5e0fa;
    border-radius: 0.55rem;
    background: #fff;
    color: #0b1f6b;
    font: inherit;
    font-size: 0.68rem;
    font-weight: 700;
    text-decoration: none;
}

.organizer-alert-date svg,
.organizer-alert-export svg,
.organizer-alert-panel h2 svg,
.organizer-alert-table-heading h2 svg {
    width: 1.1rem;
    height: 1.1rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.organizer-alert-date select {
    max-width: 8.5rem;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
}

.organizer-alert-export {
    border-color: #0866f5;
    background: #0866f5;
    color: #fff;
}

.organizer-alert-kpis {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.55rem;
}

.organizer-alert-kpi {
    display: flex;
    min-width: 0;
    min-height: 5.65rem;
    align-items: center;
    gap: 0.8rem;
    padding: 0.75rem 0.9rem;
    border: 1px solid #dce5f8;
    border-bottom: 3px solid var(--alert-accent);
    border-radius: 0.75rem;
    background: linear-gradient(110deg, var(--alert-soft), #fff 75%);
    color: var(--alert-accent);
}

.organizer-alert-kpi-critical { --alert-accent: #ed252c; --alert-soft: #fff0ef; }
.organizer-alert-kpi-warning { --alert-accent: #f39900; --alert-soft: #fff7e9; }
.organizer-alert-kpi-info { --alert-accent: #0866f5; --alert-soft: #eff5ff; }
.organizer-alert-kpi-health { --alert-accent: #08a85a; --alert-soft: #effbf5; }

.organizer-alert-kpi-icon {
    display: grid;
    width: 2.65rem;
    height: 2.65rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 50%;
    background: var(--alert-accent);
    color: #fff;
    font-size: 1.65rem;
    font-weight: 800;
    line-height: 1;
}

.organizer-alert-kpi div {
    display: grid;
    min-width: 0;
    gap: 0.12rem;
}

.organizer-alert-kpi strong {
    font-size: 1.4rem;
    font-weight: 800;
    line-height: 1;
}

.organizer-alert-kpi b {
    font-size: 0.72rem;
}

.organizer-alert-kpi small {
    font-size: 0.6rem;
}

.organizer-alert-charts {
    display: grid;
    grid-template-columns: minmax(17rem, 0.95fr) minmax(0, 2fr);
    gap: 0.65rem;
}

.organizer-alert-panel,
.organizer-alert-detail-card {
    min-width: 0;
    padding: 0.85rem;
    border: 1px solid #dce5f8;
    border-radius: 0.75rem;
    background: #fff;
    box-shadow: 0 0.3rem 1rem rgb(11 31 107 / 4%);
}

.organizer-alert-panel h2,
.organizer-alert-detail-card > h2 {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    margin: 0;
    padding-bottom: 0.65rem;
    border-bottom: 1px solid #e8eefb;
    color: #0b1fbb;
    font-size: 0.83rem;
    font-weight: 800;
}

.organizer-alert-donut-row {
    display: flex;
    min-height: 10rem;
    align-items: center;
    justify-content: space-evenly;
    gap: 1rem;
}

.organizer-alert-donut {
    position: relative;
    display: grid;
    width: 8.3rem;
    height: 8.3rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 50%;
    background: conic-gradient(#ed252c 0 var(--critical), #f39900 var(--critical) var(--warning), #0866f5 var(--warning) var(--info), #0866f5 var(--info) 100%);
}

.organizer-alert-donut::before {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 5.6rem;
    height: 5.6rem;
    border-radius: 50%;
    background: #fff;
    content: "";
    transform: translate(-50%, -50%);
}

.organizer-alert-donut > span {
    z-index: 1;
    display: grid;
    text-align: center;
}

.organizer-alert-donut strong {
    font-size: 1.4rem;
}

.organizer-alert-donut small {
    color: #53658b;
    font-size: 0.62rem;
}

.organizer-alert-legend {
    display: grid;
    gap: 0.65rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.organizer-alert-legend li {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    font-size: 0.66rem;
}

.organizer-alert-legend i {
    width: 0.65rem;
    height: 0.65rem;
    flex: 0 0 auto;
    border-radius: 50%;
}

.organizer-alert-legend .is-critical { background: #ed252c; }
.organizer-alert-legend .is-warning { background: #f39900; }
.organizer-alert-legend .is-info { background: #0866f5; }

.organizer-alert-legend li span {
    display: flex;
    min-width: 7rem;
    justify-content: space-between;
    gap: 0.6rem;
}

.organizer-alert-legend strong {
    color: #0b1f6b;
    white-space: nowrap;
}

.organizer-alert-bars {
    display: flex;
    min-height: 10rem;
    align-items: end;
    justify-content: space-around;
    gap: 0.6rem;
    padding: 1.2rem 0.4rem 0;
    border-bottom: 1px solid #dce5f8;
    background: repeating-linear-gradient(to bottom, transparent 0, transparent 2.25rem, #edf2fb 2.3rem, transparent 2.35rem);
}

.organizer-alert-bar-item {
    display: grid;
    height: 100%;
    min-width: 2rem;
    flex: 1;
    grid-template-rows: 1rem minmax(2rem, 1fr) 2rem;
    justify-items: center;
    align-items: end;
    text-align: center;
}

.organizer-alert-bar-value {
    color: #0b1f6b;
    font-size: 0.72rem;
    font-weight: 800;
}

.organizer-alert-bar {
    display: flex;
    width: min(4.5rem, 75%);
    height: var(--bar-height);
    min-height: 0.3rem;
    flex-direction: column-reverse;
    border-radius: 0.15rem 0.15rem 0 0;
    overflow: hidden;
    text-decoration: none;
}

.organizer-alert-bar-segment {
    display: block;
    width: 100%;
}

.organizer-alert-bar-segment.is-critical {
    height: var(--critical-share);
    background: #ed252c;
}

.organizer-alert-bar-segment.is-warning {
    height: calc(var(--warning-share) - var(--critical-share));
    background: #f39900;
}

.organizer-alert-bar-segment.is-info {
    height: calc(100% - var(--warning-share));
    background: #0866f5;
}

.organizer-alert-bar-label {
    display: -webkit-box;
    max-width: 8rem;
    overflow: hidden;
    color: #0b1f6b;
    font-size: 0.56rem;
    font-weight: 600;
    text-decoration: none;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.organizer-alert-chart-empty {
    display: grid;
    min-height: 10rem;
    place-items: center;
    color: #667799;
    font-size: 0.75rem;
}

.organizer-alert-table-panel {
    padding: 0.7rem 0.8rem;
}

.organizer-alert-table-heading {
    min-height: 2rem;
}

.organizer-alert-table-heading h2 {
    padding: 0;
    border: 0;
}

.organizer-alert-table-heading > span {
    color: #667799;
    font-size: 0.65rem;
}

.organizer-alert-filters {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    gap: 0.5rem;
    padding: 0.65rem 0;
}

.organizer-alert-filters label,
.organizer-alert-update-form label {
    display: grid;
    min-width: 8rem;
    gap: 0.25rem;
    color: #53658b;
    font-size: 0.61rem;
    font-weight: 700;
}

.organizer-alert-filters select,
.organizer-alert-filters input,
.organizer-alert-update-form select,
.organizer-alert-update-form textarea {
    width: 100%;
    min-height: 2rem;
    padding: 0.35rem 0.5rem;
    border: 1px solid #d5e0fa;
    border-radius: 0.4rem;
    background: #fff;
    color: #0b1f6b;
    font: inherit;
    font-size: 0.67rem;
}

.organizer-alert-filters .organizer-alert-search {
    min-width: 10rem;
    flex: 1 1 10rem;
}

.organizer-alert-filters button,
.organizer-alert-update-form button,
.organizer-alert-settings-form button {
    min-height: 2rem;
    padding: 0.4rem 0.7rem;
    border: 0;
    border-radius: 0.4rem;
    background: #0866f5;
    color: #fff;
    font: inherit;
    font-size: 0.67rem;
    font-weight: 700;
    cursor: pointer;
}

.organizer-alert-table-scroll {
    width: 100%;
    overflow-x: auto;
    border: 1px solid #e5ebf8;
    border-radius: 0.45rem;
}

.organizer-alert-table {
    width: 100%;
    min-width: 940px;
    border-collapse: collapse;
    color: #12285f;
    font-size: 0.62rem;
}

.organizer-alert-table th,
.organizer-alert-table td {
    padding: 0.55rem 0.45rem;
    border-bottom: 1px solid #e7edf9;
    text-align: left;
    vertical-align: middle;
}

.organizer-alert-table th {
    background: #f5f8ff;
    color: #0b1f6b;
    font-size: 0.59rem;
    font-weight: 800;
    white-space: nowrap;
}

.organizer-alert-table td:nth-child(5) {
    max-width: 14rem;
    color: #52658c;
    line-height: 1.45;
}

.organizer-alert-table td time {
    display: grid;
    gap: 0.12rem;
    white-space: nowrap;
}

.organizer-alert-table td time small {
    color: #7181a0;
}

.organizer-alert-type {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    white-space: nowrap;
}

.organizer-alert-type i {
    display: inline-grid;
    width: 1rem;
    height: 1rem;
    place-items: center;
    border-radius: 50%;
    background: var(--alert-tone);
    color: #fff;
    font-size: 0.62rem;
    font-style: normal;
    font-weight: 800;
}

.organizer-alert-type .is-critical { --alert-tone: #ed252c; }
.organizer-alert-type .is-warning { --alert-tone: #f39900; }
.organizer-alert-type .is-info { --alert-tone: #0866f5; }

.organizer-alert-badge {
    display: inline-flex;
    min-height: 1.3rem;
    align-items: center;
    padding: 0.15rem 0.45rem;
    border-radius: 0.35rem;
    background: var(--badge-bg);
    color: var(--badge-fg);
    font-size: 0.58rem;
    font-weight: 800;
    white-space: nowrap;
}

.organizer-alert-badge.is-critical { --badge-bg: #ffe3e1; --badge-fg: #c91620; }
.organizer-alert-badge.is-warning { --badge-bg: #fff0cc; --badge-fg: #995500; }
.organizer-alert-badge.is-info { --badge-bg: #e4edff; --badge-fg: #0754d5; }
.organizer-alert-badge.is-status-open { --badge-bg: #ffe3e1; --badge-fg: #c91620; }
.organizer-alert-badge.is-status-monitoring { --badge-bg: #fff0cc; --badge-fg: #995500; }
.organizer-alert-badge.is-status-investigating { --badge-bg: #e4edff; --badge-fg: #0754d5; }
.organizer-alert-badge.is-status-resolved { --badge-bg: #e1f6ea; --badge-fg: #087c43; }
.organizer-alert-badge.is-status-dismissed { --badge-bg: #edf0f6; --badge-fg: #53617b; }

.organizer-alert-view {
    display: inline-flex;
    min-height: 1.65rem;
    align-items: center;
    gap: 0.35rem;
    padding: 0.2rem 0.5rem;
    border: 1px solid #cbd9f8;
    border-radius: 0.35rem;
    color: #0754d5;
    font-size: 0.62rem;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
}

.organizer-alert-empty {
    padding: 2rem !important;
    color: #68799b;
    text-align: center !important;
}

.organizer-alert-pagination {
    padding-top: 0.75rem;
}

.organizer-alert-status {
    margin: 0;
    padding: 0.65rem 0.8rem;
    border: 1px solid #bce7cd;
    border-radius: 0.5rem;
    background: #effbf5;
    color: #087c43;
    font-size: 0.75rem;
}

.organizer-alert-validation {
    padding: 0.65rem 0.8rem;
    border: 1px solid #f1b3b3;
    border-radius: 0.5rem;
    background: #fff3f3;
    color: #a51d27;
    font-size: 0.72rem;
}

.organizer-alert-validation ul {
    margin: 0.3rem 0 0;
    padding-left: 1.1rem;
}

.organizer-alert-detail-card {
    display: grid;
    gap: 0.9rem;
    padding: 1rem;
}

.organizer-alert-detail-heading {
    align-items: flex-start;
}

.organizer-alert-detail-heading h2 {
    margin: 0.65rem 0 0.25rem;
    color: #0b1f6b;
    font-size: 1rem;
}

.organizer-alert-detail-heading p {
    margin: 0;
    color: #53658b;
    font-size: 0.78rem;
    line-height: 1.5;
}

.organizer-alert-detail-heading time {
    flex: 0 0 auto;
    color: #667799;
    font-size: 0.68rem;
}

.organizer-alert-reference {
    display: block;
    margin-bottom: 0.5rem;
    color: #68799b;
    font-size: 0.64rem;
    font-weight: 700;
}

.organizer-alert-detail-links {
    display: grid;
    justify-items: end;
    gap: 0.4rem;
}

.organizer-alert-detail-links a {
    color: #0754d5;
    font-size: 0.68rem;
    font-weight: 700;
}

.organizer-alert-related {
    display: grid;
    gap: 0.35rem;
    color: #0b1f6b;
    font-size: 0.7rem;
}

.organizer-alert-related ul {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.organizer-alert-related li {
    padding: 0.3rem 0.45rem;
    border-radius: 0.35rem;
    background: #f5f8ff;
    font-size: 0.63rem;
}

.organizer-alert-event-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    margin: 0.4rem 0 0;
    padding: 0;
    list-style: none;
    color: #53658b;
    font-size: 0.58rem;
}

.organizer-alert-event-legend li {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.organizer-alert-event-legend i {
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 50%;
}

.organizer-alert-event-legend .is-critical { background: #ed252c; }
.organizer-alert-event-legend .is-warning { background: #f39900; }
.organizer-alert-event-legend .is-info { background: #0866f5; }

.organizer-alert-facts {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr));
    gap: 0.65rem;
    margin: 0;
}

.organizer-alert-facts div {
    min-width: 0;
    padding: 0.65rem;
    border-radius: 0.45rem;
    background: #f5f8ff;
}

.organizer-alert-facts dt {
    color: #68799b;
    font-size: 0.6rem;
}

.organizer-alert-facts dd {
    overflow-wrap: anywhere;
    margin: 0.2rem 0 0;
    color: #0b1f6b;
    font-size: 0.75rem;
    font-weight: 700;
}

.organizer-alert-update-form {
    display: grid;
    max-width: 40rem;
    gap: 0.7rem;
}

.organizer-alert-update-form label {
    min-width: 0;
}

.organizer-alert-update-form textarea {
    resize: vertical;
}

.organizer-alert-update-form button {
    justify-self: start;
    min-height: 2.3rem;
}

.organizer-alert-history ol {
    display: grid;
    gap: 0.9rem;
    margin: 0;
    padding: 0.85rem 0 0;
    list-style: none;
}

.organizer-alert-history li {
    display: flex;
    gap: 0.7rem;
}

.organizer-alert-history-dot {
    width: 0.65rem;
    height: 0.65rem;
    flex: 0 0 auto;
    margin-top: 0.25rem;
    border-radius: 50%;
    background: #0866f5;
    box-shadow: 0 0 0 0.25rem #e8f0ff;
}

.organizer-alert-history li > div {
    display: grid;
    gap: 0.2rem;
}

.organizer-alert-history li strong {
    color: #0b1f6b;
    font-size: 0.72rem;
}

.organizer-alert-history li p,
.organizer-alert-history li small {
    margin: 0;
    color: #68799b;
    font-size: 0.65rem;
}

.organizer-alert-settings-form {
    display: grid;
    max-width: 44rem;
    gap: 1rem;
}

.organizer-alert-settings-form .form-field {
    display: grid;
    gap: 0.35rem;
}

.organizer-alert-settings-form input {
    max-width: 14rem;
    min-height: 2.5rem;
}

.organizer-alert-settings-form small {
    color: #68799b;
}

@media (max-width: 1050px) {
    .organizer-alert-kpis {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .organizer-alert-charts {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 700px) {
    .organizer-alerts-heading,
    .organizer-alert-detail-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .organizer-alerts-heading {
        gap: 0.7rem;
    }

    .organizer-alerts-actions {
        width: 100%;
        justify-content: space-between;
    }

    .organizer-alert-kpis {
        gap: 0.4rem;
    }

    .organizer-alert-kpi {
        min-height: 4.8rem;
        gap: 0.5rem;
        padding: 0.55rem;
    }

    .organizer-alert-kpi-icon {
        width: 2.1rem;
        height: 2.1rem;
        font-size: 1.3rem;
    }

    .organizer-alert-kpi strong {
        font-size: 1.15rem;
    }

    .organizer-alert-kpi b {
        font-size: 0.63rem;
    }

    .organizer-alert-kpi small {
        font-size: 0.52rem;
    }

    .organizer-alert-table-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.3rem;
    }

    .organizer-alert-donut-row {
        justify-content: space-around;
    }

    .organizer-alert-detail-heading time {
        align-self: flex-start;
    }
}

@media (max-width: 420px) {
    .organizer-alerts-title-icon {
        width: 2.55rem;
        height: 2.55rem;
    }

    .organizer-alerts-title h1 {
        font-size: 1.05rem;
    }

    .organizer-alerts-title p {
        font-size: 0.65rem;
    }

    .organizer-alert-date,
    .organizer-alert-export {
        min-height: 2.2rem;
        padding-inline: 0.45rem;
        font-size: 0.6rem;
    }

    .organizer-alert-kpi {
        align-items: flex-start;
        flex-direction: column;
    }

    .organizer-alert-donut {
        width: 6.7rem;
        height: 6.7rem;
    }

    .organizer-alert-donut::before {
        width: 4.5rem;
        height: 4.5rem;
    }

    .organizer-alert-legend li span {
        min-width: 6rem;
        font-size: 0.6rem;
    }
}

@media (max-width: 820px) {
    body:has(.organizer-workspace) {
        padding-bottom: 0;
    }

    body:has(.organizer-workspace) .organizer-sidebar {
        display: none;
    }

    body:has(.organizer-inventory-workspace) .organizer-sidebar.organizer-inventory-sidebar {
        display: none;
    }
}

@media (max-width: 820px) {
    .site-header,
    body:has(.organizer-workspace) .site-header,
    body:has(.organizer-workflow-header) .site-header {
        position: sticky;
        top: 0;
        z-index: 100;
    }

    body {
        overflow-x: clip;
    }
}

.admin-grid-two {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}
.admin-bar-row {
    display: grid;
    grid-template-columns: minmax(8rem, 1fr) minmax(6rem, 1.5fr) 2rem;
    align-items: center;
    gap: 0.65rem;
    min-height: 2.25rem;
}
.admin-bar-row > div {
    height: 0.55rem;
    overflow: hidden;
    border-radius: 999px;
    background: #e7edfb;
}
.admin-bar-row > div i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--vdm-blue);
}
.admin-alert-trend {
    display: grid;
    grid-template-columns: repeat(10, minmax(5rem, 1fr));
    gap: 0.5rem;
    overflow-x: auto;
}
.admin-alert-trend > div {
    min-width: 5rem;
    padding: 0.55rem;
    border-radius: 0.45rem;
    background: #f5f7fb;
}
.admin-alert-trend span { display: block; font-size: 0.68rem; font-weight: 700; }
.admin-alert-trend small { color: #667085; }
.admin-alert-filter {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: end;
    gap: 0.75rem;
}
.admin-alert-filter label { display: grid; gap: 0.35rem; }
.admin-alert-filter input,
.admin-alert-filter select {
    min-height: 2.5rem;
    width: 100%;
    border: 1px solid #dce4f4;
    border-radius: 0.45rem;
    background: #fff;
}
.admin-alert-table-card { overflow-x: auto; }
.admin-alert-table-card table { min-width: 68rem; }
.admin-alert-details {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
}
.admin-alert-details div { padding: 0.75rem; border-radius: 0.45rem; background: #f5f7fb; }
.admin-alert-details dt { color: #667085; font-size: 0.75rem; }
.admin-alert-details dd { margin: 0.25rem 0 0; font-weight: 700; }
.admin-alert-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.admin-alert-actions h2 { grid-column: 1 / -1; }
.admin-alert-actions form { display: grid; align-content: start; gap: 0.65rem; }
.admin-alert-actions label { display: grid; gap: 0.35rem; }
.admin-alert-history { padding: 0; margin: 0; list-style: none; }
.admin-alert-history li { padding: 0.75rem 0; border-bottom: 1px solid #e8edf5; }
.admin-alert-history li span { display: block; color: #667085; font-size: 0.78rem; }
.admin-alert-history li p { margin-bottom: 0; }
.status-critical { background: #fee2e2; color: #b42318; }
.status-warning { background: #fff4cc; color: #8a6200; }
.status-info { background: #e6efff; color: #175cd3; }

@media (max-width: 820px) {
    .admin-grid-two,
    .admin-alert-filter,
    .admin-alert-details,
    .admin-alert-actions {
        grid-template-columns: minmax(0, 1fr);
    }
    .admin-alert-actions h2 { grid-column: auto; }
}

/* Reference-style Reservations dashboard */
.reservations-dashboard {
    background: #f5f7fb;
    min-height: calc(100vh - var(--vdm-site-header-height, 68px));
    padding: 22px 28px 40px;
}
.reservations-breadcrumb {
    height: 24px;
    display: flex;
    align-items: center;
    gap: 8px;
    color: #98a2b3;
    font-size: 0.78rem;
}
.reservations-breadcrumb svg { width: 10px; height: 10px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.reservations-breadcrumb strong { color: #344054; font-weight: 600; }
.reservations-page-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 5px 0 18px;
}
.reservations-page-header h1 { margin: 0; font-size: 1.95rem; line-height: 1.2; letter-spacing: -0.02em; color: #174ac4; font-weight: 800; }
.reservations-page-header p { margin: 4px 0 0; color: #174ac4; font-size: 0.82rem; font-weight: 600; }
.reservations-header-actions { display: flex; gap: 10px; align-items: center; }
.reservations-range-form select,
.reservations-toolbar select {
    height: 38px;
    border: 1px solid #dfe4ec;
    border-radius: 7px;
    background: #fff;
    color: #344054;
    padding: 0 34px 0 12px;
    font-size: 0.78rem;
}
.reservations-export {
    height: 38px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 0 13px;
    border-radius: 7px;
    background: #fff;
    border: 1px solid #dfe4ec;
    color: #344054;
    text-decoration: none;
    font-size: 0.78rem;
    font-weight: 600;
}
.reservations-export svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.reservations-kpis {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}
.reservations-kpis article {
    min-height: 112px;
    border: 1px solid #e8edf4;
    border-radius: 9px;
    background: #fff;
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 18px 16px;
    box-shadow: 0 1px 2px rgba(16,24,40,.025);
}
.reservations-kpi-icon { width: 48px; height: 48px; flex: 0 0 48px; border-radius: 50%; display: grid; place-items: center; }
.reservations-kpi-icon svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.reservations-kpi-icon.blue { color: #fff; background: #2f75e7; }
.reservations-kpi-icon.green { color: #fff; background: #18b76b; }
.reservations-kpi-icon.amber { color: #fff; background: #ff9f1c; }
.reservations-kpi-icon.purple { color: #fff; background: #9b5de5; }
.reservations-kpis article div:last-child { min-width: 0; }
.reservations-kpis span { display: block; color: #174ac4; font-size: 0.76rem; font-weight: 700; margin-bottom: 4px; }
.reservations-kpis strong { display: block; color: #174ac4; font-size: 1.45rem; line-height: 1.15; }
.reservations-kpis small { display: block; color: #98a2b3; font-size: 0.61rem; margin-top: 5px; white-space: nowrap; }
.reservations-kpis small b { color: #17a269; font-weight: 700; }
.reservations-analytics { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(280px, 1fr); gap: 14px; margin-top: 14px; }
.reservations-chart-card,
.reservations-table-card {
    border: 1px solid #e8edf4;
    border-radius: 9px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(16,24,40,.025);
}
.reservations-chart-card { height: 230px; padding: 16px 18px 12px; }
.reservations-chart-card header,
.reservations-table-card header { display: flex; justify-content: space-between; align-items: center; }
.reservations-chart-card h2,
.reservations-table-card h2 { margin: 0; color: #344054; font-size: 0.88rem; line-height: 1.3; }
.reservations-chart-card p,
.reservations-table-card p { margin: 2px 0 0; color: #98a2b3; font-size: 0.65rem; }
.reservation-line-chart { height: 122px; margin-top: 7px; position: relative; }
.reservation-line-chart svg { width: 100%; height: 103px; overflow: visible; }
.chart-grid line { stroke: #edf1f5; stroke-width: 1; stroke-dasharray: 3 5; }
.reservation-line-chart polyline { fill: none; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.line-active { stroke: #2f75e7; }
.line-expired { stroke: #ffb25a; }
.reservation-chart-labels { position: absolute; left: 0; right: 0; bottom: 0; display: flex; justify-content: space-between; color: #98a2b3; font-size: 0.58rem; }
.reservation-chart-legend { height: 18px; display: flex; justify-content: center; gap: 22px; color: #667085; font-size: 0.62rem; }
.reservation-chart-legend span { display: inline-flex; align-items: center; gap: 6px; }
.reservation-chart-legend i { width: 8px; height: 8px; border-radius: 50%; }
.active-dot { background: #2f75e7; }
.expired-dot { background: #ffb25a; }
.reservations-donut-wrap { height: 166px; display: flex; align-items: center; justify-content: center; gap: 28px; }
.reservations-donut { width: 126px; height: 126px; border-radius: 50%; display: grid; place-items: center; position: relative; }
.reservations-donut::after { content: ''; position: absolute; width: 82px; height: 82px; border-radius: 50%; background: #fff; }
.reservations-donut div { position: relative; z-index: 1; text-align: center; }
.reservations-donut strong { display: block; font-size: 1.05rem; color: #344054; }
.reservations-donut span { display: block; color: #98a2b3; font-size: 0.58rem; }
.reservations-category-list { min-width: 130px; max-width: 180px; }
.reservations-category-list div { display: flex; justify-content: space-between; gap: 10px; margin: 9px 0; font-size: 0.64rem; color: #667085; }
.reservations-category-list span { display: inline-flex; align-items: center; gap: 7px; min-width: 0; }
.reservations-category-list i { width: 7px; height: 7px; border-radius: 50%; flex: 0 0 7px; }
.reservations-category-list strong { color: #344054; }
.reservations-table-card { margin-top: 14px; padding: 16px 18px 12px; }
.reservations-toolbar { height: 50px; display: grid; grid-template-columns: minmax(180px, 1fr) 150px 150px 120px 70px; gap: 8px; align-items: center; }
.reservations-search { height: 38px; border: 1px solid #dfe4ec; border-radius: 7px; display: flex; align-items: center; padding: 0 10px; background: #fff; }
.reservations-search svg { width: 15px; height: 15px; fill: none; stroke: #98a2b3; stroke-width: 1.8; flex: 0 0 auto; }
.reservations-search input { width: 100%; border: 0; outline: 0; min-width: 0; height: 34px; padding: 0 8px; color: #344054; font-size: 0.75rem; }
.reservations-filter-button { height: 38px; border: 0; border-radius: 7px; background: #2470d8; color: #fff; font-size: 0.75rem; font-weight: 700; cursor: pointer; }
.reservations-table-card .organizer-table-wrap { border: 0; border-radius: 0; }
.reservations-table-card .organizer-data-table { min-width: 850px; font-size: 0.72rem; }
.reservations-table-card .organizer-data-table th { height: 38px; background: #f9fafb; color: #667085; border-bottom: 1px solid #edf1f5; font-size: 0.64rem; }
.reservations-table-card .organizer-data-table td { height: 52px; border-bottom: 1px solid #edf1f5; color: #667085; }
.reservations-table-card .organizer-data-table td strong { color: #344054; font-weight: 600; }
.reservations-row-action { border: 0; background: transparent; color: #98a2b3; letter-spacing: 1px; cursor: pointer; }
.reservations-empty { min-height: 160px; display: grid; place-items: center; color: #98a2b3; font-size: 0.78rem; }

@media (max-width: 820px) {
    .reservations-dashboard { padding: 16px 12px 28px; min-height: calc(100vh - 64px); }
    .reservations-page-header { align-items: flex-start; }
    .reservations-breadcrumb { display: none; }
    .reservations-page-header h1 { font-size: 1.35rem; }
    .reservations-kpis { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px; }
    .reservations-kpis article { min-height: 104px; padding: 14px 12px; gap: 8px; }
    .reservations-kpi-icon { width: 34px; height: 34px; flex-basis: 34px; }
    .reservations-kpis strong { font-size: 1.35rem; }
    .reservations-kpis small { white-space: normal; }
    .reservations-analytics { grid-template-columns: minmax(0,1fr); }
    .reservations-category-card { height: 300px; }
    .reservations-toolbar { height: auto; grid-template-columns: 1fr 1fr; padding: 12px 0; }
    .reservations-search { grid-column: 1 / -1; }
    .reservations-toolbar select { width: 100%; }
    .reservations-filter-button { width: 100%; }
}
@media (max-width: 480px) {
    .reservations-header-actions { gap: 6px; }
    .reservations-range-form select { max-width: 118px; }
    .reservations-export { width: 38px; padding: 0; justify-content: center; font-size: 0; }
    .reservations-kpis article { display: block; }
    .reservations-kpi-icon { margin-bottom: 7px; }
    .reservations-donut-wrap { gap: 14px; }
    .reservations-donut { width: 112px; height: 112px; }
}

@media (max-width: 820px) {
    .organizer-unified-mobile-header {
        position:relative;
        z-index:1001;
        display: grid;
        width: calc(100% - 1rem);
        min-height: 79px;
        grid-template-columns: minmax(0, 1fr) 40px 40px 40px 40px;
        align-items: center;
        gap: 5px;
        margin: 0 auto;
    }

    .organizer-unified-mobile-header .brand-logo,
    .organizer-unified-mobile-header .brand-logo img {
        width: 130px;
        height: auto;
        max-height: 48px;
        object-fit: contain;
    }

    .organizer-unified-mobile-header .organizer-mobile-search-toggle {
        display:grid;
        place-items:center;
        width:40px;
        height:40px;
        padding:0;
        border:0;
        border-radius:50%;
        background:#f3f6fb;
        color:#17266f;
        cursor:pointer;
    }
    .organizer-unified-mobile-header .organizer-mobile-search-toggle svg {
        width:19px;
        height:19px;
        fill:none;
        stroke:currentColor;
        stroke-width:2;
    }
    .organizer-unified-mobile-header .organizer-mobile-search-form {
        position:absolute;
        top:calc(100% - 3px);
        left:0;
        z-index:1100;
        display:flex;
        width:100%;
        height:48px;
        align-items:center;
        gap:8px;
        padding:0 12px;
        box-sizing:border-box;
        border:1px solid #dfe5ef;
        border-radius:12px;
        background:#fff;
        box-shadow:0 8px 24px rgba(23,38,111,.15);
    }
    .organizer-unified-mobile-header .organizer-mobile-search-form[hidden] {
        display:none!important;
    }
    .organizer-unified-mobile-header .organizer-mobile-search-form>svg {
        flex:0 0 19px;
        width:19px;
        height:19px;
        fill:none;
        stroke:#17266f;
        stroke-width:2;
    }
    .organizer-unified-mobile-header .organizer-mobile-search-form input {
        width:100%;
        min-width:0;
        height:100%;
        padding:0;
        border:0;
        outline:0;
        background:transparent;
        color:#17266f;
        font-size:13px;
    }
    .organizer-unified-mobile-header .organizer-mobile-search-form .organizer-header-search-results {
        position:absolute;
        z-index:1101;
        top:calc(100% + 6px);
        left:0;
        width:100%;
        max-height:min(55vh,360px);
        overflow-y:auto;
        border:1px solid #e2e8f2;
        border-radius:12px;
        background:#fff;
        box-shadow:0 12px 30px rgba(23,38,111,.18);
        color:#17266f;
    }
    .organizer-unified-mobile-header .organizer-mobile-search-form .organizer-header-search-results[hidden] {
        display:none!important;
    }
    .organizer-unified-mobile-header .organizer-mobile-search-form .organizer-header-search-status {
        margin:0;
        padding:11px 13px;
        color:#69758a;
        font-size:12px;
    }
    .organizer-unified-mobile-header .organizer-mobile-search-form .organizer-header-search-result-list:not(:empty) {
        border-top:1px solid #edf0f5;
    }
    .organizer-unified-mobile-header .organizer-mobile-search-form .organizer-header-search-result {
        display:flex;
        flex-direction:column;
        gap:4px;
        padding:11px 13px;
        color:#17266f;
        text-decoration:none;
    }
    .organizer-unified-mobile-header .organizer-mobile-search-form .organizer-header-search-result:focus-visible,
    .organizer-unified-mobile-header .organizer-mobile-search-form .organizer-header-search-result:hover {
        outline:none;
        background:#f3f7fc;
    }
    .organizer-unified-mobile-header .organizer-mobile-search-form .organizer-header-search-result strong {
        font-size:13px;
    }
    .organizer-unified-mobile-header .organizer-mobile-search-form .organizer-header-search-result span {
        color:#69758a;
        font-size:11px;
    }
    .organizer-unified-mobile-header .organizer-mobile-search-form .organizer-header-search-result .organizer-header-search-result-type {
        align-self:flex-start;
        border-radius:999px;
        background:#edf3ff;
        color:#2457a8;
        padding:3px 7px;
        font-size:9px;
        font-weight:700;
        text-transform:uppercase;
    }

    .organizer-unified-mobile-header .site-notifications {
        order: initial;
    }

    .organizer-unified-mobile-header .site-notification-link {
        width: 38px;
        height: 38px;
    }

    .organizer-unified-mobile-header .organizer-mobile-menu {
        position: relative;
        width: 40px;
        height: 40px;
        order: initial;
    }

    .organizer-unified-mobile-header .organizer-mobile-menu > summary {
        width: 40px;
        height: 40px;
        border-radius: 6px;
        background: #f7f9fd;
        color: #0b1f6b;
    }

    .organizer-unified-mobile-header .organizer-topbar-account {
        width: 40px;
        margin: 0;
        order: initial;
    }

    .organizer-unified-mobile-header .organizer-topbar-account > summary {
        width: 40px;
        min-height: 40px;
        justify-content: center;
        padding: 0;
    }

    .organizer-unified-mobile-header .organizer-account-avatar {
        width: 34px;
        height: 34px;
    }

    .organizer-unified-mobile-header .organizer-account-chevron {
        display: none;
    }

    @media (max-width: 360px) {
        .organizer-unified-mobile-header {
            grid-template-columns: minmax(0, 1fr) 38px 38px 38px 38px;
            gap: 2px;
        }

        .organizer-unified-mobile-header .brand-logo,
        .organizer-unified-mobile-header .brand-logo img {
            width: 105px;
        }

        .organizer-unified-mobile-header .organizer-mobile-search-toggle {
            width:38px;
            height:38px;
        }
    }

    .site-header:has(.organizer-unified-mobile-header) .nav-shell,
    .organizer-inventory-header > .organizer-inventory-topbar,
    .event-inventory-reference-header > .event-inventory-reference-topbar {
        display: none;
    }

    html,
    body:has(.organizer-workspace) {
        width: 100%;
        max-width: 100%;
        overflow-x: clip;
    }

    .site-header,
    body:has(.organizer-workspace) .site-header,
    body:has(.organizer-workflow-header) .site-header {
        position: fixed;
        top: 0 !important;
        right: 0;
        left: 0;
        width: 100%;
        z-index: 1000;
    }

    body {
        padding-top: 79px;
    }

    body:has(.organizer-workspace) {
        padding-top: 79px;
    }

    body:has(.organizer-inventory-workspace),
    body:has(.organizer-inventory-header) {
        padding-top: 79px;
    }

    body:has(.event-inventory-reference-header) {
        padding-top: 79px;
    }

    body:has(.organizer-workspace) .organizer-workspace {
        display: block;
        width: 100% !important;
        margin: 0 !important;
    }

    body:has(.organizer-workspace) .organizer-content {
        display: block;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        padding: 0;
    }

    .reservations-dashboard {
        box-sizing: border-box;
        width: 100%;
        max-width: 100%;
        display: block;
        overflow-x: hidden;
        padding: 14px 12px 24px;
    }

    .reservations-page-header {
        width: 100%;
        gap: 8px;
        margin: 0 0 14px;
    }

    .reservations-page-header > div {
        min-width: 0;
        flex: 1 1 auto;
    }

    .reservations-page-header h1 {
        font-size: 1.25rem;
        white-space: nowrap;
    }

    .reservations-page-header p {
        max-width: 190px;
        font-size: 0.68rem;
        line-height: 1.25;
    }

    .reservations-header-actions {
        flex: 0 0 auto;
    }

    .reservations-range-form select {
        width: 112px;
        max-width: 112px;
        height: 36px;
        padding-left: 9px;
        font-size: 0.69rem;
    }

    .reservations-export {
        height: 36px;
    }

    .reservations-kpis {
        width: 100%;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    .reservations-kpis article {
        box-sizing: border-box;
        width: 100%;
        min-height: 118px;
        display: flex;
        padding: 12px 10px;
    }

    .reservations-kpi-icon {
        width: 38px;
        height: 38px;
        flex-basis: 38px;
        margin-bottom: 0;
    }

    .reservations-kpis article div:last-child {
        width: calc(100% - 46px);
    }

    .reservations-kpis span {
        font-size: 0.64rem;
        line-height: 1.25;
    }

    .reservations-kpis strong {
        font-size: 1.28rem;
    }

    .reservations-kpis small {
        overflow: hidden;
        font-size: 0.55rem;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .reservations-analytics {
        width: 100%;
        grid-template-columns: minmax(0, 1fr);
        gap: 10px;
    }

    .reservations-chart-card,
    .reservations-category-card {
        box-sizing: border-box;
        width: 100%;
        height: 230px;
    }

    .reservations-chart-card {
        padding: 14px 12px 10px;
    }

    .reservation-line-chart {
        height: 132px;
    }

    .reservations-donut-wrap {
        height: 172px;
    }

    .reservations-table-card {
        box-sizing: border-box;
        width: 100%;
        max-width: 100%;
        padding: 14px 12px 10px;
    }

    .reservations-toolbar {
        width: 100%;
        box-sizing: border-box;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }

    .reservations-toolbar select,
    .reservations-search,
    .reservations-filter-button {
        width: 100%;
        min-width: 0;
        max-width: 100%;
        box-sizing: border-box;
    }

    .reservations-table-card .organizer-table-wrap {
        width: 100%;
        max-width: 100%;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        -webkit-overflow-scrolling: touch;
    }
}

@media (min-width:821px){
    body:has(.gate-checkin-page){
        padding-top:56px!important;
        background:#f7f8fc;
    }
    body:has(.gate-checkin-page) .organizer-unified-mobile-header{
        display:none!important;
    }
    body:has(.gate-checkin-page) .organizer-workspace{
        display:block!important;
        width:1536px!important;
        max-width:none!important;
        margin:0!important;
        padding:0!important;
    }
    body:has(.gate-checkin-page) .organizer-inventory-sidebar{
        width:208px!important;
        position:fixed!important;
        top:0!important;
        left:0!important;
        bottom:0!important;
        height:100vh!important;
        z-index:1100;
    }
    body:has(.gate-checkin-page) .organizer-content{
        display:block!important;
        width:1328px!important;
        max-width:none!important;
        min-width:0!important;
        margin:0 0 0 208px!important;
        padding:0!important;
    }
    body:has(.gate-checkin-page) .organizer-gate-checkin-header{
        position:fixed!important;
        left:208px!important;
        right:0!important;
        top:0!important;
        width:1328px!important;
        height:56px!important;
        min-height:56px!important;
        margin:0!important;
        background:#fff!important;
        border-bottom:1px solid #edf0f5!important;
        z-index:1000;
    }
    .organizer-gate-checkin-topbar{
        height:56px!important;
        width:1328px!important;
        display:flex!important;
        align-items:center!important;
        box-sizing:border-box!important;
        padding:0 16px!important;
    }
    .organizer-gate-checkin-topbar>.organizer-mobile-menu{width:38px;margin-right:6px}
    .organizer-gate-checkin-breadcrumbs{display:flex!important;align-items:center;gap:8px;font-size:12px;font-weight:700}
    .organizer-gate-checkin-breadcrumbs a{color:#1677ff;text-decoration:none}
    .organizer-gate-checkin-breadcrumbs span{color:#455064}
    .organizer-gate-checkin-topbar>.dashboard-clock{margin-left:auto;margin-right:14px}
    .organizer-gate-checkin-topbar>.notification-link{margin-right:14px}
    .organizer-gate-checkin-account{position:relative}
    .organizer-gate-checkin-account>summary{list-style:none;display:flex;align-items:center}

    .gate-checkin-page{
        width:1328px!important;
        max-width:none!important;
        height:968px!important;
        min-height:968px!important;
        padding:12px 16px 0!important;
        box-sizing:border-box!important;
        position:relative!important;
        overflow:hidden!important;
        background:#f7f8fc!important;
    }
    .gate-checkin-header{
        height:62px!important;
        margin:0 0 10px!important;
        padding:4px 0 6px!important;
        border-bottom:0!important;
    }
    .gate-checkin-title{gap:8px!important}
    .gate-title-icon{width:38px!important;height:38px!important}
    .gate-checkin-header h1{font-size:20px!important;line-height:1.15!important}
    .gate-checkin-header p{font-size:10px!important;margin-top:4px!important}
    .gate-event-picker{height:42px!important;min-width:248px!important;margin-right:8px!important}

    .gate-kpis{
        height:94px!important;
        margin:0!important;
        gap:12px!important;
        align-items:start!important;
    }
    .gate-kpis article{
        height:94px!important;
        border-radius:8px!important;
        padding:14px 16px!important;
    }
    .gate-kpis article>span{width:46px!important;height:46px!important}
    .gate-kpis strong{font-size:26px!important}
    .gate-kpis p{font-size:11px!important}

    .gate-checkin-main-grid{
        position:absolute!important;
        left:16px!important;
        top:186px!important;
        width:220px!important;
        display:block!important;
        margin:0!important;
    }
    .gate-scanner-card,.gate-manual-card{
        box-sizing:border-box!important;
        width:220px!important;
        padding:12px!important;
        border-radius:8px!important;
    }
    .gate-scanner-card{height:370px!important;margin-bottom:10px!important}
    .gate-manual-card{height:178px!important}
    .gate-card-heading h2{font-size:12px!important}
    .gate-camera-preview-wrap{height:270px!important;margin-top:10px!important;border-radius:7px!important}
    .gate-camera-frame{width:130px!important;height:130px!important}
    .gate-start-button{height:38px!important;margin-top:8px!important;font-size:11px!important}
    .gate-scanner-message{font-size:8px!important;margin-top:6px!important}
    .gate-lookup-form{grid-template-columns:1fr!important;margin-top:12px!important;gap:6px!important}
    .gate-lookup-form label span{font-size:9px!important;margin-bottom:4px!important}
    .gate-lookup-form input{height:38px!important;font-size:10px!important;padding:0 8px!important}
    .gate-search-button{height:38px!important;width:100%!important;font-size:11px!important}

    .gate-analytics-grid{
        position:absolute!important;
        left:248px!important;
        top:186px!important;
        width:1064px!important;
        height:330px!important;
        grid-template-columns:minmax(0,2.2fr) minmax(330px,.8fr)!important;
        gap:12px!important;
        margin:0!important;
    }
    .gate-chart-card{height:330px!important;padding:14px!important;border-radius:8px!important}
    .gate-line-chart{height:270px!important}
    .gate-line-chart svg{height:236px!important}
    .gate-category-donut{height:252px!important;gap:18px!important}
    .gate-donut{width:150px!important;height:150px!important}
    .gate-donut:before{width:94px!important;height:94px!important}

    .gate-history-card{
        position:absolute!important;
        left:248px!important;
        top:526px!important;
        width:1064px!important;
        height:210px!important;
        box-sizing:border-box!important;
        padding:12px 14px!important;
        margin:0!important;
        border-radius:8px!important;
    }
    .gate-history-table-wrap{max-height:160px!important}
    .gate-history-table th{height:32px!important}
    .gate-history-table td{height:36px!important}
    .gate-system-footer{
        position:absolute!important;
        left:16px!important;
        right:16px!important;
        top:846px!important;
        height:42px!important;
        box-sizing:border-box!important;
        border:1px solid #cfe9d5!important;
        border-radius:8px!important;
        background:#fff!important;
        display:flex!important;
        align-items:center!important;
        justify-content:space-between!important;
        padding:0 12px!important;
        font-size:10px!important;
    }
    .gate-system-ready,.gate-system-online{display:flex;align-items:center;color:#667085!important}
    .gate-system-ready i,.gate-system-online i{width:7px;height:7px;border-radius:50%;background:#16a34a;margin-right:7px}
    .gate-system-ready strong{color:#159447!important}
    .gate-system-ready b{width:1px;height:16px;background:#dfe4ea;margin:0 10px}
    .gate-system-ready small{font-size:9px;color:#929aaa!important}
    .gate-system-online{color:#159447!important}
}

@media (min-width:821px){
    .gate-kpis article,
    .gate-chart-card,
    .gate-history-card,
    .gate-scanner-card,
    .gate-manual-card,
    .gate-system-footer{
        visibility:visible!important;
        opacity:1!important;
        background:#fff!important;
        border:1px solid #edf0f5!important;
    }
    .gate-checkin-page{
        visibility:visible!important;
        opacity:1!important;
    }
    .gate-event-picker,
    .gate-live-button{
        display:flex!important;
        visibility:visible!important;
        opacity:1!important;
    }
}

/* Final reference geometry for Gate Staff / Check-in Management */
@media (min-width:821px) {
    body:has(.gate-checkin-page) .organizer-workspace {
        width:1536px!important;
    }
    body:has(.gate-checkin-page) .organizer-content {
        width:1328px!important;
    }
    body:has(.gate-checkin-page) .organizer-gate-checkin-header {
        height:56px!important;
    }
    body:has(.gate-checkin-page) .organizer-gate-checkin-topbar {
        padding-left:14px!important;
    }
    body:has(.gate-checkin-page) .organizer-mobile-menu {
        display:none!important;
    }
    body:has(.gate-checkin-page) .organizer-gate-checkin-account {
        margin-left:auto!important;
    }
    body:has(.gate-checkin-page) .organizer-gate-checkin-breadcrumbs {
        font-size:12px!important;
    }

    body:has(.gate-checkin-page) .gate-checkin-page {
        position:relative!important;
        top:auto!important;
        left:auto!important;
        right:auto!important;
        height:968px!important;
        min-height:968px!important;
        padding:12px 16px 0!important;
        overflow:hidden!important;
    }
    body:has(.gate-checkin-page) .gate-checkin-header {
        height:112px!important;
        margin:0 0 0!important;
        padding:4px 0 0!important;
        border-bottom:0!important;
    }
    body:has(.gate-checkin-page) .gate-checkin-title {
        gap:12px!important;
    }
    body:has(.gate-checkin-page) .gate-title-icon {
        width:48px!important;
        height:48px!important;
    }
    body:has(.gate-checkin-page) .gate-checkin-header h1 {
        font-size:28px!important;
        line-height:1.08!important;
    }
    body:has(.gate-checkin-page) .gate-checkin-header p {
        font-size:12px!important;
        margin-top:7px!important;
    }
    body:has(.gate-checkin-page) .gate-event-picker {
        width:250px!important;
        min-width:250px!important;
        height:48px!important;
    }

    body:has(.gate-checkin-page) .gate-kpis {
        height:78px!important;
        gap:12px!important;
        margin:0!important;
    }
    body:has(.gate-checkin-page) .gate-kpis article {
        height:78px!important;
        border-radius:8px!important;
        padding:12px 16px!important;
    }
    body:has(.gate-checkin-page) .gate-kpis article>span {
        width:44px!important;
        height:44px!important;
    }
    body:has(.gate-checkin-page) .gate-kpis strong {
        font-size:22px!important;
    }
    body:has(.gate-checkin-page) .gate-kpis p {
        font-size:11px!important;
        margin-bottom:4px!important;
    }

    body:has(.gate-checkin-page) .gate-checkin-main-grid {
        left:16px!important;
        top:214px!important;
        width:250px!important;
    }
    body:has(.gate-checkin-page) .gate-scanner-card {
        width:250px!important;
        height:348px!important;
        margin-bottom:10px!important;
        padding:12px!important;
    }
    body:has(.gate-checkin-page) .gate-camera-preview-wrap {
        height:260px!important;
    }
    body:has(.gate-checkin-page) .gate-manual-card {
        width:250px!important;
        height:182px!important;
        padding:12px!important;
    }

    body:has(.gate-checkin-page) .gate-analytics-grid {
        left:278px!important;
        top:214px!important;
        width:1034px!important;
        height:330px!important;
        grid-template-columns:minmax(0,670px) minmax(300px,352px)!important;
        gap:12px!important;
    }
    body:has(.gate-checkin-page) .gate-chart-card {
        height:330px!important;
        padding:14px!important;
    }
    body:has(.gate-checkin-page) .gate-line-chart {
        height:270px!important;
    }

    body:has(.gate-checkin-page) .gate-history-card {
        left:278px!important;
        top:554px!important;
        width:1034px!important;
        height:210px!important;
        padding:12px 14px!important;
    }
    body:has(.gate-checkin-page) .gate-system-footer {
        left:16px!important;
        right:16px!important;
        top:846px!important;
    }
}

/* Pixel geometry for the 1536px Gate Staff reference */
@media (min-width:821px){
    body:has(.gate-checkin-page) .organizer-gate-checkin-topbar>.dashboard-clock{display:none!important}
    body:has(.gate-checkin-page) .organizer-content{height:968px!important;overflow:hidden!important}
    body:has(.gate-checkin-page) .gate-checkin-page{
        height:968px!important;
        position:absolute!important;
        left:0!important;right:0!important;top:0!important;
        padding:12px 16px!important;
    }
    body:has(.gate-checkin-page) .gate-checkin-header{
        height:78px!important;
        margin:0 0 12px!important;
        padding:8px 0 12px!important;
    }
    body:has(.gate-checkin-page) .gate-checkin-header h1{font-size:28px!important;line-height:1.1!important}
    body:has(.gate-checkin-page) .gate-checkin-header p{font-size:12px!important;margin-top:7px!important}
    body:has(.gate-checkin-page) .gate-title-icon{width:48px!important;height:48px!important}
    body:has(.gate-checkin-page) .gate-event-picker{margin-right:14px!important;width:250px!important}
    body:has(.gate-checkin-page) .gate-live-button{height:34px!important;min-width:62px!important}

    body:has(.gate-checkin-page) .gate-kpis{
        height:92px!important;margin:0!important;gap:12px!important
    }
    body:has(.gate-checkin-page) .gate-kpis article{height:92px!important;padding:16px!important;border-radius:10px!important}
    body:has(.gate-checkin-page) .gate-kpis article>span{width:48px!important;height:48px!important;border-radius:10px!important}
    body:has(.gate-checkin-page) .gate-kpis strong{font-size:22px!important}
    body:has(.gate-checkin-page) .gate-kpis p{font-size:11px!important;margin-bottom:7px!important}

    body:has(.gate-checkin-page) .gate-checkin-main-grid{
        left:16px!important;top:198px!important;width:220px!important
    }
    body:has(.gate-checkin-page) .gate-scanner-card{height:350px!important}
    body:has(.gate-checkin-page) .gate-manual-card{height:178px!important}
    body:has(.gate-checkin-page) .gate-camera-preview-wrap{height:240px!important}

    body:has(.gate-checkin-page) .gate-analytics-grid{
        left:248px!important;top:198px!important;width:856px!important;height:330px!important;
        grid-template-columns:minmax(0,1.42fr) minmax(330px,.78fr)!important;
        gap:12px!important
    }
    body:has(.gate-checkin-page) .gate-chart-card{height:330px!important;padding:14px!important;border-radius:8px!important}
    body:has(.gate-checkin-page) .gate-category-donut{height:260px!important;grid-template-columns:176px 1fr!important}

    body:has(.gate-checkin-page) .gate-history-card{
        left:248px!important;top:540px!important;width:856px!important;height:192px!important
    }
    body:has(.gate-checkin-page) .gate-system-footer{
        left:16px!important;right:16px!important;top:746px!important;height:42px!important
    }
}

/* Final desktop ownership - this block is the active Gate Staff reference geometry */
@media (min-width:821px){
    body:has(.gate-checkin-page) .organizer-content{
        height:968px!important;
        overflow:hidden!important;
        position:relative!important;
    }
    body:has(.gate-checkin-page) .gate-checkin-page{
        position:relative!important;
        left:auto!important;
        right:auto!important;
        top:auto!important;
        width:1328px!important;
        height:968px!important;
        padding:12px 16px 0!important;
        margin:0!important;
        overflow:hidden!important;
    }
    body:has(.gate-checkin-page) .gate-checkin-header{
        height:112px!important;
        margin:0!important;
        padding:4px 0 0!important;
        border-bottom:0!important;
    }
    body:has(.gate-checkin-page) .gate-kpis{
        height:78px!important;
        margin:0!important;
        gap:12px!important;
    }
    body:has(.gate-checkin-page) .gate-kpis article{
        height:78px!important;
        padding:12px 16px!important;
        border-radius:8px!important;
    }
    body:has(.gate-checkin-page) .gate-checkin-main-grid{
        position:absolute!important;
        left:16px!important;
        top:214px!important;
        width:250px!important;
        display:block!important;
        margin:0!important;
    }
    body:has(.gate-checkin-page) .gate-scanner-card{
        width:250px!important;
        height:348px!important;
        margin-bottom:10px!important;
    }
    body:has(.gate-checkin-page) .gate-camera-preview-wrap{
        height:260px!important;
    }
    body:has(.gate-checkin-page) .gate-manual-card{
        width:250px!important;
        height:182px!important;
    }
    body:has(.gate-checkin-page) .gate-analytics-grid{
        position:absolute!important;
        left:278px!important;
        top:214px!important;
        width:1034px!important;
        height:330px!important;
        grid-template-columns:670px 352px!important;
        gap:12px!important;
        margin:0!important;
    }
    body:has(.gate-checkin-page) .gate-chart-card{
        height:330px!important;
    }
    body:has(.gate-checkin-page) .gate-history-card{
        position:absolute!important;
        left:278px!important;
        top:554px!important;
        width:1034px!important;
        height:210px!important;
        margin:0!important;
    }
    body:has(.gate-checkin-page) .gate-system-footer{
        position:absolute!important;
        left:16px!important;
        right:16px!important;
        top:846px!important;
    }
}

/* Exact visual calibration for the reference screenshot */
@media (min-width:821px){
    body:has(.gate-checkin-page) .organizer-gate-checkin-topbar{
        padding-left:16px!important;
    }
    body:has(.gate-checkin-page) .organizer-mobile-menu{
        display:flex!important;
        width:34px!important;
        margin-right:18px!important;
    }
    body:has(.gate-checkin-page) .organizer-gate-checkin-account{
        margin-left:14px!important;
    }
    body:has(.gate-checkin-page) .organizer-gate-checkin-breadcrumbs{
        margin-right:auto!important;
    }
    body:has(.gate-checkin-page) .organizer-gate-checkin-topbar .notification-link{
        margin-left:auto!important;
        margin-right:14px!important;
    }

    body:has(.gate-checkin-page) .gate-checkin-page{
        font-family:"Montserrat",sans-serif!important;
    }
    body:has(.gate-checkin-page) .gate-checkin-header{
        height:78px!important;
    }
    body:has(.gate-checkin-page) .gate-checkin-title{
        gap:10px!important;
    }
    body:has(.gate-checkin-page) .gate-title-icon{
        width:48px!important;height:48px!important;border-radius:10px!important;
    }
    body:has(.gate-checkin-page) .gate-checkin-header h1{
        font-size:26px!important;font-weight:800!important;color:#162bdb!important;
    }
    body:has(.gate-checkin-page) .gate-checkin-header p{
        color:#1677ff!important;font-size:12px!important;font-weight:500!important;
    }
    body:has(.gate-checkin-page) .gate-event-picker{
        height:48px!important;width:250px!important;
    }
    body:has(.gate-checkin-page) .gate-live-button{
        background:#159447!important;color:#fff!important;
    }
    body:has(.gate-checkin-page) .gate-live-button i{
        background:#fff!important;
    }

    body:has(.gate-checkin-page) .gate-kpis{
        height:94px!important;
    }
    body:has(.gate-checkin-page) .gate-kpis article{
        height:94px!important;
    }
    body:has(.gate-checkin-page) .gate-kpis article>span{
        width:48px!important;height:48px!important;
        background:#eaf2ff!important;color:#1677ff!important;
    }
    body:has(.gate-checkin-page) .gate-kpis article:nth-child(2)>span{
        background:#eaf8ef!important;color:#16a34a!important;
    }
    body:has(.gate-checkin-page) .gate-kpis article:nth-child(3)>span{
        background:#fff4df!important;color:#f59e0b!important;
    }
    body:has(.gate-checkin-page) .gate-kpis article:nth-child(4)>span{
        background:#f1edff!important;color:#8b5cf6!important;
    }
    body:has(.gate-checkin-page) .gate-kpis strong{
        font-size:24px!important;font-weight:800!important;
    }

    body:has(.gate-checkin-page) .gate-checkin-main-grid{
        top:182px!important;width:220px!important;
    }
    body:has(.gate-checkin-page) .gate-scanner-card{
        width:220px!important;height:278px!important;margin-bottom:10px!important;padding:12px!important;
    }
    body:has(.gate-checkin-page) .gate-camera-preview-wrap{
        height:184px!important;background:#101827!important;
    }
    body:has(.gate-checkin-page) .gate-camera-preview{display:none!important}
    body:has(.gate-checkin-page) .gate-qr-fallback{
        position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
        filter:contrast(1.15);
    }
    body:has(.gate-checkin-page) .gate-camera-frame{
        width:122px!important;height:122px!important;z-index:2;
    }
    body:has(.gate-checkin-page) .gate-start-button{
        height:38px!important;margin-top:8px!important;
    }
    body:has(.gate-checkin-page) .gate-scanner-message{
        margin-top:6px!important;
    }
    body:has(.gate-checkin-page) .gate-manual-card{
        width:220px!important;height:154px!important;padding:12px!important;
    }

    body:has(.gate-checkin-page) .gate-analytics-grid{
        left:252px!important;top:182px!important;width:1038px!important;height:278px!important;
        grid-template-columns:670px 356px!important;
    }
    body:has(.gate-checkin-page) .gate-chart-card{
        height:278px!important;padding:14px!important;border-radius:9px!important;
    }
    body:has(.gate-checkin-page) .gate-card-heading h2{
        font-size:14px!important;color:#2457e7!important;
    }
    body:has(.gate-checkin-page) .gate-line-chart{
        height:210px!important;
    }
    body:has(.gate-checkin-page) .gate-line-chart svg{
        height:178px!important;
    }
    body:has(.gate-checkin-page) .gate-chart-legend{
        display:flex!important;gap:14px!important;font-size:10px!important;color:#667085!important;
    }
    body:has(.gate-checkin-page) .gate-chart-legend span{
        display:flex!important;align-items:center!important;gap:6px!important;
    }
    body:has(.gate-checkin-page) .gate-chart-legend i{
        width:8px!important;height:8px!important;border-radius:50%!important;background:#1677ff!important;
    }
    body:has(.gate-checkin-page) .gate-chart-legend span:last-child i{
        background:#f59e0b!important;
    }
    body:has(.gate-checkin-page) .gate-trend-checked{
        fill:none!important;stroke:#1677ff!important;stroke-width:3!important;
    }
    body:has(.gate-checkin-page) .gate-trend-pending{
        fill:none!important;stroke:#f59e0b!important;stroke-width:3!important;
    }
    body:has(.gate-checkin-page) .gate-category-donut{
        height:218px!important;gap:18px!important;
    }
    body:has(.gate-checkin-page) .gate-donut{
        width:148px!important;height:148px!important;
        background:conic-gradient(#1677ff 0 37%,#f59e0b 37% 70%,#16a34a 70% 96%,#8b5cf6 96% 100%)!important;
    }
    body:has(.gate-checkin-page) .gate-donut:before{
        width:92px!important;height:92px!important;
    }
    body:has(.gate-checkin-page) .gate-donut-list div:nth-child(1) i{background:#1677ff!important}
    body:has(.gate-checkin-page) .gate-donut-list div:nth-child(2) i{background:#f59e0b!important}
    body:has(.gate-checkin-page) .gate-donut-list div:nth-child(3) i{background:#16a34a!important}
    body:has(.gate-checkin-page) .gate-donut-list div:nth-child(4) i{background:#8b5cf6!important}

    body:has(.gate-checkin-page) .gate-history-card{
        left:252px!important;top:470px!important;width:1038px!important;height:164px!important;
        padding:10px 14px!important;
    }
    body:has(.gate-checkin-page) .gate-history-table th{
        height:30px!important;
    }
    body:has(.gate-checkin-page) .gate-history-table td{
        height:34px!important;
    }
    body:has(.gate-checkin-page) .gate-system-footer{
        top:652px!important;height:38px!important;border-color:#cfe9d5!important;
    }
}

@media (min-width:821px){
    body:has(.gate-checkin-page) .organizer-gate-checkin-topbar{
        display:grid!important;
        grid-template-columns:34px minmax(0,1fr) 36px 38px!important;
        column-gap:10px!important;
    }
    body:has(.gate-checkin-page) .organizer-mobile-menu{
        grid-column:1!important;
        width:34px!important;
        margin:0!important;
    }
    body:has(.gate-checkin-page) .organizer-gate-checkin-breadcrumbs{
        grid-column:2!important;
        margin:0!important;
    }
    body:has(.gate-checkin-page) .notification-link{
        grid-column:3!important;
        justify-self:end!important;
        margin:0!important;
    }
    body:has(.gate-checkin-page) .organizer-gate-checkin-account{
        grid-column:4!important;
        margin:0!important;
        justify-self:end!important;
    }
    body:has(.gate-checkin-page) .organizer-account-avatar{
        width:36px!important;height:36px!important;border-radius:50%!important;
        background:#2437c7!important;color:#fff!important;
        display:grid!important;place-items:center!important;font-size:12px!important;font-weight:800!important;
    }
    body:has(.gate-checkin-page) .organizer-account-chevron{
        display:block!important;font-size:14px!important;color:#1677ff!important;
    }
    body:has(.gate-checkin-page) .gate-checkin-header{
        height:78px!important;
    }
    body:has(.gate-checkin-page) .gate-checkin-header h1{
        letter-spacing:-.5px!important;
    }
    body:has(.gate-checkin-page) .gate-kpis{
        height:94px!important;
    }
    body:has(.gate-checkin-page) .gate-kpis article{
        box-shadow:0 2px 9px rgba(31,42,68,.025)!important;
    }
    body:has(.gate-checkin-page) .gate-card-heading{
        min-height:34px!important;
        align-items:flex-start!important;
    }
    body:has(.gate-checkin-page) .gate-card-heading h2{
        margin-bottom:2px!important;
    }
    body:has(.gate-checkin-page) .gate-line-chart{
        border-top:0!important;
    }
    body:has(.gate-checkin-page) .gate-line-chart>div{
        padding-left:38px!important;
        padding-right:6px!important;
        font-size:9px!important;
    }
    body:has(.gate-checkin-page) .gate-history-card>.gate-card-heading{
        padding-bottom:8px!important;
        border-bottom:1px solid #eef1f5!important;
    }
    body:has(.gate-checkin-page) .gate-system-footer{
        border:1px solid #bfe0c8!important;
        box-shadow:0 2px 8px rgba(31,42,68,.02)!important;
    }
}

/* Mobile layout for Gate Staff / Check-in Management */
@media (max-width:820px){
    html:has(.gate-checkin-page),
    body:has(.gate-checkin-page){
        width:100%!important;
        max-width:100%!important;
        overflow-x:hidden!important;
    }
    body:has(.gate-checkin-page){
        padding-top:0!important;
        background:#f7f8fc!important;
    }
    body:has(.gate-checkin-page) .organizer-workspace,
    body:has(.gate-checkin-page) .organizer-content{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        margin:0!important;
        padding:0!important;
        display:block!important;
    }
    body:has(.gate-checkin-page) .organizer-sidebar,
    body:has(.gate-checkin-page) .organizer-inventory-sidebar{
        display:none!important;
    }
    body:has(.gate-checkin-page) .organizer-gate-checkin-header{
        position:sticky!important;
        inset:0 0 auto 0!important;
        width:100%!important;
        height:auto!important;
        min-height:79px!important;
        margin:0!important;
        border-bottom:1px solid #edf0f5!important;
        background:#fff!important;
        z-index:1000!important;
        display:block!important;
    }
    body:has(.gate-checkin-page) .organizer-gate-checkin-topbar{
        display:none!important;
    }
    body:has(.gate-checkin-page) .organizer-unified-mobile-header{
        display:grid!important;
        width:calc(100% - 24px)!important;
        min-height:79px!important;
        margin:0 auto!important;
        grid-template-columns:minmax(118px,1fr) 58px 38px 38px 38px!important;
        gap:3px!important;
    }
    body:has(.gate-checkin-page) .organizer-unified-mobile-header .brand-logo{
        grid-column:1!important;
        grid-row:1!important;
        justify-self:start!important;
        align-self:center!important;
        order:0!important;
        margin:0!important;
    }
    body:has(.gate-checkin-page) .organizer-unified-mobile-header .brand-logo,
    body:has(.gate-checkin-page) .organizer-unified-mobile-header .brand-logo img{
        width:118px!important;
        height:auto!important;
        max-height:44px!important;
    }
    body:has(.gate-checkin-page) .dashboard-clock{
        grid-column:2!important;
        grid-row:1!important;
        width:58px!important;
        text-align:right!important;
        justify-self:end!important;
        order:1!important;
    }
    body:has(.gate-checkin-page) .dashboard-clock>span{
        display:none!important;
    }
    body:has(.gate-checkin-page) .dashboard-clock>time{
        font-size:10px!important;
        white-space:nowrap!important;
    }
    body:has(.gate-checkin-page) .organizer-unified-mobile-header .site-notifications{
        grid-column:3!important;
        grid-row:1!important;
        justify-self:center!important;
        order:2!important;
    }
    body:has(.gate-checkin-page) .organizer-unified-mobile-header .organizer-mobile-menu{
        grid-column:4!important;
        grid-row:1!important;
        justify-self:center!important;
        order:3!important;
    }
    body:has(.gate-checkin-page) .organizer-unified-mobile-header .organizer-topbar-account{
        grid-column:5!important;
        grid-row:1!important;
        justify-self:end!important;
        order:4!important;
    }
    body:has(.gate-checkin-page) .site-notification-link,
    body:has(.gate-checkin-page) .organizer-unified-mobile-header .organizer-mobile-menu,
    body:has(.gate-checkin-page) .organizer-unified-mobile-header .organizer-topbar-account,
    body:has(.gate-checkin-page) .organizer-unified-mobile-header .organizer-mobile-menu>summary,
    body:has(.gate-checkin-page) .organizer-unified-mobile-header .organizer-topbar-account>summary{
        width:38px!important;
        height:38px!important;
        min-height:38px!important;
    }
    body:has(.gate-checkin-page) .organizer-unified-mobile-header .organizer-account-avatar{
        width:34px!important;
        height:34px!important;
    }
    body:has(.gate-checkin-page) .organizer-unified-mobile-header .organizer-account-chevron{
        display:none!important;
    }

    .gate-checkin-page{
        width:100%!important;
        max-width:100%!important;
        height:auto!important;
        min-height:calc(100dvh - 79px)!important;
        padding:14px 12px 24px!important;
        margin:0!important;
        overflow:visible!important;
        box-sizing:border-box!important;
        position:relative!important;
        background:#f7f8fc!important;
    }
    .gate-checkin-header{
        width:100%!important;
        height:auto!important;
        margin:0 0 12px!important;
        padding:0!important;
        border:0!important;
        display:grid!important;
        grid-template-columns:minmax(0,1fr) auto!important;
        gap:10px!important;
        align-items:center!important;
    }
    .gate-checkin-title{
        grid-column:1/-1!important;
        min-width:0!important;
        align-items:flex-start!important;
        gap:8px!important;
    }
    .gate-title-icon{
        width:34px!important;
        height:34px!important;
        flex:0 0 34px!important;
    }
    .gate-checkin-header h1{
        font-size:18px!important;
        line-height:1.2!important;
        margin:0!important;
    }
    .gate-checkin-header p{
        font-size:10px!important;
        line-height:1.35!important;
        margin:3px 0 0!important;
    }
    .gate-event-picker{
        width:calc(100vw - 82px)!important;
        max-width:none!important;
        min-width:0!important;
        height:42px!important;
        margin:0!important;
    }
    .gate-event-picker>span{
        white-space:nowrap!important;
        overflow:hidden!important;
        text-overflow:ellipsis!important;
    }
    .gate-live-button{
        width:auto!important;
        height:42px!important;
        min-width:58px!important;
        margin:0!important;
        justify-content:center!important;
    }

    .gate-kpis{
        width:100%!important;
        height:auto!important;
        margin:0 0 12px!important;
        display:grid!important;
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:8px!important;
    }
    .gate-kpis article{
        width:auto!important;
        height:82px!important;
        min-width:0!important;
        padding:10px!important;
        gap:8px!important;
        border-radius:9px!important;
    }
    .gate-kpis article>span{
        width:38px!important;
        height:38px!important;
        flex:0 0 38px!important;
        border-radius:8px!important;
    }
    .gate-kpis svg{width:20px!important;height:20px!important}
    .gate-kpis p{font-size:9px!important;margin-bottom:4px!important}
    .gate-kpis strong{font-size:21px!important}

    .gate-checkin-main-grid,
    .gate-analytics-grid{
        position:static!important;
        width:100%!important;
        height:auto!important;
        display:grid!important;
        grid-template-columns:minmax(0,1fr)!important;
        gap:12px!important;
        margin:0 0 12px!important;
        left:auto!important;
        top:auto!important;
    }
    .gate-scanner-card,
    .gate-manual-card,
    .gate-chart-card,
    .gate-history-card,
    .gate-system-footer{
        position:static!important;
        width:100%!important;
        max-width:none!important;
        height:auto!important;
        min-width:0!important;
        margin:0!important;
        left:auto!important;
        right:auto!important;
        top:auto!important;
        box-sizing:border-box!important;
    }
    .gate-scanner-card,.gate-manual-card,.gate-chart-card,.gate-history-card{
        padding:12px!important;
        border-radius:9px!important;
    }
    .gate-card-heading{min-height:auto!important}
    .gate-card-heading h2{font-size:13px!important}
    .gate-camera-preview-wrap{
        width:100%!important;
        height:220px!important;
        margin-top:10px!important;
    }
    .gate-camera-frame{width:128px!important;height:128px!important}
    .gate-start-button{height:42px!important;margin-top:10px!important}
    .gate-scanner-message{font-size:9px!important;margin:7px 0 0!important}
    .gate-lookup-form{
        grid-template-columns:minmax(0,1fr)!important;
        gap:8px!important;
        margin-top:12px!important;
    }
    .gate-lookup-form input,.gate-search-button{height:42px!important}
    .gate-search-button{width:100%!important}

    .gate-chart-card{height:auto!important;min-height:300px!important}
    .gate-line-chart{height:230px!important}
    .gate-line-chart svg{width:100%!important;height:190px!important}
    .gate-chart-legend{font-size:9px!important;gap:8px!important}
    .gate-category-donut{
        min-height:220px!important;
        height:auto!important;
        flex-direction:row!important;
        justify-content:center!important;
        gap:14px!important;
    }
    .gate-donut{width:136px!important;height:136px!important}
    .gate-donut:before{width:84px!important;height:84px!important}
    .gate-donut-list{min-width:112px!important}

    .gate-history-card{padding:12px!important;margin-bottom:12px!important}
    .gate-history-table-wrap{
        width:100%!important;
        max-height:none!important;
        overflow-x:auto!important;
        -webkit-overflow-scrolling:touch!important;
    }
    .gate-history-table{min-width:780px!important;width:780px!important}
    .gate-history-table th,.gate-history-table td{
        height:36px!important;
        white-space:nowrap!important;
    }
    .gate-system-footer{
        height:auto!important;
        min-height:58px!important;
        padding:10px!important;
        flex-direction:column!important;
        align-items:flex-start!important;
        gap:8px!important;
        font-size:9px!important;
    }
    .gate-system-ready{flex-wrap:wrap!important}
    .gate-system-ready small{font-size:8px!important}
    .gate-system-ready b{display:none!important}
}

@media (max-width:360px){
    body:has(.gate-checkin-page) .organizer-unified-mobile-header{
        width:calc(100% - 16px)!important;
        grid-template-columns:minmax(105px,1fr) 52px 38px 38px 38px!important;
        gap:1px!important;
    }
    body:has(.gate-checkin-page) .organizer-unified-mobile-header .brand-logo,
    body:has(.gate-checkin-page) .organizer-unified-mobile-header .brand-logo img{
        width:105px!important;
    }
    .gate-checkin-page{padding-left:10px!important;padding-right:10px!important}
    .gate-checkin-header h1{font-size:16px!important}
    .gate-kpis article{padding:8px!important;gap:6px!important}
    .gate-kpis article>span{width:34px!important;height:34px!important;flex-basis:34px!important}
    .gate-kpis strong{font-size:19px!important}
    .gate-category-donut{gap:8px!important}
    .gate-donut{width:120px!important;height:120px!important}
    .gate-donut:before{width:74px!important;height:74px!important}
}

/* Gate Scanner responsive calibration */
@media (min-width:821px){
    body:has(.gate-checkin-page){
        overflow-x:hidden!important;
    }
    body:has(.gate-checkin-page) .organizer-workspace,
    body:has(.gate-checkin-page) .organizer-content{
        width:calc(100vw - 208px)!important;
        max-width:calc(100vw - 208px)!important;
        box-sizing:border-box!important;
    }
    body:has(.gate-checkin-page) .gate-checkin-page{
        width:100%!important;
        max-width:none!important;
        box-sizing:border-box!important;
    }
}

@media (min-width:821px) and (max-width:1300px){
    body:has(.gate-checkin-page) .gate-checkin-page{
        position:relative!important;
        min-height:780px!important;
        overflow:hidden!important;
        box-sizing:border-box!important;
    }
    body:has(.gate-checkin-page) .gate-checkin-main-grid{
        position:absolute!important;
        left:16px!important;
        top:182px!important;
        width:220px!important;
        height:auto!important;
        display:block!important;
    }
    body:has(.gate-checkin-page) .gate-scanner-card{
        width:220px!important;
        height:318px!important;
        min-height:318px!important;
        margin-bottom:10px!important;
        box-sizing:border-box!important;
    }
    body:has(.gate-checkin-page) .gate-camera-preview-wrap{
        height:184px!important;
    }
    body:has(.gate-checkin-page) .gate-camera-preview{
        display:none!important;
        width:100%!important;
        height:100%!important;
        object-fit:cover!important;
    }
    body:has(.gate-checkin-page) .gate-camera-preview.is-active{
        display:block!important;
        position:absolute!important;
        inset:0!important;
        z-index:3!important;
    }
    body:has(.gate-checkin-page) .gate-camera-preview.is-active + .gate-qr-fallback,
    body:has(.gate-checkin-page) .gate-camera-preview:not(.is-active){
        position:absolute!important;
    }
    body:has(.gate-checkin-page) .gate-camera-preview.is-active + .gate-qr-fallback{
        display:none!important;
    }
    body:has(.gate-checkin-page) .gate-camera-preview:not(.is-active) + .gate-qr-fallback{
        display:block!important;
    }
    body:has(.gate-checkin-page) .gate-start-button{
        display:block!important;
        width:100%!important;
        height:38px!important;
        margin-top:8px!important;
        position:relative!important;
        z-index:5!important;
    }
    body:has(.gate-checkin-page) .gate-scanner-message{
        display:block!important;
        min-height:14px!important;
    }
    body:has(.gate-checkin-page) .gate-manual-card{
        width:220px!important;
        height:auto!important;
        min-height:154px!important;
        box-sizing:border-box!important;
    }
    body:has(.gate-checkin-page) .gate-analytics-grid{
        position:absolute!important;
        left:248px!important;
        top:182px!important;
        width:calc(100% - 264px)!important;
        height:318px!important;
        grid-template-columns:minmax(0,1fr) 220px!important;
        gap:12px!important;
    }
    body:has(.gate-checkin-page) .gate-chart-card{
        width:100%!important;
        height:318px!important;
        min-width:0!important;
    }
    body:has(.gate-checkin-page) .gate-history-card{
        position:absolute!important;
        left:248px!important;
        top:512px!important;
        width:calc(100% - 264px)!important;
        height:auto!important;
        min-height:210px!important;
    }
    body:has(.gate-checkin-page) .gate-system-footer{
        position:absolute!important;
        left:16px!important;
        right:16px!important;
        top:734px!important;
    }
}

/* Gate Staff reference dashboard */
.gate-staff-dashboard{
    padding:24px 28px 32px!important;
    background:#f7f8fc!important;
}
.gate-staff-banner{
    position:relative;
    isolation:isolate;
    height:112px;
    border-radius:12px;
    margin-bottom:16px;
    padding:0 24px;
    display:flex;
    align-items:center;
    gap:18px;
    color:#fff;
    overflow:hidden;
    background:#08245f;
    box-shadow:0 8px 22px rgba(21,70,178,.16);
}
.gate-staff-banner-image{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:fill;
    object-position:center;
}
.gate-staff-banner-icon,
.gate-staff-banner-copy{
    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;
}
.gate-staff-banner-icon{width:54px;height:54px;border-radius:12px;background:rgba(255,255,255,.97);color:#1d3ebd;display:grid;place-items:center;flex:0 0 54px}
.gate-staff-banner-icon svg{width:38px;height:38px;fill:currentColor}
.gate-staff-banner-icon svg circle{fill:none;stroke:currentColor;stroke-width:1.5}
.gate-staff-banner-icon svg path{fill:none;stroke:currentColor;stroke-width:1.8}
.gate-staff-banner h1{margin:0 0 6px;color:#fff;font-size:30px;line-height:1}
.gate-staff-banner p{margin:0;color:rgba(255,255,255,.88);font-size:13px}
.gate-staff-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}
.gate-staff-kpis article{height:106px;background:#fff;border:1px solid #edf0f5;border-radius:11px;display:flex;align-items:center;padding:18px;box-shadow:0 3px 12px rgba(31,42,68,.03)}
.gate-staff-kpi-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;margin-right:14px}
.gate-staff-kpi-icon svg{width:38px;height:38px;fill:none;stroke:currentColor;stroke-width:2}
.gate-staff-kpi-icon.blue{background:#edf4ff;color:#1677ff}
.gate-staff-kpi-icon.green{background:#eaf7ef;color:#16a34a}
.gate-staff-kpi-icon.purple{background:#f2edff;color:#9b3cff}
.gate-staff-kpi-icon.orange{background:#fff2e4;color:#f59e0b}
.gate-staff-kpis strong{display:block;color:#1d2a4f;font-size:25px;line-height:1;margin-bottom:8px}
.gate-staff-kpis p{margin:0;color:#4b5565;font-size:12px;font-weight:700;white-space:nowrap}
.gate-staff-kpis small{display:block;color:#16a34a;font-size:10px;margin-top:4px}
.gate-staff-table-card{background:#fff;border:1px solid #edf0f5;border-radius:12px;box-shadow:0 4px 14px rgba(31,42,68,.04);overflow:hidden;margin-bottom:16px}
.gate-staff-card-heading{height:68px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf0f5}
.gate-staff-card-heading>div{display:flex;align-items:center;gap:10px}
.gate-staff-card-heading h2{margin:0;color:#1e43c7;font-size:17px}
.gate-staff-heading-icon{width:30px;height:30px;border-radius:8px;color:#1677ff;background:#edf4ff;display:grid;place-items:center}
.gate-staff-heading-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}
.gate-staff-add{height:38px;padding:0 14px;border-radius:8px;background:#1677ff;color:#fff;text-decoration:none;display:flex;align-items:center;gap:7px;font-size:12px;font-weight:700}
.gate-staff-add svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}
.gate-staff-table-wrap{overflow-x:auto}
.gate-staff-table{width:100%;border-collapse:collapse;min-width:860px}
.gate-staff-table th{height:42px;padding:0 12px;background:#f4f6fb;color:#293d8f;font-size:11px;text-align:left}
.gate-staff-table td{height:76px;padding:8px 12px;border-top:1px solid #edf0f5;color:#394258;font-size:12px}
.gate-staff-member{display:flex;align-items:center;gap:10px}
.gate-staff-member>span{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#eaf2ff;color:#2457e7;font-weight:800}
.gate-staff-member strong,.gate-staff-member small{display:block}
.gate-staff-member strong{color:#2457a8;margin-bottom:4px}
.gate-staff-member small{color:#8a94a8;font-size:10px}
.gate-staff-event{display:flex;align-items:center;gap:8px;min-width:170px}
.gate-staff-event>span{width:38px;height:38px;border-radius:8px;background:#edf4ff;color:#1677ff;display:grid;place-items:center}
.gate-staff-event svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8}
.gate-staff-role{border-radius:999px;padding:5px 8px;font-size:10px;font-weight:700}
.role-blue{background:#edf4ff;color:#2457e7}.role-purple{background:#f2edff;color:#8b5cf6}
.gate-staff-status{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:700}
.gate-staff-status i{width:7px;height:7px;border-radius:50%}
.gate-staff-status.active{background:#eaf7ef;color:#159447}.gate-staff-status.active i{background:#16a34a}
.gate-staff-status.inactive{background:#fff0f0;color:#c24141}.gate-staff-status.inactive i{background:#ef4444}
.gate-staff-table td:nth-child(6)>strong,.gate-staff-table td:nth-child(6)>small{display:block}
.gate-staff-table td:nth-child(6)>small{margin-top:3px;color:#929aaa}
.gate-staff-actions{display:flex;align-items:center;gap:8px}
.gate-staff-actions>a:first-child{height:32px;padding:0 12px;border:1px solid #dbe5ff;border-radius:8px;color:#2457e7;text-decoration:none;display:flex;align-items:center;font-size:11px;font-weight:700}
.gate-staff-actions>a:last-child{width:32px;height:32px;border:1px solid #edf0f5;border-radius:8px;color:#6b7280;text-decoration:none;display:grid;place-items:center}
.gate-staff-actions svg{width:16px;height:16px;fill:currentColor}
.gate-staff-empty{text-align:center;padding:28px!important;color:#929aaa}.gate-staff-empty strong{display:block;color:#394258;margin-bottom:5px}
.gate-staff-pagination{padding:12px 18px;border-top:1px solid #edf0f5}
.gate-staff-management{min-height:78px;border:1px solid #d7e3ff;border-radius:10px;background:#fff;display:flex;align-items:center;padding:14px 18px}
.gate-staff-management-icon{width:42px;height:42px;border-radius:50%;background:#eaf2ff;color:#1677ff;display:grid;place-items:center;margin-right:12px}
.gate-staff-management-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8}
.gate-staff-management>div{flex:1}
.gate-staff-management strong{display:block;color:#394258;font-size:13px;margin-bottom:4px}.gate-staff-management p{margin:0;color:#6b7280;font-size:11px}
.gate-staff-management>a{height:38px;padding:0 14px;border:1px solid #1677ff;border-radius:8px;color:#1677ff;text-decoration:none;display:flex;align-items:center;font-size:11px;font-weight:700}
.gate-staff-management>a span{font-size:17px;margin-left:7px}

@media (max-width:820px){
    .gate-staff-dashboard{padding:16px 12px 24px!important}
    .gate-staff-banner{
        height:120px;
        padding:0 16px;
        gap:12px;
        background:#102b9e;
    }
    .gate-staff-banner::before{
        content:"";
        position:absolute;
        z-index:1;
        inset:0;
        background:linear-gradient(90deg,rgba(8,28,92,.88),rgba(8,47,145,.58) 72%,rgba(8,47,145,.34));
        pointer-events:none;
    }
    .gate-staff-banner-image{
        display:block;
        object-fit:cover;
        object-position:right center;
    }
    .gate-staff-banner .gate-staff-banner-icon{
        position:relative!important;
        z-index:2;
        width:48px!important;
        height:48px!important;
        flex:0 0 48px;
        padding:0!important;
        margin:0!important;
        overflow:visible!important;
        clip:auto!important;
        white-space:normal!important;
    }
    .gate-staff-banner .gate-staff-banner-copy{
        position:relative!important;
        z-index:2;
        width:auto!important;
        height:auto!important;
        flex:1;
        padding:0!important;
        margin:0!important;
        overflow:visible!important;
        clip:auto!important;
        white-space:normal!important;
    }
    .gate-staff-banner-icon{width:48px;height:48px;flex-basis:48px}
    .gate-staff-banner h1{font-size:24px}
    .gate-staff-banner p{font-size:11px;line-height:1.45}
    .gate-staff-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
    .gate-staff-kpis article{height:96px;padding:12px}
    .gate-staff-kpi-icon{width:44px;height:44px;flex-basis:44px;margin-right:10px}
    .gate-staff-kpi-icon svg{width:30px;height:30px}
    .gate-staff-kpis strong{font-size:21px}
    .gate-staff-card-heading{height:auto;min-height:68px;padding:12px}
    .gate-staff-card-heading h2{font-size:14px}
    .gate-staff-add{padding:0 10px;font-size:10px}
    .gate-staff-management{align-items:flex-start;flex-wrap:wrap;gap:10px}
    .gate-staff-management>a{margin-left:auto}
}

/* Event Gate Staff invitation page */
.gate-invite-dashboard{padding-top:18px!important;background:#f4f7fc!important}
.gate-invite-banner{height:112px;border-radius:12px;background:#2456c8 url('/images/invite-gate-staff-banner.png') center 46% / cover no-repeat;display:flex;align-items:center;padding:0 24px;margin-bottom:16px;color:#fff;overflow:hidden;box-shadow:0 4px 14px rgba(31,42,68,.08)}
.gate-invite-banner-icon,.gate-invite-banner>div{display:none}
.gate-invite-banner-icon{width:58px;height:58px;border-radius:12px;background:#fff;color:#1d4ed8;display:grid;place-items:center;flex:0 0 58px;margin-right:16px}
.gate-invite-banner-icon svg{width:38px;height:38px;fill:none;stroke:currentColor;stroke-width:1.7}
.gate-invite-banner-icon svg circle:first-child,.gate-invite-banner-icon svg circle:nth-child(2){fill:currentColor;stroke:none}
.gate-invite-banner h1{margin:0 0 7px;font-size:30px;line-height:1}
.gate-invite-banner p{margin:0;font-size:13px;color:rgba(255,255,255,.88)}
.gate-invite-notice{margin-bottom:14px}
.gate-invite-form-card,.gate-invitations-card{border:1px solid #e4eaf4;border-radius:12px;background:#fff;box-shadow:0 4px 14px rgba(31,42,68,.04);overflow:hidden;margin-bottom:16px}
.gate-invite-card-heading{min-height:82px;padding:16px 18px;border-bottom:1px solid #edf0f5;display:flex;align-items:flex-start;position:relative}
.gate-invite-card-heading>span{width:34px;height:34px;border-radius:8px;background:#edf4ff;color:#1677ff;display:grid;place-items:center;margin-right:10px}
.gate-invite-card-heading>span svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}
.gate-invite-card-heading>div h2,.gate-invitations-heading h2{margin:3px 0 5px;color:#2046b8;font-size:16px}
.gate-invite-card-heading>div p,.gate-invitations-heading p{margin:0;color:#8a94a8;font-size:11px}
.gate-invite-guidance{position:absolute;right:18px;top:16px;width:36%;border:1px solid #bed4ff;border-radius:8px;background:#f5f8ff;padding:12px 14px}
.gate-invite-guidance>div{display:flex;align-items:center;color:#2457a8;font-size:11px;margin-bottom:8px}
.gate-invite-guidance>div i{width:17px;height:17px;border-radius:50%;background:#dbe8ff;color:#1677ff;display:grid;place-items:center;margin-right:7px;font-style:normal;font-size:10px}
.gate-invite-guidance ul{list-style:none;margin:0;padding:0}
.gate-invite-guidance li{display:flex;align-items:flex-start;color:#61708a;font-size:10px;line-height:1.45;margin-top:5px}
.gate-invite-guidance li i{color:#1baa57;font-style:normal;margin-right:7px}
.gate-invite-form{padding:18px}
.gate-invite-fields{display:grid;grid-template-columns:minmax(0,62%) minmax(220px,38%);gap:18px}
.gate-invite-fields label>span{display:block;color:#394258;font-size:11px;font-weight:700;margin-bottom:8px}
.gate-invite-fields label>span i{color:#ef4444;font-style:normal}
.gate-invite-fields label>span b{color:#9aa4b7;font-size:10px}
.gate-invite-fields textarea{width:100%;height:108px;resize:vertical;border:1px solid #dfe5ef;border-radius:8px;padding:12px;color:#394258;font:inherit;font-size:12px;outline:none}
.gate-invite-fields textarea:focus,.gate-invite-fields select:focus{border-color:#7da4ff;box-shadow:0 0 0 3px rgba(22,119,255,.08)}
.gate-invite-fields textarea::placeholder{color:#a3abb8}
.gate-invite-fields label>small{display:block;color:#9aa4b7;font-size:10px;margin-top:6px}
.gate-invite-fields label>small.field-error{color:#dc2626}
.gate-invite-options{display:grid;grid-template-columns:1fr;gap:2px}
.gate-invite-options label{display:block}
.gate-invite-options select{width:100%;height:42px;border:1px solid #dfe5ef;border-radius:8px;background:#fff;color:#394258;padding:0 11px;font-size:12px;outline:none}
.gate-invite-submit{min-height:58px;margin-top:12px;border-top:1px solid #edf0f5;padding-top:14px;display:flex;align-items:center;justify-content:space-between}
.gate-invite-submit label{display:flex;align-items:center;color:#69758a;font-size:11px}
.gate-invite-submit input{margin-right:7px;accent-color:#1677ff}
.gate-invite-submit button{height:40px;border:0;border-radius:8px;background:#1677ff;color:#fff;padding:0 16px;display:flex;align-items:center;font-size:12px;font-weight:700;cursor:pointer}
.gate-invite-submit button svg{width:17px;height:17px;margin-right:8px;fill:none;stroke:currentColor;stroke-width:1.8}
.gate-invitations-heading{height:68px;padding:0 18px;border-bottom:1px solid #edf0f5;display:flex;align-items:center;justify-content:space-between}
.gate-invitations-heading>div{display:flex;align-items:center}
.gate-invitations-heading>div>span{width:34px;height:34px;border-radius:8px;background:#edf4ff;color:#1677ff;display:grid;place-items:center;margin-right:10px}
.gate-invitations-heading>div>span svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}
.gate-invite-refresh{height:34px;border:1px solid #dbe5ff;border-radius:8px;color:#2457e7;text-decoration:none;display:flex;align-items:center;padding:0 11px;font-size:11px;font-weight:700}
.gate-invite-refresh svg{width:16px;height:16px;margin-right:7px;fill:none;stroke:currentColor;stroke-width:1.8}
.gate-invitations-table-wrap{overflow-x:auto}
.gate-invitations-table{width:100%;min-width:980px;border-collapse:collapse}
.gate-invitations-table th{height:42px;background:#f4f6fb;color:#293d8f;text-align:left;padding:0 12px;font-size:10px}
.gate-invitations-table td{height:62px;border-top:1px solid #edf0f5;padding:8px 12px;color:#394258;font-size:11px}
.gate-invite-access{border-radius:999px;background:#eef4ff;color:#2457e7;padding:5px 8px;font-size:10px;font-weight:700}
.gate-invite-status{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:700}
.gate-invite-status i{width:7px;height:7px;border-radius:50%}
.gate-invite-status.pending{background:#fff7e8;color:#a86a00}.gate-invite-status.pending i{background:#f59e0b}
.gate-invite-status.accepted{background:#eaf7ef;color:#159447}.gate-invite-status.accepted i{background:#16a34a}
.gate-invite-status.expired{background:#fff0f0;color:#c24141}.gate-invite-status.expired i{background:#ef4444}
.gate-invite-actions{display:flex;gap:7px}
.gate-invite-actions form{margin:0}
.gate-invite-actions button{height:32px;border:1px solid #dbe5ff;border-radius:7px;background:#fff;color:#2457e7;padding:0 8px;font-size:10px;font-weight:700;cursor:pointer}
.gate-invite-actions button svg{width:13px;height:13px;margin-right:4px;vertical-align:-2px;fill:none;stroke:currentColor;stroke-width:1.8}
.gate-invite-actions form:last-child button{border-color:#edf0f5;color:#69758a;letter-spacing:1px}
.gate-invitations-empty{text-align:center!important;color:#929aaa!important;padding:28px!important}
.gate-invitations-footer{height:54px;border-top:1px solid #edf0f5;padding:0 18px;display:flex;align-items:center;justify-content:space-between;color:#929aaa;font-size:10px}
.gate-invitations-footer div{display:flex;gap:5px}
.gate-invitations-footer button{width:30px;height:30px;border:1px solid #edf0f5;border-radius:7px;background:#fff;color:#8a94a8}
.gate-invitations-footer button.current{border-color:#1677ff;background:#1677ff;color:#fff}

@media (max-width:820px){
    .gate-invite-dashboard{padding:12px!important}
    .gate-invite-banner{height:104px;padding:0 14px;margin-bottom:12px}
    .gate-invite-banner-icon{width:48px;height:48px;flex-basis:48px;margin-right:12px}
    .gate-invite-banner-icon svg{width:32px;height:32px}
    .gate-invite-banner h1{font-size:23px}
    .gate-invite-banner p{font-size:10px;line-height:1.4}
    .gate-invite-card-heading{min-height:68px;padding:12px;display:block}
    .gate-invite-card-heading>span{float:left}
    .gate-invite-guidance{position:static;width:auto;margin-top:14px;clear:both}
    .gate-invite-form{padding:12px}
    .gate-invite-fields{grid-template-columns:1fr;padding-right:0;gap:12px}
    .gate-invite-fields textarea{height:96px}
    .gate-invite-submit{align-items:flex-start;gap:12px}
    .gate-invite-submit button{flex:0 0 auto;padding:0 10px;font-size:10px}
    .gate-invitations-heading{height:64px;padding:0 12px}
    .gate-invitations-heading h2{font-size:14px}
    .gate-invite-refresh{font-size:10px;padding:0 8px}
    .gate-invitations-footer{padding:0 12px}
}

/* Orders & Payments dashboard */
.organizer-orders-page{padding-top:18px!important;background:#f4f7fc!important}
.orders-banner{height:112px;border-radius:12px;background:linear-gradient(105deg,#1c38a7 0%,#2455d8 58%,#3986ef 100%);display:flex;align-items:center;padding:0 24px;margin-bottom:16px;color:#fff;box-shadow:0 4px 14px rgba(31,42,68,.08)}
.orders-banner-icon{width:58px;height:58px;border-radius:12px;background:#fff;color:#2457e7;display:grid;place-items:center;margin-right:16px}
.orders-banner-icon svg{width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:1.8}
.orders-banner h1{margin:0 0 7px;font-size:30px;line-height:1}
.orders-banner p{margin:0;font-size:13px;color:rgba(255,255,255,.88)}
.orders-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}
.orders-kpis article{height:106px;border:1px solid #edf0f5;border-radius:11px;background:#fff;display:flex;align-items:center;padding:18px;box-shadow:0 3px 12px rgba(31,42,68,.03)}
.orders-kpi-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;flex:0 0 54px;margin-right:14px}
.orders-kpi-icon svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:2}
.orders-kpi-icon.blue{background:#eaf2ff;color:#1677ff}.orders-kpi-icon.green{background:#eaf7ef;color:#16a34a}.orders-kpi-icon.orange{background:#fff2e4;color:#f59e0b}.orders-kpi-icon.purple{background:#f2edff;color:#9b3cff}
.orders-kpis strong{display:block;color:#1d2a4f;font-size:21px;line-height:1;margin-bottom:8px}
.orders-kpis p{margin:0;color:#2457a8;font-size:12px;font-weight:700;white-space:nowrap}
.orders-kpis small{display:block;color:#16a34a;font-size:10px;font-weight:700;margin-top:4px}.orders-kpis small.negative{color:#ef4444}
.orders-analytics{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);gap:14px;margin-bottom:16px}
.orders-chart-card,.orders-method-card,.orders-recent-card{border:1px solid #edf0f5;border-radius:11px;background:#fff;box-shadow:0 3px 12px rgba(31,42,68,.03);overflow:hidden}
.orders-card-heading{height:52px;padding:0 16px;display:flex;align-items:center;justify-content:space-between}
.orders-card-heading h2{margin:0;color:#2457e7;font-size:15px}.orders-card-heading h2 i{display:inline-block;width:4px;height:18px;border-radius:4px;background:#1677ff;margin-right:7px;vertical-align:-4px}
.orders-range{display:flex;gap:4px}.orders-range button{height:26px;border:0;border-radius:999px;background:#eef2f9;color:#2457a8;padding:0 10px;font-size:10px;font-weight:700}.orders-range button.active{background:#1677ff;color:#fff}
.orders-chart-legend{height:30px;padding:0 16px;display:flex;justify-content:center;gap:20px;color:#394258;font-size:10px}.orders-chart-legend span{display:flex;align-items:center}.orders-chart-legend i{width:8px;height:8px;border-radius:50%;margin-right:6px}.orders-chart-legend i.blue{background:#1677ff}.orders-chart-legend i.orange{background:#f59e0b}
.orders-chart{height:155px;padding:0 18px 10px 44px;display:flex;align-items:flex-end;justify-content:space-around;border-bottom:1px solid #edf0f5;background:repeating-linear-gradient(to bottom,#fff 0,#fff 36px,#edf0f5 37px,#fff 38px)}
.orders-chart-column{height:145px;width:14%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}.orders-chart-bars{height:130px;display:flex;align-items:flex-end;gap:8px}.orders-chart-bars span{width:18px;border-radius:7px 7px 0 0}.orders-chart-bars .revenue{background:#1677ff;opacity:.9}.orders-chart-bars .orders{background:#f59e0b}.orders-chart-column small{height:15px;color:#2457a8;font-size:10px;font-weight:700;padding-top:4px}
.orders-method-content{height:185px;display:flex;align-items:center;padding:0 18px 14px}.orders-donut{width:150px;height:150px;border-radius:50%;background:conic-gradient(#1677ff 0 49%,#16a34a 49% 86%,#f59e0b 86% 100%);display:grid;place-items:center;margin-right:14px}.orders-donut>div{width:92px;height:92px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center}.orders-donut strong{color:#2457a8;font-size:18px}.orders-donut span{color:#2457a8;font-size:10px;font-weight:700}
.orders-method-list{display:flex;flex-direction:column;gap:12px;min-width:0}.orders-method-list>div{display:flex;align-items:flex-start;color:#394258;font-size:11px}.orders-method-list>div>i{width:8px;height:8px;border-radius:50%;margin:3px 8px 0 0}.orders-method-list strong,.orders-method-list small{display:block}.orders-method-list small{color:#2457a8;font-size:10px;margin-top:2px}
.orders-recent-heading{height:68px;padding:0 16px;border-bottom:1px solid #edf0f5;display:flex;align-items:center;justify-content:space-between}.orders-recent-heading h2{margin:0;color:#2457e7;font-size:15px}.orders-recent-heading h2>span{width:28px;height:28px;border-radius:7px;background:#edf4ff;color:#1677ff;display:inline-grid;place-items:center;margin-right:7px}.orders-recent-heading h2 svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}
.orders-tools{display:flex;align-items:center;gap:7px}.orders-tools label{width:180px;height:36px;border:1px solid #dbe5ff;border-radius:8px;display:flex;align-items:center;padding:0 8px}.orders-tools label svg{width:15px;height:15px;fill:none;stroke:#6d7890;stroke-width:1.8;margin-right:6px}.orders-tools label input{width:100%;border:0;outline:0;font-size:11px}.orders-tools select{height:36px;border:1px solid #dbe5ff;border-radius:8px;color:#394258;padding:0 10px;font-size:11px}.orders-export{height:36px;border:1px solid #1677ff;border-radius:8px;background:#fff;color:#1677ff;display:flex;align-items:center;padding:0 10px;font-size:11px;font-weight:700}.orders-export svg{width:15px;height:15px;margin-right:6px;fill:none;stroke:currentColor;stroke-width:1.8}
.orders-table-wrap{overflow-x:auto}.orders-table{width:100%;min-width:980px;border-collapse:collapse}.orders-table th{height:42px;background:#f4f6fb;color:#293d8f;text-align:left;padding:0 9px;font-size:10px}.orders-table td{height:68px;border-top:1px solid #edf0f5;padding:7px 9px;color:#394258;font-size:11px}.orders-table td>strong{color:#2457a8}.orders-table td>small{display:block;color:#394258;font-size:9px;margin-top:3px}
.orders-method{white-space:nowrap}.orders-method i{font-style:normal;margin-right:6px;color:#1677ff}.orders-method i.bank{color:#2457a8}.orders-status{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:5px 7px;font-size:10px;font-weight:700}.orders-status i{width:7px;height:7px;border-radius:50%}.orders-status.paid{background:#eaf7ef;color:#159447}.orders-status.paid i{background:#16a34a}.orders-status.pending{background:#fff7e8;color:#a86a00}.orders-status.pending i{background:#f59e0b}.orders-view{height:30px;border:1px solid #dbe5ff;border-radius:7px;color:#2457e7;text-decoration:none;padding:0 9px;display:inline-flex;align-items:center;font-size:10px;font-weight:700}.orders-view span{margin-left:5px}
.orders-empty{text-align:center!important;color:#929aaa!important;padding:28px!important}.orders-footer{min-height:48px;border-top:1px solid #edf0f5;padding:8px 16px;display:flex;align-items:center;justify-content:space-between;color:#929aaa;font-size:10px}.orders-footer nav{display:none}

@media (max-width:820px){
    .organizer-orders-page{padding:12px!important}
    .orders-banner{height:104px;padding:0 14px;margin-bottom:12px}.orders-banner-icon{width:48px;height:48px;margin-right:12px}.orders-banner-icon svg{width:32px;height:32px}.orders-banner h1{font-size:23px}.orders-banner p{font-size:10px}
    .orders-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.orders-kpis article{height:96px;padding:12px}.orders-kpi-icon{width:44px;height:44px;flex-basis:44px;margin-right:10px}.orders-kpi-icon svg{width:28px;height:28px}.orders-kpis strong{font-size:17px}.orders-kpis p{font-size:10px}
    .orders-analytics{grid-template-columns:1fr}.orders-method-content{justify-content:center}.orders-recent-heading{height:auto;min-height:68px;align-items:flex-start;flex-wrap:wrap;padding:12px}.orders-tools{width:100%;margin-top:10px}.orders-tools label{flex:1;width:auto}.orders-tools select{max-width:120px}.orders-export{width:36px;padding:0;font-size:0;justify-content:center}.orders-export svg{margin:0}
    .orders-footer{min-height:42px}
}

/* Team Management dashboard */
.organizer-team-page{padding-top:18px!important;background:#f4f7fc!important}
.team-banner{height:112px;border-radius:12px;background:linear-gradient(105deg,#1c38a7 0%,#2455d8 58%,#3986ef 100%);display:flex;align-items:center;padding:0 24px;margin-bottom:16px;color:#fff;box-shadow:0 4px 14px rgba(31,42,68,.08)}
.team-banner-icon{width:58px;height:58px;color:#fff;display:grid;place-items:center;margin-right:16px}.team-banner-icon svg{width:48px;height:48px;fill:currentColor}.team-banner-icon svg path{fill:none;stroke:currentColor;stroke-width:1.5}
.team-banner h1{margin:0 0 7px;font-size:30px;line-height:1}.team-banner p{margin:0;font-size:13px;color:rgba(255,255,255,.88)}
.team-notice{margin-bottom:14px}.team-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}
.team-kpis article{height:106px;border:1px solid #edf0f5;border-radius:11px;background:#fff;display:flex;align-items:center;padding:18px;box-shadow:0 3px 12px rgba(31,42,68,.03)}
.team-kpi-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;flex:0 0 54px;margin-right:14px}.team-kpi-icon svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.8}.team-kpi-icon.blue{background:#eaf2ff;color:#1677ff}.team-kpi-icon.green{background:#eaf7ef;color:#16a34a}.team-kpi-icon.orange{background:#fff2e4;color:#f59e0b}.team-kpi-icon.purple{background:#f2edff;color:#9b3cff}
.team-kpis strong{display:block;color:#1d2a4f;font-size:23px;line-height:1;margin-bottom:8px}.team-kpis p{margin:0;color:#2457a8;font-size:12px;font-weight:700;white-space:nowrap}.team-kpis small{display:block;color:#16a34a;font-size:10px;font-weight:700;margin-top:4px}.team-kpis small.muted{color:#929aaa}
.team-main-grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:14px;margin-bottom:16px}.team-add-card,.team-members-card,.team-roles-card,.team-actions-card{border:1px solid #edf0f5;border-radius:11px;background:#fff;box-shadow:0 3px 12px rgba(31,42,68,.03);overflow:hidden}
.team-card-heading{height:58px;padding:0 14px;display:flex;align-items:center}.team-card-heading>span{width:32px;height:32px;border-radius:8px;background:#edf4ff;color:#1677ff;display:grid;place-items:center;margin-right:9px}.team-card-heading>span svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}.team-card-heading h2{margin:0;color:#2457e7;font-size:14px}.team-card-heading div h2{margin-bottom:4px}.team-card-heading div p{margin:0;color:#929aaa;font-size:10px}
.team-add-tabs{display:grid;grid-template-columns:1fr 1fr;margin:0 12px;border-radius:7px;overflow:hidden}.team-add-tabs button{height:34px;border:0;background:#edf2fb;color:#69758a;font-size:10px;font-weight:700}.team-add-tabs button.active{background:#1677ff;color:#fff}.team-add-tabs svg{width:14px;height:14px;margin-right:4px;vertical-align:-3px;fill:none;stroke:currentColor;stroke-width:1.8}
.team-invite-form{padding:12px}.team-invite-form label{display:block;margin-bottom:12px}.team-invite-form label>span{display:block;color:#394258;font-size:11px;font-weight:700;margin-bottom:7px}.team-invite-form label i{color:#ef4444;font-style:normal}.team-invite-form input,.team-invite-form select{width:100%;height:38px;border:1px solid #dfe5ef;border-radius:7px;padding:0 10px;color:#394258;font-size:11px;background:#fff;outline:none}.team-invite-form input::placeholder{color:#a3abb8}
.team-invite-info{min-height:48px;border:1px solid #dbe5ff;border-radius:7px;background:#f4f8ff;display:flex;color:#2457a8;font-size:10px;line-height:1.45;padding:8px;margin-bottom:12px}.team-invite-info i{width:16px;height:16px;border-radius:50%;background:#1677ff;color:#fff;display:grid;place-items:center;font-style:normal;font-size:9px;flex:0 0 16px;margin-right:7px}
.team-invite-form>button{height:38px;width:100%;border:0;border-radius:7px;background:#1677ff;color:#fff;font-size:11px;font-weight:700}.team-invite-form>button svg{width:15px;height:15px;margin-right:6px;vertical-align:-3px;fill:none;stroke:currentColor;stroke-width:1.8}
.team-members-heading{height:58px;padding:0 14px;border-bottom:1px solid #edf0f5;display:flex;align-items:center;justify-content:space-between}.team-members-heading h2{margin:0;color:#2457e7;font-size:14px}.team-members-heading h2>span{width:28px;height:28px;border-radius:7px;background:#edf4ff;color:#1677ff;display:inline-grid;place-items:center;margin-right:7px}.team-members-heading h2 svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}.team-members-heading>div{display:flex;gap:7px}.team-members-heading label{width:180px;height:34px;border:1px solid #dbe5ff;border-radius:7px;display:flex;align-items:center;padding:0 8px}.team-members-heading label svg{width:15px;height:15px;margin-right:5px;fill:none;stroke:#6d7890;stroke-width:1.8}.team-members-heading label input{width:100%;border:0;outline:0;font-size:10px}.team-members-heading button{height:34px;border:1px solid #dbe5ff;border-radius:7px;background:#fff;color:#2457e7;padding:0 10px;font-size:10px;font-weight:700}
.team-table-wrap{overflow-x:auto}.team-table{width:100%;min-width:760px;border-collapse:collapse}.team-table th{height:42px;background:#f4f6fb;color:#293d8f;text-align:left;padding:0 8px;font-size:10px}.team-table td{height:68px;border-top:1px solid #edf0f5;padding:7px 8px;color:#394258;font-size:10px}.team-table td>small{display:block;color:#929aaa;font-size:9px;margin-top:3px}.team-member{display:flex;align-items:center;gap:7px}.team-avatar{width:38px;height:38px;border-radius:50%;background:#dbe8ff;color:#2457e7;display:grid;place-items:center;font-weight:800;flex:0 0 38px}.team-avatar.pending{background:#fff2e4;color:#f59e0b}.team-member strong{display:block;color:#2457a8;margin-bottom:3px}.team-member small{font-size:9px;color:#6b7280}
.team-role{display:inline-flex;border-radius:999px;padding:5px 7px;font-size:9px;font-weight:700}.role-owner{background:#eaf2ff;color:#2457e7}.role-member{background:#f1f4fa;color:#2457a8}.team-status{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:5px 7px;font-size:9px;font-weight:700}.team-status i{width:7px;height:7px;border-radius:50%}.team-status.active{background:#eaf7ef;color:#159447}.team-status.active i{background:#16a34a}.team-status.pending{background:#fff7e8;color:#a86a00}.team-status.pending i{background:#f59e0b}
.team-actions{height:30px;border:1px solid #dbe5ff;border-radius:7px;background:#fff;color:#2457e7;padding:0 8px;font-size:9px;font-weight:700}.team-actions span{margin-left:4px}.team-actions.disabled{color:#929aaa;cursor:default}
.team-bottom-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);gap:14px}.team-roles-card,.team-actions-card{min-height:150px}.team-roles{height:92px;display:grid;grid-template-columns:repeat(3,1fr);padding:0 14px 14px}.team-roles>div{display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid #edf0f5;text-align:center}.team-roles>div:last-child{border-right:0}.team-roles>div>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;margin-bottom:5px}.team-roles svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8}.role-owner-icon{background:#eaf2ff;color:#1677ff}.role-manager-icon{background:#fff2e4;color:#f59e0b}.role-staff-icon{background:#eaf7ef;color:#16a34a}.team-roles strong{color:#2457a8;font-size:11px}.team-roles small{color:#394258;font-size:9px;margin-top:3px;max-width:180px}
.team-actions-card .team-card-heading{height:58px}.team-actions-card>div:last-child{height:92px;display:flex;align-items:flex-start;gap:8px;padding:12px 14px}.team-actions-card button,.team-actions-card a{height:38px;border:1px solid #1677ff;border-radius:8px;background:#fff;color:#1677ff;text-decoration:none;display:flex;align-items:center;justify-content:center;padding:0 10px;font-size:10px;font-weight:700}.team-actions-card button.primary{background:#1677ff;color:#fff}

@media (max-width:820px){
    .organizer-team-page{padding:12px!important}.team-banner{height:104px;padding:0 14px;margin-bottom:12px}.team-banner-icon{width:48px;height:48px;margin-right:12px}.team-banner-icon svg{width:38px;height:38px}.team-banner h1{font-size:23px}.team-banner p{font-size:10px}
    .team-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.team-kpis article{height:96px;padding:12px}.team-kpi-icon{width:44px;height:44px;flex-basis:44px;margin-right:10px}.team-kpi-icon svg{width:28px;height:28px}.team-kpis strong{font-size:20px}.team-kpis p{font-size:10px}
    .team-main-grid{grid-template-columns:1fr}.team-members-heading{height:auto;min-height:58px;align-items:flex-start;flex-wrap:wrap;padding:12px}.team-members-heading>div{width:100%;margin-top:10px}.team-members-heading label{flex:1}.team-bottom-grid{grid-template-columns:1fr}.team-roles{height:auto;min-height:150px}.team-actions-card>div:last-child{height:auto;min-height:92px;flex-wrap:wrap}
}

/* Manage Roles & Permissions */
.organizer-roles-page{padding-top:18px!important;background:#f4f7fc!important}
.roles-banner{height:112px;border-radius:12px;background:linear-gradient(105deg,#1c38a7 0%,#2455d8 58%,#3986ef 100%);display:flex;align-items:center;padding:0 24px;margin-bottom:16px;color:#fff;box-shadow:0 4px 14px rgba(31,42,68,.08)}
.roles-banner-icon{width:58px;height:58px;border-radius:12px;background:#fff;color:#2457e7;display:grid;place-items:center;margin-right:16px}.roles-banner-icon svg{width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:1.8}
.roles-banner h1{margin:0 0 7px;font-size:30px;line-height:1}.roles-banner p{margin:0;font-size:13px;color:rgba(255,255,255,.88)}
.roles-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.roles-kpis article{height:106px;border:1px solid #edf0f5;border-radius:11px;background:#fff;display:flex;align-items:center;padding:18px;box-shadow:0 3px 12px rgba(31,42,68,.03)}
.roles-kpi-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;flex:0 0 54px;margin-right:14px}.roles-kpi-icon svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.8}.roles-kpi-icon.blue{background:#eaf2ff;color:#1677ff}.roles-kpi-icon.green{background:#eaf7ef;color:#16a34a}.roles-kpi-icon.purple{background:#f2edff;color:#9b3cff}.roles-kpi-icon.orange{background:#fff2e4;color:#f59e0b}
.roles-kpis strong{display:block;color:#1d2a4f;font-size:23px;line-height:1;margin-bottom:8px}.roles-kpis p{margin:0;color:#2457a8;font-size:12px;font-weight:700}.roles-kpis small{display:block;color:#16a34a;font-size:10px;font-weight:700;margin-top:4px}
.roles-workspace{display:grid;grid-template-columns:300px minmax(0,1fr);gap:14px}.roles-list-card,.roles-permissions-card{border:1px solid #edf0f5;border-radius:11px;background:#fff;box-shadow:0 3px 12px rgba(31,42,68,.03);overflow:hidden}
.roles-list-heading{height:58px;padding:0 14px;border-bottom:1px solid #edf0f5;display:flex;align-items:center}.roles-list-heading>span{width:32px;height:32px;border-radius:8px;background:#edf4ff;color:#1677ff;display:grid;place-items:center;margin-right:9px}.roles-list-heading svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}.roles-list-heading h2{margin:0 0 4px;color:#2457e7;font-size:14px}.roles-list-heading p{margin:0;color:#929aaa;font-size:10px}
.roles-list{padding:10px 12px}.roles-list button{width:100%;min-height:58px;border:1px solid transparent;border-radius:8px;background:#fff;color:#394258;display:flex;align-items:center;text-align:left;padding:7px;margin-bottom:5px;cursor:pointer}.roles-list button.active{border-color:#1677ff;background:#edf4ff}.role-list-icon{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;margin-right:9px}.role-list-icon.blue{background:#eaf2ff;color:#1677ff}.role-list-icon.purple{background:#fff2e4;color:#f59e0b}.role-list-icon.green{background:#eaf7ef;color:#16a34a}.role-list-icon.orange{background:#fff0e1;color:#f97316}.roles-list button>span:nth-child(2){flex:1}.roles-list strong,.roles-list small{display:block}.roles-list strong{color:#2457a8;font-size:11px;margin-bottom:4px}.roles-list small{color:#929aaa;font-size:9px}.roles-list em{border-radius:999px;background:#dbe8ff;color:#2457e7;padding:4px 7px;font-size:9px;font-style:normal;font-weight:700}.roles-list em.select{border:1px solid #dbe5ff;background:#fff}.roles-list button>i{width:18px;height:18px;border-radius:50%;background:#1677ff;color:#fff;display:grid;place-items:center;font-size:9px;font-style:normal;margin-left:-4px}
.roles-permissions-heading{height:58px;padding:0 14px;border-bottom:1px solid #edf0f5;display:flex;align-items:center;justify-content:space-between}.roles-permissions-heading>div:first-child{display:flex;align-items:center}.roles-permissions-heading>div:first-child>span{width:32px;height:32px;border-radius:8px;background:#edf4ff;color:#1677ff;display:grid;place-items:center;margin-right:8px}.roles-permissions-heading svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}.roles-permissions-heading strong{color:#2457a8;font-size:13px}.roles-permissions-heading em{border-radius:999px;background:#1677ff;color:#fff;padding:4px 8px;font-size:9px;font-style:normal;margin-left:8px}
.roles-tabs{display:flex;gap:4px}.roles-tabs button{height:34px;border:0;border-radius:7px;background:#edf2fb;color:#69758a;padding:0 10px;font-size:10px;font-weight:700}.roles-tabs button.active{background:#edf4ff;color:#2457e7}.roles-table-wrap{overflow-x:auto}.roles-table{width:100%;min-width:620px;border-collapse:collapse}.roles-table th{height:42px;background:#edf2fb;color:#293d8f;text-align:center;font-size:10px}.roles-table th:first-child{text-align:left;padding-left:14px}.roles-table td{height:42px;border-top:1px solid #edf0f5;text-align:center;padding:4px 8px}.roles-table td:first-child{text-align:left;color:#2457a8}.permission-icon{width:26px;height:26px;border-radius:7px;background:#edf4ff;color:#1677ff;display:inline-grid;place-items:center;margin-right:7px;font-size:12px}.roles-table td strong{font-size:11px}
.permission-check{display:inline-grid;place-items:center;cursor:pointer}.permission-check input{position:absolute;opacity:0}.permission-check span{width:16px;height:16px;border-radius:3px;border:1px solid #d9e0ea;color:transparent;display:grid;place-items:center;font-size:10px}.permission-check input:checked+span{background:#1677ff;border-color:#1677ff;color:#fff}
.roles-actions{min-height:58px;border-top:1px solid #edf0f5;padding:10px 14px;display:flex;align-items:center}.roles-actions>div{min-height:38px;border-radius:7px;background:#edf4ff;display:flex;align-items:center;color:#2457a8;flex:1;margin-right:8px;padding:6px 10px}.roles-actions>div>i{width:18px;height:18px;border-radius:50%;background:#1677ff;color:#fff;display:grid;place-items:center;font-style:normal;font-size:10px;margin-right:8px}.roles-actions strong,.roles-actions small{display:block}.roles-actions strong{font-size:10px}.roles-actions small{font-size:9px}.roles-actions button{height:38px;border-radius:7px;padding:0 12px;font-size:10px;font-weight:700;margin-left:7px}.roles-actions button.reset{border:1px solid #1677ff;background:#fff;color:#1677ff}.roles-actions button.save{border:0;background:#1677ff;color:#fff}.team-actions-card a.primary{background:#1677ff;color:#fff}

@media (max-width:820px){
    .organizer-roles-page{padding:12px!important}.roles-banner{height:104px;padding:0 14px;margin-bottom:12px}.roles-banner-icon{width:48px;height:48px;margin-right:12px}.roles-banner h1{font-size:23px}.roles-banner p{font-size:10px}.roles-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.roles-kpis article{height:96px;padding:12px}.roles-kpi-icon{width:44px;height:44px;flex-basis:44px;margin-right:10px}.roles-kpis strong{font-size:20px}.roles-kpis p{font-size:10px}
    .roles-workspace{grid-template-columns:1fr}.roles-permissions-heading{height:auto;min-height:58px;align-items:flex-start;flex-wrap:wrap;padding:10px 12px}.roles-tabs{width:100%;margin-top:8px}.roles-tabs button{flex:1;padding:0 5px}.roles-actions{flex-wrap:wrap}.roles-actions>div{width:100%;flex:auto;margin:0 0 8px}.roles-actions button{flex:1;margin-left:0}.roles-actions button.save{margin-left:7px}
}

.admin-support-main{min-width:0;padding:24px!important}.admin-support-banner{min-height:112px;border-radius:12px;background:linear-gradient(135deg,#151d3a,#283a6d);color:#fff;padding:22px 28px;display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.admin-support-banner .eyebrow{color:#aebcf0}.admin-support-banner h1{font-size:28px;margin:3px 0}.admin-support-banner p{color:#cbd5ef;margin:0}.admin-support-live{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;background:rgba(255,255,255,.1);border-radius:999px;padding:9px 12px}.admin-support-live i{width:8px;height:8px;border-radius:50%;background:#4ade80;box-shadow:0 0 0 4px rgba(74,222,128,.12)}
.admin-support-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.admin-support-kpis article{height:82px;border:1px solid #e6ebf4;border-radius:10px;background:#fff;padding:16px 18px}.admin-support-kpis span{display:block;color:#718096;font-size:11px;font-weight:700}.admin-support-kpis strong{display:block;color:#172033;font-size:25px;margin-top:7px}
.admin-support-layout{display:grid;grid-template-columns:minmax(540px,1.55fr) minmax(320px,.8fr);gap:16px;align-items:start}.admin-support-queue,.admin-support-thread{border-radius:10px!important;min-width:0}.admin-support-search{display:grid;grid-template-columns:minmax(180px,1fr) 150px 90px;gap:8px;padding:14px;border-bottom:1px solid #edf0f5}.admin-support-search label span{display:block;color:#69758a;font-size:10px;font-weight:700;margin-bottom:5px}.admin-support-search input,.admin-support-search select,.admin-support-thread-head select{height:38px;border:1px solid #dfe5ef;border-radius:7px;background:#fff;padding:0 10px}.admin-support-search input{width:100%}.admin-support-search select{margin-top:17px}.admin-support-search .btn{height:38px;margin-top:17px;padding:0}
.admin-support-tabs{height:48px;padding:0 14px;display:flex;align-items:center;gap:2px;border-bottom:1px solid #edf0f5}.admin-support-tabs a{height:48px;padding:0 10px;display:flex;align-items:center;color:#69758a;text-decoration:none;font-size:11px;font-weight:700;border-bottom:2px solid transparent}.admin-support-tabs a b{margin-left:4px;border-radius:10px;background:#eef2f7;padding:2px 6px;font-size:9px}.admin-support-tabs a.is-active{color:#2457e7;border-bottom-color:#2457e7}
.admin-support-table-wrap{overflow-x:auto}.admin-support-table{width:100%;min-width:720px;border-collapse:collapse}.admin-support-table th{height:40px;background:#f7f9fc;color:#68738a;font-size:9px;text-transform:uppercase;text-align:left;padding:0 10px}.admin-support-table td{height:68px;border-top:1px solid #edf0f5;padding:8px 10px;font-size:10px;color:#5d687a;cursor:pointer}.admin-support-table tr.is-selected{background:#f4f7ff}.admin-support-table td strong{display:block;color:#263145;font-size:11px;margin-bottom:3px}.admin-support-table td span{display:block;font-size:9px;color:#8a94a5}.admin-support-priority,.admin-support-status{display:inline-block!important;border-radius:999px;padding:5px 8px!important;font-weight:800}.priority-high{background:#fff0f0!important;color:#d94848!important}.priority-medium{background:#fff5df!important;color:#b7791f!important}.priority-low{background:#edf5ff!important;color:#4776b8!important}.status-open{background:#edf4ff!important;color:#2457e7!important}.status-in-progress{background:#fff5df!important;color:#b7791f!important}.status-resolved{background:#eafaf0!important;color:#258b58!important}
.admin-support-pagination{padding:12px 14px}.admin-support-thread{height:640px;overflow:hidden;display:flex;flex-direction:column}.admin-support-thread-head{min-height:94px;border-bottom:1px solid #edf0f5;padding:16px 18px;display:flex;justify-content:space-between;gap:12px}.admin-support-thread-head>div>span{color:#2457e7;font-size:9px;font-weight:800}.admin-support-thread-head h2{font-size:16px;margin:4px 0}.admin-support-thread-head p{font-size:10px;color:#7b8597;margin:0}.admin-support-thread-head select{width:112px;font-size:10px;font-weight:700}.admin-support-messages{flex:1;overflow-y:auto;padding:16px;background:#fafbfd}.admin-support-message{max-width:82%;margin-bottom:12px;border-radius:9px;background:#edf2f7;padding:10px 12px}.admin-support-message.is-support{margin-left:auto;background:#eaf1ff}.admin-support-message div{display:flex;justify-content:space-between;gap:10px;font-size:9px}.admin-support-message div strong{color:#2457a8}.admin-support-message div time{color:#8a94a5}.admin-support-message p{white-space:pre-wrap;margin:7px 0 0;color:#354052;font-size:11px;line-height:1.5}.admin-support-compose{border-top:1px solid #edf0f5;padding:12px;display:flex;gap:8px}.admin-support-compose textarea{flex:1;resize:none;border:1px solid #dfe5ef;border-radius:7px;padding:9px;font-size:11px}.admin-support-compose button{align-self:flex-end;height:38px}.admin-support-empty-thread,.admin-support-empty{text-align:center!important;color:#8a94a5!important}.admin-support-toast{position:fixed;right:24px;bottom:24px;z-index:30;background:#172033;color:#fff;border-radius:8px;padding:12px 16px;font-size:12px}
@media(max-width:1100px){.admin-support-layout{grid-template-columns:1fr}.admin-support-thread{height:520px}}
@media(max-width:700px){.admin-support-main{padding:12px!important}.admin-support-banner{min-height:96px;padding:18px}.admin-support-banner h1{font-size:22px}.admin-support-live{display:none}.admin-support-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-support-search{grid-template-columns:1fr 110px}.admin-support-search .btn{grid-column:1/-1;margin-top:0}.admin-support-tabs{overflow-x:auto}.admin-support-tabs a{white-space:nowrap}.admin-support-thread-head{align-items:flex-start}.admin-support-compose{flex-direction:column}.admin-support-compose button{width:100%}}

/* Shared organizer desktop workspace header */
@media(min-width:761px){
    .organizer-unified-desktop-header{
        min-height:76px!important;
        background:#fff!important;
        border-bottom:1px solid #edf0f5;
    }
    .organizer-unified-desktop-header .organizer-unified-desktop-topbar{
        width:100%;
        min-height:76px;
        padding:0 18px;
        display:flex;
        align-items:center;
        gap:12px;
        box-sizing:border-box;
    }
    .organizer-unified-desktop-header .organizer-unified-mobile-header{
        display:none!important;
    }
    .organizer-unified-desktop-header .brand-logo{
        flex:0 0 150px;
    }
    .organizer-unified-desktop-header .brand-logo img{
        width:150px!important;
        height:58px!important;
    }
    .organizer-unified-desktop-header .organizer-mobile-menu{
        order:1;
        flex:0 0 58px;
        margin:0;
    }
    .organizer-unified-desktop-header .organizer-mobile-menu>summary{
        width:58px!important;
        height:58px!important;
        border-radius:13px!important;
        border:1px solid #dfe5ef!important;
        background:#fff!important;
        display:grid!important;
        place-items:center!important;
        color:#17266f!important;
    }
    .organizer-unified-desktop-header .organizer-dashboard-breadcrumbs{
        order:2;
        height:58px;
        display:flex;
        align-items:center;
        gap:10px;
        white-space:nowrap;
        color:#17266f;
        font-size:15px;
        font-weight:700;
    }
    .organizer-unified-desktop-header .organizer-dashboard-breadcrumbs svg{
        width:20px;height:20px;fill:#e5edff;stroke:#0866f5;stroke-width:1.7;
    }
    .organizer-unified-desktop-header .organizer-dashboard-breadcrumbs > span:not([aria-current="page"]){
        color:#0866f5;text-decoration:none;
    }
    .organizer-unified-desktop-header .organizer-header-search{
        position:relative;
        order:3;
        width:min(270px,18vw);
        height:58px;
        margin-left:auto;
        border:1px solid #dfe5ef;
        border-radius:15px;
        background:#fff;
        display:flex;
        align-items:center;
        gap:9px;
        padding:0 16px;
        box-sizing:border-box;
    }
    .organizer-unified-desktop-header .organizer-header-search svg{
        width:21px;height:21px;fill:none;stroke:#17266f;stroke-width:2;
    }
    .organizer-unified-desktop-header .organizer-header-search input{
        width:100%;min-width:0;border:0;outline:0;color:#17266f;font-size:14px;background:transparent;
    }
    .organizer-unified-desktop-header .organizer-header-search input::placeholder{color:#69758a;}
    .organizer-unified-desktop-header .organizer-header-search-results{
        position:absolute;
        z-index:1100;
        top:calc(100% + 9px);
        left:0;
        width:min(420px,80vw);
        max-height:360px;
        overflow-y:auto;
        border:1px solid #e2e8f2;
        border-radius:12px;
        background:#fff;
        box-shadow:0 16px 38px rgba(23,38,111,.18);
        color:#17266f;
    }
    .organizer-unified-desktop-header .organizer-header-search-results[hidden]{display:none;}
    .organizer-unified-desktop-header .organizer-header-search-status{
        margin:0;
        padding:12px 15px;
        color:#69758a;
        font-size:12px;
    }
    .organizer-unified-desktop-header .organizer-header-search-result-list:not(:empty){
        border-top:1px solid #edf0f5;
    }
    .organizer-unified-desktop-header .organizer-header-search-result{
        display:flex;
        flex-direction:column;
        gap:4px;
        padding:12px 15px;
        color:#17266f;
        text-decoration:none;
    }
    .organizer-unified-desktop-header .organizer-header-search-result:hover,
    .organizer-unified-desktop-header .organizer-header-search-result:focus-visible{
        outline:none;
        background:#f3f7fc;
    }
    .organizer-unified-desktop-header .organizer-header-search-result strong{
        font-size:13px;
        font-weight:700;
    }
    .organizer-unified-desktop-header .organizer-header-search-result .organizer-header-search-result-type{
        align-self:flex-start;
        border-radius:999px;
        background:#edf3ff;
        color:#2457a8;
        padding:3px 7px;
        font-size:9px;
        font-weight:700;
        text-transform:uppercase;
        letter-spacing:.04em;
    }
    .organizer-unified-desktop-header .organizer-header-search-result span{
        color:#69758a;
        font-size:11px;
    }
    .organizer-unified-desktop-header .dashboard-clock{
        order:4;
        position:static!important;
        transform:none!important;
        width:170px;
        height:58px;
        border-radius:15px;
        border:0;
        background:#f3f7fc;
        display:grid;
        grid-template-columns:auto 1fr;
        grid-template-rows:auto auto;
        align-content:center;
        column-gap:10px;
        padding:7px 14px;
        box-sizing:border-box;
        margin:0;
    }
    .organizer-unified-desktop-header .dashboard-clock:before{
        content:"◷";grid-row:1/3;align-self:center;font-size:28px;color:#0866f5;line-height:1;
    }
    .organizer-unified-desktop-header .dashboard-clock>span{
        grid-column:2;color:#17266f;font-size:12px;text-transform:none;letter-spacing:0;text-align:left;
    }
    .organizer-unified-desktop-header .dashboard-clock>time[data-dashboard-clock]{
        grid-column:2;color:#17266f;font-size:13px;text-align:left;letter-spacing:0;
    }
    .organizer-unified-desktop-header .dashboard-clock>time[data-dashboard-clock-date]{display:none;}
    .organizer-unified-desktop-header .site-notifications{order:5;}
    .organizer-unified-desktop-header .site-notification-link{
        width:58px;height:58px;border-radius:50%;border:0;background:#f3f6fb;color:#17266f;
    }
    .organizer-unified-desktop-header .organizer-topbar-account{
        order:6;margin-left:0;
    }
    .organizer-unified-desktop-header .organizer-topbar-account>summary{
        min-height:58px;padding:0 6px;border-radius:14px;gap:7px;
    }
    .organizer-unified-desktop-header .organizer-account-avatar{
        width:44px;height:44px;border:0;background:#0f5ddf;color:#fff;font-size:12px;object-fit:cover;
    }
    .organizer-unified-desktop-header .organizer-account-identity strong{
        max-width:150px;font-size:14px;color:#17266f;
    }
    .organizer-unified-desktop-header .organizer-account-identity small{
        font-size:12px;color:#69758a;
    }
}
@media(min-width:761px) and (max-width:1200px){
    .organizer-unified-desktop-header .organizer-dashboard-breadcrumbs{display:none;}
    .organizer-unified-desktop-header .organizer-header-search{width:220px;}
}
@media(min-width:761px) and (max-width:900px){
    .organizer-unified-desktop-header .organizer-header-search{display:none;}
    .organizer-unified-desktop-header .dashboard-clock{margin-left:auto;}
}
@media(max-width:760px){
    .organizer-unified-desktop-header .organizer-unified-desktop-topbar{display:none!important;}
    .organizer-unified-desktop-header .dashboard-clock{display:none!important;}
}

.event-workspace .organizer-content{gap:14px}
.event-creation-heading{padding:2px 2px 0}
.event-creation-eyebrow{display:inline-flex;align-items:center;margin-bottom:8px;padding:5px 12px;border:1px solid #f5d477;border-radius:999px;background:#fff8df;color:#17266f;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.03em}
.event-creation-heading h1{margin:0;color:#10215f;font-size:30px;line-height:1.15;font-weight:800}
.event-creation-heading p{margin:5px 0 0;color:#67758f;font-size:14px}
.event-create-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,.9fr);align-items:start;gap:16px}
.event-wizard{overflow:hidden;padding:0!important;border:1px solid #e8edf5;border-radius:14px;background:#fff;box-shadow:0 6px 22px rgba(23,38,111,.06)}
.event-create-form{display:flex;min-width:0;flex-direction:column;gap:0}
.event-workspace .event-wizard-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0;padding:14px 16px 0;list-style:none}
.event-wizard-steps li{position:relative;min-width:0}
.event-wizard-steps li:not(:last-child)::after{position:absolute;top:19px;right:0;left:calc(50% + 28px);height:2px;background:#dce4f2;content:""}
.event-wizard-steps li:has(button[data-complete="true"])::after{background:#1767f7}
.event-wizard-steps button{position:relative;z-index:1;display:flex;width:100%;min-height:44px;align-items:center;justify-content:center;gap:8px;padding:4px 5px;border:0;background:transparent;color:#4f5c76;font-size:11px;font-weight:700;white-space:nowrap;cursor:pointer}
.event-wizard-steps button[aria-current="step"]{color:#075cf0}
.event-step-number{display:grid;width:30px;height:30px;flex:0 0 30px;place-items:center;border:1px solid #dce4f2;border-radius:50%;background:#eef2fa;color:#42516d;font-size:12px}
.event-wizard-steps button[aria-current="step"] .event-step-number,.event-wizard-steps button[data-complete="true"] .event-step-number{border-color:#1767f7;background:#1767f7;color:#fff}
.event-wizard-steps button[data-complete="true"] .event-step-number{font-size:0}
.event-wizard-steps button[data-complete="true"] .event-step-number::after{content:"✓";font-size:14px}
.event-wizard-panel{min-width:0;padding:18px 22px 20px}
.event-wizard-panel[hidden]{display:none!important}
.event-step-heading{display:flex;align-items:center;gap:12px;margin:0 0 18px}
.event-step-heading-icon{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;border-radius:10px;background:#eaf2ff;color:#0866f5;font-size:24px;font-weight:800}
.event-step-heading h2{margin:0;color:#10215f;font-size:18px;font-weight:800}
.event-step-heading p{margin:3px 0 0;color:#748098;font-size:12px}
.event-create-form .two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}
.event-create-form .form-field{min-width:0;margin:0;color:#17266f;font-size:12px;font-weight:700}
.event-create-form .form-field-wide{grid-column:1/-1}
.event-create-form .form-field>span{display:block;margin-bottom:6px;color:#17266f;font-size:12px;font-weight:700}
.event-create-form .form-field>span small{color:#78849a;font-weight:500}
.event-create-form .form-field :is(input:not([type=file]),select,textarea){box-sizing:border-box;width:100%;min-height:40px;border:1px solid #dbe3f0;border-radius:9px;background:#fff;padding:9px 11px;color:#172033;font-size:13px;outline:0}
.event-create-form .form-field textarea{min-height:112px;resize:vertical}
.event-create-form .form-field :is(input,select,textarea):focus{border-color:#1677ff;box-shadow:0 0 0 3px rgba(22,119,255,.12)}
.event-create-form .field-error{display:block;margin-top:5px;color:#c62828;font-size:11px}
.event-visibility-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:18px}
.event-visibility-option{display:flex;min-width:0;min-height:72px;align-items:center;gap:9px;padding:10px;border:1px solid #dfe6f2;border-radius:11px;background:#fff;cursor:pointer}
.event-visibility-option:has(input:checked){border-color:#1677ff;background:#f0f6ff;box-shadow:0 0 0 1px #1677ff}
.event-visibility-option input{width:16px;height:16px;flex:0 0 16px;margin:0;accent-color:#1677ff}
.event-visibility-option-icon{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border-radius:9px;background:#edf3ff;color:#1767f7;font-size:20px}
.event-visibility-option strong,.event-visibility-option small{display:block}
.event-visibility-option strong{color:#17266f;font-size:12px}
.event-visibility-option small{margin-top:3px;color:#78849a;font-size:10px;line-height:1.3}
.event-image-upload{position:relative;display:flex;min-height:158px;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1px dashed #9bb9f4;border-radius:11px;background:#fbfdff;color:#17266f;text-align:center;cursor:pointer}
.event-image-upload.is-dragging{border-color:#1677ff;background:#edf5ff;box-shadow:inset 0 0 0 2px rgba(22,119,255,.12)}
.event-image-upload input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%)}
.event-image-upload:focus-within{outline:3px solid rgba(22,119,255,.18);outline-offset:2px}
.event-image-upload-icon{color:#1677ff;font-size:34px;line-height:1}
.event-image-upload strong{font-size:13px}
.event-image-upload>span:not(.event-image-upload-icon){color:#6e7c94;font-size:11px}
.event-image-upload>span b{display:inline-block;border-radius:7px;background:#1677ff;padding:7px 12px;color:#fff}
.event-image-upload small{color:#718096;font-size:10px}
.event-image-upload .field-error{color:#c62828}
.event-gallery-upload{display:grid;gap:10px;margin-top:18px}
.event-gallery-upload h3{margin:0;color:#17266f;font-size:14px}
.event-gallery-upload p{margin:4px 0 0;color:#718096;font-size:11px;line-height:1.5}
.event-gallery-preview{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:8px}
.event-gallery-preview:empty{display:none}
.event-gallery-preview img{display:block;width:100%;aspect-ratio:1;border:1px solid #dce5f8;border-radius:9px;object-fit:cover}
.event-gallery-clear{display:flex;align-items:center;gap:8px;color:#526484;font-size:12px}
.event-gallery-clear input{accent-color:#0759c7}
.event-sponsor-editor{display:grid;gap:12px;margin-top:18px;padding:14px;border:1px solid #dce5f8;border-radius:12px;background:#fbfdff}
.event-sponsor-editor h3{margin:0;color:#17266f;font-size:14px}
.event-sponsor-editor h3 small{color:#78849a;font-size:11px;font-weight:500}
.event-sponsor-editor p{margin:4px 0 0;color:#718096;font-size:11px}
.event-sponsor-form-row{display:grid;grid-template-columns:64px minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;border:1px solid #e1e8f4;border-radius:9px;background:#fff}
.event-sponsor-form-row label{display:grid;gap:5px;color:#42516d;font-size:11px;font-weight:700}
.event-sponsor-form-row input[type=text],.event-sponsor-form-row input[type=file]{min-width:0;width:100%;font-size:11px}
.event-sponsor-form-row .event-sponsor-dropzone{position:relative;min-height:64px;align-content:center;gap:5px;padding:8px;border:1px dashed #9bb9f4;border-radius:8px;background:#fbfdff;cursor:pointer}
.event-sponsor-form-row .event-sponsor-dropzone.is-dragging{border-color:#1677ff;background:#edf5ff;box-shadow:inset 0 0 0 2px rgba(22,119,255,.12)}
.event-sponsor-form-row .event-sponsor-dropzone input[type=file]{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%)}
.event-sponsor-form-row .event-sponsor-dropzone:focus-within{outline:3px solid rgba(22,119,255,.18);outline-offset:2px}
.event-sponsor-dropzone-prompt{overflow:hidden;color:#718096;font-size:10px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}
.event-sponsor-dropzone-prompt strong{color:#1767f7}
.event-sponsor-dropzone-error{color:#b42318;font-size:10px}
.event-sponsor-current-logo{width:60px;height:42px;object-fit:contain}
.event-sponsor-remove{display:flex!important;align-items:center;gap:5px}
.event-sponsor-remove input{margin:0}
.event-draft-notice{display:flex;align-items:center;gap:9px;margin:16px 0 0;padding:11px 13px;border:1px solid #cfe0ff;border-radius:9px;background:#edf5ff;color:#1558bf;font-size:11px;line-height:1.45}
.event-draft-notice>span{flex:0 0 auto;font-size:16px}
.event-review-summary{display:grid;grid-template-columns:minmax(160px,.9fr) minmax(0,1.5fr);gap:18px}
.event-review-image{width:100%;min-height:150px;max-height:230px;border-radius:10px;background:linear-gradient(135deg,#10256e,#1677ff 60%,#86c7ff);object-fit:cover}
.event-review-image[hidden]{display:none}
.event-review-summary dl{display:grid;gap:0;margin:0}
.event-review-summary dl>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px;padding:8px 0;border-bottom:1px solid #edf0f5}
.event-review-summary dt{color:#718096;font-size:11px}
.event-review-summary dd{margin:0;color:#17266f;font-size:12px;font-weight:700;overflow-wrap:anywhere}
.event-wizard-actions{position:sticky;bottom:0;z-index:2;display:flex;align-items:center;gap:10px;padding:12px 16px;border-top:1px solid #edf0f5;background:rgba(255,255,255,.97);backdrop-filter:blur(8px)}
.event-wizard-actions [hidden]{display:none!important}
.event-wizard-actions button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:8px;border:1px solid #c9d8f4;border-radius:9px;background:#fff;padding:0 15px;color:#075cf0;font-size:12px;font-weight:800;cursor:pointer}
.event-wizard-actions .event-action-save{margin-left:auto}
.event-wizard-actions .event-action-next,.event-wizard-actions .event-action-create{min-width:142px;border-color:#075cf0;background:#075cf0;color:#fff}
.event-wizard-actions .event-action-create{margin-left:auto}
.event-live-preview{position:sticky;top:92px;overflow:hidden;border:1px solid #e1e8f4;border-radius:14px;background:#fff;box-shadow:0 6px 22px rgba(23,38,111,.07)}
.event-live-preview>header{display:flex;min-height:42px;align-items:center;justify-content:space-between;gap:8px;background:#10236b;padding:0 13px;color:#fff;font-size:12px;font-weight:800}
.event-preview-live{border-radius:999px;background:#2bd15a;padding:5px 8px;color:#083d1d;font-size:9px;white-space:nowrap}
.event-preview-cover{position:relative;height:160px;overflow:hidden;background:radial-gradient(ellipse at 70% 20%,rgba(47,158,255,.9),transparent 30%),linear-gradient(145deg,#071d59,#0878de 55%,#020b32)}
.event-preview-cover::after{position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(5,14,49,.55));content:""}
.event-preview-cover img{width:100%;height:100%;object-fit:cover}
.event-preview-cover img[hidden]{display:none}
.event-preview-date{position:absolute;z-index:1;bottom:10px;left:14px;display:flex;width:48px;height:52px;flex-direction:column;align-items:center;justify-content:center;border-radius:8px;background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.2);color:#17266f}
.event-preview-date b{font-size:10px;color:#1767f7}
.event-preview-date strong{font-size:22px;line-height:1}
.event-preview-body{padding:14px}
.event-preview-body h2{margin:0;color:#10215f;font-size:19px;line-height:1.2;overflow-wrap:anywhere}
.event-preview-category{margin:5px 0 10px;color:#63718c;font-size:11px}
.event-preview-badges{display:flex;flex-wrap:wrap;gap:7px}
.event-preview-badges span{border-radius:999px;background:#edf3ff;padding:5px 8px;color:#254984;font-size:10px;font-weight:800}
.event-preview-badges span:last-child{background:#e8efff}
.event-preview-description{min-height:38px;margin:12px 0;color:#34425d;font-size:12px;line-height:1.45;overflow-wrap:anywhere}
.event-preview-detail{display:flex;align-items:flex-start;gap:10px;padding:9px 0;border-top:1px solid #edf0f5;color:#1767f7}
.event-preview-detail>span{width:18px;flex:0 0 18px;text-align:center}
.event-preview-detail strong,.event-preview-detail small{display:block}
.event-preview-detail strong{color:#263654;font-size:11px;overflow-wrap:anywhere}
.event-preview-detail small{margin-top:3px;color:#718096;font-size:10px}
.event-preview-powered{display:flex;align-items:center;gap:10px;margin-top:8px;border-radius:10px;background:#edf4ff;padding:10px}
.event-preview-powered>span{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border-radius:50%;background:#20c65a;color:#fff;font-size:20px}
.event-preview-powered strong,.event-preview-powered small{display:block}
.event-preview-powered strong{color:#1255bc;font-size:11px}
.event-preview-powered small{margin-top:3px;color:#718096;font-size:9px}
@media(max-width:1100px){
    .event-create-layout{grid-template-columns:minmax(0,1.4fr) minmax(260px,.8fr);gap:12px}
    .event-visibility-options{grid-template-columns:1fr}
    .event-visibility-option{min-height:58px}
}
@media(max-width:800px){
    body:has(.event-workspace) .organizer-sidebar{display:none}
    body:has(.event-workspace) .event-workspace{display:block;width:100%;margin:0}
    body:has(.event-workspace) .organizer-content{display:block;width:100%;padding:12px!important}
    .event-creation-heading{margin-bottom:14px}
    .event-creation-heading h1{font-size:25px}
    .event-create-layout{grid-template-columns:minmax(0,1fr);gap:14px}
    .event-live-preview{position:static;order:2}
    .event-workspace .event-wizard-steps{overflow:visible;grid-template-columns:repeat(4,minmax(0,1fr))!important;padding:10px 8px 0!important}
    .event-workspace .event-wizard-steps li:not(:last-child)::after{display:none}
    .event-workspace .event-wizard-steps button{min-height:44px;gap:0;padding:4px 2px}
    .event-workspace .event-wizard-steps button>span:not(.event-step-number){display:none}
    .event-workspace .event-wizard-steps button[data-complete="true"] .event-step-number{font-size:12px}
    .event-workspace .event-wizard-steps button[data-complete="true"] .event-step-number::after{content:none}
    .event-wizard-panel{padding:16px 14px}
    .event-create-form .two-col{grid-template-columns:minmax(0,1fr);gap:12px}
    .event-create-form .form-field-wide{grid-column:auto}
    .event-visibility-options{grid-template-columns:1fr}
    .event-sponsor-form-row{grid-template-columns:minmax(0,1fr)}
    .event-review-summary{grid-template-columns:minmax(0,1fr)}
    .event-review-image{max-height:180px}
    .event-wizard-actions{position:sticky;bottom:0;gap:7px;padding:10px}
    .event-wizard-actions button{min-height:40px;padding:0 10px;font-size:11px}
    .event-wizard-actions .event-action-next,.event-wizard-actions .event-action-create{min-width:0;flex:1}
    .event-wizard-actions .event-action-create{margin-left:0}
}
@media(max-width:390px){
    .event-wizard-actions{flex-wrap:wrap}
    .event-wizard-actions .event-action-save{margin-left:auto}
    .event-wizard-actions .event-action-next{order:3;flex:1 0 100%}
}

.event-ticket-inventory,
.event-ticket-category-summary,
.event-inventory-summary-panel {
    min-width: 0;
    border: 1px solid #e1e8f4;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 5px 18px rgba(11, 31, 107, .045);
}
.event-inventory-dashboard [data-event-inventory-panel="inventory"] > .event-inventory-metrics[hidden],
.event-inventory-dashboard [data-event-inventory-panel="inventory"] > .event-inventory-overview[hidden],
.event-inventory-dashboard [data-event-inventory-panel="inventory"] > .event-inventory-lower-grid[hidden]{display:none!important}
.event-ticket-inventory{padding:14px}
.event-ticket-inventory-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}
.event-ticket-inventory-heading h2,.event-inventory-summary-panel h2{margin:0;color:#0b1f6b;font-size:17px;font-weight:800}
.event-ticket-inventory-heading p{margin:3px 0 0;color:#687386;font-size:11px}
.event-ticket-filter{display:flex;flex:0 0 auto;gap:2px;border-radius:999px;background:#edf1f8;padding:3px}
.event-ticket-filter button{min-height:30px;border:0;border-radius:999px;background:transparent;padding:0 12px;color:#33415d;font-family:inherit;font-size:10px;font-weight:700;cursor:pointer}
.event-ticket-filter button[aria-pressed="true"]{background:#0866f5;color:#fff;box-shadow:0 2px 6px rgba(8,102,245,.2)}
.event-ticket-inventory-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.event-ticket-inventory-card{overflow:hidden;min-width:0;border:1px solid #8bb6ff;border-radius:12px;background:linear-gradient(120deg,#f1f6ff,#e6efff)}
.event-ticket-inventory-card.is-physical{border-color:#ffd17a;background:linear-gradient(120deg,#fff8eb,#fff2dc)}
.event-ticket-inventory-card-heading{display:flex;min-height:72px;align-items:center;gap:12px;padding:12px 14px}
.event-ticket-inventory-icon{display:grid;width:44px;height:44px;flex:0 0 44px;place-items:center;border-radius:50%;background:#d7e8ff;color:#0866f5;font-size:24px}
.is-physical .event-ticket-inventory-icon{background:#ffe5ad;color:#e99500}
.event-ticket-inventory-card h3{margin:0;color:#10215f;font-size:14px;font-weight:800}
.event-ticket-inventory-card p{margin:3px 0 0;color:#65728a;font-size:10px}
.event-ticket-inventory-card dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0 10px 10px}
.event-ticket-inventory-card dl>div{display:grid;gap:2px;padding:4px 10px;text-align:center}
.event-ticket-inventory-card dl>div+div{border-left:1px solid rgba(67,100,155,.2)}
.event-ticket-inventory-card dt{color:#64728c;font-size:9px}
.event-ticket-inventory-card dd{order:-1;margin:0;color:#10215f;font-size:16px;font-weight:800}
.event-ticket-inventory-note{margin:8px 0 0;color:#687386;font-size:10px}
.event-ticket-inventory-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.32fr);align-items:start;gap:12px}
.organizer-content .page-card.event-ticket-category-summary,.organizer-content .page-card.event-inventory-summary-panel{padding:14px}
.event-ticket-category-summary .event-inventory-card-heading{align-items:center;margin-bottom:10px}
.event-ticket-category-summary .event-inventory-card-heading h2{font-size:15px}
.event-ticket-category-summary .event-inventory-table-wrap{margin:0}
.event-ticket-category-summary .event-inventory-table{min-width:780px}
.event-ticket-category-summary .event-inventory-table th{height:36px;font-size:10px}
.event-ticket-category-summary .event-inventory-table td{height:44px;font-size:11px}
.event-ticket-category-summary .event-inventory-table tfoot th{background:#f5f7fc;color:#10215f}
.event-inventory-summary-panel{display:grid;gap:12px}
.event-inventory-summary-panel h2{display:flex;align-items:center;gap:7px;font-size:14px}
.event-inventory-summary-chart{display:grid;width:126px;height:126px;place-items:center;justify-self:center;border-radius:50%;background:#edf1f8}
.event-inventory-summary-chart.has-ticket-allocation{background:conic-gradient(#0866f5 0 var(--digital-share),#f5a400 var(--digital-share) 100%)}
.event-inventory-summary-chart>span{display:grid;width:88px;height:88px;align-content:center;justify-items:center;border-radius:50%;background:#fff}
.event-inventory-summary-chart strong{color:#10215f;font-size:21px}
.event-inventory-summary-chart small{color:#687386;font-size:10px}
.event-inventory-summary-legend{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.event-inventory-summary-legend li{display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:6px;color:#263654;font-size:10px}
.event-inventory-summary-legend i{width:8px;height:8px;border-radius:50%;background:#0866f5}
.event-inventory-summary-legend i.is-physical{background:#f5a400}
.event-inventory-summary-legend strong{font-size:9px}
.event-inventory-sales-progress{display:grid;gap:7px;border-radius:9px;background:#edf4ff;padding:10px}
.event-inventory-sales-progress>div{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#10215f;font-size:11px}
.event-inventory-sales-progress>div span{font-weight:800}
.event-inventory-sales-progress progress{width:100%;height:8px;overflow:hidden;border:0;border-radius:99px;background:#d3dff3;accent-color:#0866f5}
.event-inventory-sales-progress progress::-webkit-progress-bar{border-radius:99px;background:#d3dff3}
.event-inventory-sales-progress progress::-webkit-progress-value{border-radius:99px;background:#0866f5}
.event-inventory-sales-progress progress::-moz-progress-bar{border-radius:99px;background:#0866f5}
.event-inventory-sales-progress small{color:#65728a;font-size:9px}
.event-inventory-summary-actions{display:grid;gap:7px}
.event-inventory-summary-actions h3{margin:0 0 2px;color:#10215f;font-size:13px}
.event-inventory-summary-actions a,.event-inventory-summary-actions button{display:flex;min-height:34px;align-items:center;justify-content:center;border:1px solid #1677ff;border-radius:8px;background:#fff;padding:6px 9px;color:#0866f5;font-family:inherit;font-size:10px;font-weight:700;text-align:center;text-decoration:none;cursor:pointer}
.event-inventory-summary-actions a.is-primary{background:#0866f5;color:#fff}
.event-inventory-summary-actions small{color:#687386;font-size:9px;line-height:1.4}
.event-inventory-summary-actions button:disabled{border-color:#d6dbe5;background:#f3f5f8;color:#8a94a6;cursor:not-allowed}
@media(max-width:1050px){
    .event-ticket-inventory-layout{grid-template-columns:minmax(0,1fr) minmax(210px,.55fr)}
}
@media(max-width:760px){
    .event-ticket-inventory-heading{align-items:flex-start;flex-direction:column}
    .event-ticket-inventory-layout{grid-template-columns:minmax(0,1fr)}
    .event-inventory-summary-panel{grid-template-columns:1fr}
    .event-inventory-summary-chart{width:112px;height:112px}
}
@media(max-width:520px){
    .event-ticket-inventory{padding:10px}
    .event-ticket-filter{width:100%;justify-content:space-between}
    .event-ticket-filter button{flex:1;padding:0 7px;font-size:9px}
    .event-ticket-inventory-cards{grid-template-columns:minmax(0,1fr)}
    .event-ticket-inventory-card-heading{min-height:62px;padding:9px 11px}
    .event-ticket-category-summary .event-inventory-card-heading{align-items:flex-start;flex-direction:row}
    .event-inventory-summary-panel{grid-template-columns:minmax(0,1fr)}
}

@media (min-width: 821px) {
    body:has(.organizer-dashboard-workspace) .organizer-workspace.organizer-dashboard-workspace {
        width: calc(100% - 11.25rem);
        max-width: 110rem;
        margin: 0.6rem 1rem 1.5rem 10.25rem;
    }

    body:has(.organizer-dashboard-workspace) .organizer-sidebar {
        width: 9.2rem;
        padding-inline: 0.55rem;
    }

    .organizer-dashboard-workspace .organizer-sidebar nav > a {
        min-height: 2.2rem;
        gap: 0.45rem;
        padding: 0.35rem 0.4rem;
        font-size: 0.64rem;
    }

    .organizer-dashboard-workspace .organizer-sidebar nav > a svg {
        width: 1rem;
        height: 1rem;
    }
}

.organizer-dashboard-content {
    gap: 0.65rem;
}

.organizer-dashboard-toolbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0.65rem;
}

.organizer-dashboard-heading {
    align-items: center;
}

.organizer-dashboard-heading h1 {
    color: #0b1f6b;
    font-size: clamp(1.45rem, 2.5vw, 1.9rem);
    font-weight: 800;
}

.organizer-dashboard-heading p {
    color: #1d3473;
    font-size: 0.85rem;
}

.organizer-dashboard-heading .organizer-create-event {
    min-height: 2.5rem;
    padding: 0.55rem 0.9rem;
    border-radius: 0.45rem;
    background: #1352c5;
    color: #fff;
    font-size: 0.73rem;
    font-weight: 700;
}

.organizer-dashboard-heading .organizer-create-event svg {
    width: 1rem;
    height: 1rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.organizer-dashboard-filters {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    gap: 0.6rem;
    padding: 0.55rem 0.65rem;
    border: 1px solid #dfe7f4;
    border-radius: 0.55rem;
    background: #fff;
    box-shadow: 0 2px 8px rgba(11, 31, 107, 0.035);
}

.organizer-quick-filter {
    align-items: end;
    gap: 0.45rem;
}

.organizer-quick-filter .dashboard-filter-field {
    display: grid;
    width: auto;
    min-width: 8rem;
    gap: 0.2rem;
    color: #263b73;
    font-size: 0.62rem;
    font-weight: 700;
}

.organizer-quick-filter .dashboard-filter-field:first-child {
    min-width: 8.5rem;
}

.organizer-quick-filter .dashboard-filter-field:nth-child(2) {
    min-width: 8rem;
}

.organizer-quick-filter select,
.organizer-custom-range > summary {
    min-height: 2rem;
    padding: 0.35rem 0.55rem;
    border-color: #dce5f4;
    border-radius: 0.4rem;
    color: #14285f;
    font-size: 0.65rem;
}

.organizer-quick-filter .organizer-filter-submit {
    width: auto;
    min-width: 5rem;
    min-height: 2rem;
    gap: 0.3rem;
    padding: 0.35rem 0.6rem;
    border-radius: 0.4rem;
}

.organizer-filter-submit > span {
    display: inline;
}

.organizer-custom-range > summary {
    display: flex;
    align-items: center;
    background: #f7f9fd;
    font-weight: 700;
}

.organizer-custom-range-form {
    z-index: 5;
}

.organizer-kpi-grid {
    gap: 0.55rem;
}

.organizer-kpi {
    min-height: 5.2rem;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 0.65rem;
    padding: 0.65rem 0.75rem;
    border-color: #dfe7f4;
    border-radius: 0.55rem;
    box-shadow: 0 2px 8px rgba(11, 31, 107, 0.035);
}

.organizer-kpi-icon {
    width: 2.8rem;
    height: 2.8rem;
    border-radius: 50%;
    background: #e4efff;
    color: #0866f5;
}

.organizer-kpi-gold .organizer-kpi-icon {
    background: #e6efff;
    color: #0866f5;
}

.organizer-kpi-green .organizer-kpi-icon {
    background: #e4efff;
    color: #0866f5;
}

.organizer-kpi h2 {
    margin-bottom: 0.1rem;
    color: #10215f;
    font-size: 0.72rem;
}

.organizer-kpi > div > strong {
    color: #10215f;
    font-size: 1.05rem;
    white-space: nowrap;
}

.organizer-dashboard-content .organizer-sparkline {
    display: none;
}

.organizer-kpi-trend,
.organizer-kpi-trend small {
    color: #334978;
    font-size: 0.6rem;
}

.organizer-period-caption {
    margin: -0.3rem 0 0;
    color: #596986;
    font-size: 0.58rem;
}

.organizer-primary-charts {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0.55rem;
}

.organizer-primary-charts > .organizer-line-panel {
    grid-column: 1 / -1;
}

.organizer-dashboard-insights {
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 0.8fr) minmax(0, 1.9fr);
    align-items: stretch;
    gap: 0.55rem;
}

.organizer-dashboard-insights .organizer-conversion-panel {
    grid-column: auto;
}

.organizer-dashboard-content .organizer-panel {
    min-width: 0;
    border: 1px solid #dfe7f4;
    border-radius: 0.55rem;
    background: #fff;
    box-shadow: 0 2px 8px rgba(11, 31, 107, 0.035);
}

.organizer-dashboard-content .organizer-panel-heading {
    min-height: 2.1rem;
    padding: 0.45rem 0.65rem;
    border-bottom: 1px solid #edf1f7;
    background: #fff;
    color: #10215f;
}

.organizer-dashboard-content .organizer-panel-heading h2 {
    color: #10215f;
    font-size: 0.7rem;
}

.organizer-dashboard-content .organizer-panel-heading .organizer-panel-title {
    gap: 0.35rem;
}

.organizer-dashboard-content .organizer-panel-heading .organizer-panel-title > svg {
    width: 0.95rem;
    height: 0.95rem;
    color: #0866f5;
}

.organizer-dashboard-content .organizer-panel-heading > a {
    color: #0866f5;
    font-size: 0.58rem;
    font-weight: 700;
    white-space: nowrap;
}

.organizer-dashboard-content .organizer-line-chart {
    padding: 0.25rem 0.55rem 0.35rem;
}

.organizer-dashboard-content .organizer-line-chart svg {
    max-height: 7rem;
}

.organizer-dashboard-content .organizer-chart-axis-labels {
    color: #536587;
    font-size: 0.55rem;
}

.organizer-dashboard-content .organizer-donut-layout {
    grid-template-columns: minmax(4.5rem, 0.9fr) minmax(0, 1fr);
    gap: 0.2rem;
    padding: 0.35rem;
}

.organizer-dashboard-content .organizer-donut {
    width: 100%;
    max-width: 7.5rem;
}

.organizer-dashboard-content .organizer-donut-legend li {
    grid-template-columns: 0.4rem minmax(0, 1fr) auto;
    gap: 0.25rem;
    font-size: 0.56rem;
}

.organizer-dashboard-content .organizer-donut-legend small {
    font-size: 0.5rem;
}

.organizer-dashboard-content .organizer-conversion-panel {
    min-width: 0;
}

.organizer-dashboard-content .organizer-conversion-ring {
    width: min(6.5rem, 75%);
    margin: auto;
    background: conic-gradient(#0866f5 var(--conversion-rate), #dce5f4 0);
}

.organizer-dashboard-content .organizer-conversion-summary {
    margin: 0 0 0.45rem;
    font-size: 0.55rem;
}

.organizer-dashboard-content .organizer-event-panel {
    overflow: hidden;
}

.organizer-dashboard-workspace .organizer-event-table {
    width: 100%;
    min-width: 0;
    table-layout: fixed;
}

.organizer-dashboard-workspace .organizer-event-table th,
.organizer-dashboard-workspace .organizer-event-table td {
    padding: 0.35rem 0.3rem;
    font-size: 0.54rem;
    overflow-wrap: anywhere;
}

.organizer-dashboard-workspace .organizer-event-table th:nth-child(1) { width: 26%; }
.organizer-dashboard-workspace .organizer-event-table th:nth-child(2) { width: 19%; }
.organizer-dashboard-workspace .organizer-event-table th:nth-child(3) { width: 13%; }
.organizer-dashboard-workspace .organizer-event-table th:nth-child(4) { width: 12%; }
.organizer-dashboard-workspace .organizer-event-table th:nth-child(5) { width: 15%; }
.organizer-dashboard-workspace .organizer-event-table th:nth-child(6) { width: 15%; }

.organizer-dashboard-workspace .organizer-event-title {
    min-width: 0;
    gap: 0.25rem;
}

.organizer-dashboard-workspace .organizer-event-title img,
.organizer-dashboard-workspace .organizer-event-thumbnail-fallback {
    width: 1.55rem;
    height: 1.55rem;
}

.organizer-dashboard-workspace .organizer-event-title strong,
.organizer-dashboard-workspace .organizer-event-title small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.organizer-dashboard-workspace .organizer-event-title strong {
    font-size: 0.51rem;
}

.organizer-dashboard-workspace .organizer-row-actions {
    flex-wrap: wrap;
    gap: 0.2rem;
}

.organizer-dashboard-workspace .organizer-row-actions a {
    min-height: 1.35rem;
    padding: 0.15rem 0.3rem;
    border-radius: 0.25rem;
    font-size: 0.49rem;
}

.organizer-dashboard-workspace .organizer-event-table .status-pill {
    padding: 0.12rem 0.25rem;
    font-size: 0.46rem;
    white-space: nowrap;
}

.organizer-dashboard-bottom-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.95fr) minmax(0, 1.2fr);
    align-items: stretch;
    gap: 0.55rem;
}

.organizer-dashboard-bottom-grid > .organizer-panel {
    min-width: 0;
}

.organizer-dashboard-bottom-grid .organizer-financial-cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.25rem;
    padding: 0.45rem;
}

.organizer-dashboard-bottom-grid .organizer-financial-cards article {
    min-width: 0;
    gap: 0.3rem;
    padding: 0.35rem;
    border: 0;
    border-right: 1px solid #edf1f7;
}

.organizer-dashboard-bottom-grid .organizer-financial-cards article:last-child {
    border-right: 0;
}

.organizer-dashboard-bottom-grid .organizer-financial-label {
    gap: 0.2rem;
    font-size: 0.5rem;
}

.organizer-dashboard-bottom-grid .organizer-financial-cards article > strong {
    font-size: 0.68rem;
    overflow-wrap: anywhere;
}

.organizer-dashboard-bottom-grid .organizer-finance-caption {
    margin: 0 0.5rem 0.4rem;
    font-size: 0.48rem;
}

.organizer-dashboard-bottom-grid .organizer-activity-panel .organizer-chart-empty {
    min-height: 5.2rem;
    padding: 0.5rem;
    text-align: center;
}

.organizer-dashboard-bottom-grid .organizer-activity-panel .organizer-chart-empty span {
    font-size: 0.55rem;
}

.organizer-dashboard-key-metrics .organizer-panel-heading {
    min-height: 2.1rem;
}

.organizer-dashboard-content .organizer-dashboard-key-metrics .organizer-summary-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0;
    padding: 0.45rem 0.25rem;
}

.organizer-dashboard-key-metrics .organizer-summary-grid .dashboard-card {
    display: flex;
    min-width: 0;
    min-height: 3.3rem;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 0.15rem;
    padding: 0.2rem 0.3rem;
    border: 0;
    border-right: 1px solid #e6ebf4;
    border-radius: 0;
    background: transparent !important;
    box-shadow: none;
}

.organizer-dashboard-key-metrics .organizer-summary-grid .dashboard-card:last-child {
    border-right: 0;
}

.organizer-dashboard-key-metrics .organizer-summary-icon {
    display: none;
}

.organizer-dashboard-key-metrics .organizer-summary-grid .dashboard-card h3 {
    min-height: 1.5rem;
    align-self: stretch;
    margin: 0;
    color: #354b77;
    font-size: 0.48rem;
    line-height: 1.25;
}

.organizer-dashboard-key-metrics .organizer-summary-grid .dashboard-card > strong {
    color: #10215f;
    font-size: 0.82rem;
}

.organizer-dashboard-key-metrics .organizer-summary-grid .dashboard-card > strong + strong {
    font-size: 0.55rem;
}

@media (max-width: 1100px) and (min-width: 761px) {
    .organizer-dashboard-insights {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }

    .organizer-dashboard-insights > .organizer-event-panel {
        grid-column: 1 / -1;
    }

    .organizer-dashboard-bottom-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .organizer-dashboard-bottom-grid > .organizer-dashboard-key-metrics {
        grid-column: 1 / -1;
    }
}

@media (max-width: 760px) {
    .public-event-sponsors {
        grid-template-columns: minmax(0, 1fr);
        gap: 0.45rem;
        padding: 0.65rem 0.8rem;
    }

    .public-event-sponsors h2 {
        text-align: center;
    }

    .organizer-dashboard-toolbar {
        gap: 0.55rem;
    }

    .organizer-dashboard-heading {
        flex-direction: row;
        align-items: center;
    }

    .organizer-dashboard-heading .organizer-create-event {
        width: auto;
        flex: 0 0 auto;
    }

    .organizer-dashboard-filters {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
    }

    .organizer-quick-filter .dashboard-filter-field {
        min-width: 0;
    }

    .organizer-dashboard-insights,
    .organizer-dashboard-bottom-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-dashboard-insights > .organizer-event-panel,
    .organizer-dashboard-bottom-grid > .organizer-dashboard-key-metrics {
        grid-column: auto;
    }

    .organizer-dashboard-content .organizer-panel-heading p {
        display: none;
    }
}

@media (max-width: 520px) {
    .organizer-dashboard-heading {
        flex-direction: column;
        align-items: stretch;
    }

    .organizer-dashboard-heading .organizer-create-event {
        width: 100%;
        justify-content: center;
    }

    .organizer-dashboard-filters {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-quick-filter {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
    }

    .organizer-quick-filter .dashboard-filter-field:first-child,
    .organizer-quick-filter .dashboard-filter-field:nth-child(2) {
        width: auto;
        min-width: 0;
    }

    .organizer-custom-range {
        width: auto;
    }

    .organizer-dashboard-content .organizer-summary-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .organizer-dashboard-key-metrics .organizer-summary-grid .dashboard-card:nth-child(3n) {
        border-right: 0;
    }

    .organizer-dashboard-content .organizer-kpi > div > strong {
        font-size: 0.92rem;
        white-space: normal;
        overflow-wrap: anywhere;
    }
}

.organizer-analytics-overview-content {
    gap: 0.7rem;
    color: #10215f;
    font-family: var(--vdm-font-family);
}

.organizer-analytics-overview-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    min-width: 0;
}

.organizer-analytics-overview-title {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 0.8rem;
}

.organizer-analytics-overview-icon {
    display: grid;
    width: 3.8rem;
    height: 3.8rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 50%;
    background: #e3efff;
    color: #0866f5;
}

.organizer-analytics-overview-icon svg {
    width: 1.8rem;
    height: 1.8rem;
}

.organizer-analytics-overview-title h1 {
    margin: 0;
    color: #0b1f6b;
    font-size: clamp(1.45rem, 2.4vw, 2rem);
    font-weight: 800;
    letter-spacing: -0.035em;
    line-height: 1.15;
}

.organizer-analytics-overview-title p {
    margin: 0.25rem 0 0;
    color: #263b73;
    font-size: 0.78rem;
}

.organizer-analytics-overview-filters {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.45rem;
}

.organizer-analytics-overview-filters .form-field {
    min-width: 0;
    margin: 0;
}

.organizer-analytics-overview-filters select,
.organizer-analytics-overview-filters input {
    min-height: 2.3rem;
    padding: 0.4rem 0.55rem;
    border: 1px solid #d6e2f5;
    border-radius: 0.45rem;
    background: #fff;
    color: #14285f;
    font-size: 0.66rem;
}

.organizer-analytics-overview-filters select[name="event_id"] {
    max-width: 10rem;
}

.organizer-analytics-overview-filters select[name="period"] {
    max-width: 9.5rem;
}

.organizer-analytics-overview-filters .analytics-custom-date {
    display: grid;
    gap: 0.15rem;
    color: #354b77;
    font-size: 0.55rem;
}

.organizer-analytics-download {
    display: inline-flex;
    min-height: 2.3rem;
    align-items: center;
    gap: 0.35rem;
    padding: 0.45rem 0.7rem;
    border-radius: 0.45rem;
    background: #1352c5;
    color: #fff;
    font-size: 0.65rem;
    font-weight: 700;
    white-space: nowrap;
}

.organizer-analytics-download:hover,
.organizer-analytics-download:focus-visible {
    background: #0b46ad;
    color: #fff;
}

.organizer-analytics-download svg {
    width: 1rem;
    height: 1rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.organizer-analytics-kpis {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.55rem;
}

.organizer-analytics-kpi {
    display: grid;
    min-width: 0;
    min-height: 5.2rem;
    grid-template-columns: 3.1rem minmax(0, 1fr);
    align-items: center;
    gap: 0.6rem;
    padding: 0.6rem 0.7rem;
    border: 1px solid #dce6f6;
    border-radius: 0.55rem;
    background: #fff;
    box-shadow: 0 2px 8px rgba(11, 31, 107, 0.035);
}

.organizer-analytics-kpi-icon {
    display: grid;
    width: 3rem;
    height: 3rem;
    place-items: center;
    border-radius: 50%;
    background: #e7f0ff;
    color: #0866f5;
}

.organizer-analytics-kpi-icon svg {
    width: 1.55rem;
    height: 1.55rem;
}

.organizer-analytics-kpi h2 {
    margin: 0 0 0.12rem;
    color: #10215f;
    font-size: 0.65rem;
    font-weight: 700;
}

.organizer-analytics-kpi strong {
    display: block;
    color: #10215f;
    font-size: 1.05rem;
    font-weight: 800;
    line-height: 1.15;
}

.organizer-analytics-kpi .organizer-analytics-currency {
    font-size: 0.82rem;
    white-space: nowrap;
}

.organizer-analytics-kpi small {
    display: block;
    margin-top: 0.15rem;
    color: #586b8d;
    font-size: 0.55rem;
}

.organizer-analytics-main-grid,
.organizer-analytics-secondary-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.85fr) minmax(17rem, 1fr);
    gap: 0.55rem;
    align-items: stretch;
}

.organizer-analytics-secondary-grid {
    grid-template-columns: minmax(0, 1.55fr) minmax(17rem, 0.9fr);
}

.organizer-analytics-panel {
    min-width: 0;
    overflow: hidden;
    border: 1px solid #dce6f6;
    border-radius: 0.55rem;
    background: #fff;
    box-shadow: 0 2px 8px rgba(11, 31, 107, 0.035);
}

.organizer-analytics-panel-heading {
    display: flex;
    min-height: 2.35rem;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    padding: 0.45rem 0.65rem;
    border-bottom: 1px solid #e8eef8;
}

.organizer-analytics-heading-title {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 0.4rem;
}

.organizer-analytics-heading-title svg {
    width: 1rem;
    height: 1rem;
    flex: 0 0 auto;
    color: #0866f5;
}

.organizer-analytics-heading-title h2 {
    margin: 0;
    color: #0b1f6b;
    font-size: 0.75rem;
    font-weight: 800;
}

.organizer-analytics-panel-heading > a {
    color: #0866f5;
    font-size: 0.6rem;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
}

.organizer-analytics-chart {
    padding: 0.35rem 0.6rem 0.45rem;
}

.organizer-analytics-chart svg {
    display: block;
    width: 100%;
    height: 9.5rem;
    overflow: visible;
}

.organizer-analytics-chart svg polyline {
    fill: none;
    stroke: var(--series-color);
    stroke-width: 3;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.organizer-analytics-gridline {
    stroke: #e6edf8;
    stroke-width: 1;
}

.organizer-analytics-axis-labels {
    display: flex;
    justify-content: space-between;
    color: #506284;
    font-size: 0.57rem;
}

.organizer-analytics-chart-note {
    margin: 0.25rem 0 0;
    color: #73809a;
    font-size: 0.5rem;
    text-align: right;
}

.organizer-analytics-legend {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.organizer-analytics-legend li {
    display: inline-flex;
    align-items: center;
    gap: 0.2rem;
    color: #31466f;
    font-size: 0.52rem;
}

.organizer-analytics-legend i,
.organizer-analytics-donut-legend i {
    width: 0.48rem;
    height: 0.48rem;
    flex: 0 0 auto;
    border-radius: 50%;
    background: var(--series-color);
}

.organizer-analytics-donut-layout {
    display: grid;
    min-height: 9.5rem;
    grid-template-columns: minmax(8rem, 1.1fr) minmax(0, 1fr);
    align-items: center;
    gap: 0.55rem;
    padding: 0.55rem 0.75rem;
}

.organizer-analytics-donut {
    display: grid;
    width: min(8.8rem, 100%);
    aspect-ratio: 1;
    place-items: center;
    justify-self: center;
    border-radius: 50%;
    background: var(--analytics-donut, #e8eef8);
}

.organizer-analytics-donut > div {
    display: grid;
    width: 68%;
    aspect-ratio: 1;
    align-content: center;
    justify-items: center;
    border-radius: 50%;
    background: #fff;
}

.organizer-analytics-donut strong {
    color: #10215f;
    font-size: 1.25rem;
    font-weight: 800;
}

.organizer-analytics-donut span {
    color: #344a76;
    font-size: 0.58rem;
    font-weight: 700;
}

.organizer-analytics-donut-legend {
    display: grid;
    gap: 0.55rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.organizer-analytics-donut-legend li {
    display: grid;
    grid-template-columns: 0.55rem minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.35rem;
    color: #263b69;
    font-size: 0.61rem;
}

.organizer-analytics-donut-legend strong {
    color: #10215f;
    font-size: 0.6rem;
}

.organizer-analytics-table-wrap {
    width: 100%;
    overflow-x: auto;
}

.organizer-analytics-table {
    width: 100%;
    border-collapse: collapse;
    color: #10215f;
    font-size: 0.6rem;
}

.organizer-analytics-table th,
.organizer-analytics-table td {
    padding: 0.42rem 0.48rem;
    border-bottom: 1px solid #e7edf7;
    text-align: left;
    vertical-align: middle;
}

.organizer-analytics-table thead th {
    background: #f0f5ff;
    color: #10215f;
    font-size: 0.56rem;
    font-weight: 800;
    white-space: nowrap;
}

.organizer-analytics-table tbody tr:last-child td {
    border-bottom: 0;
}

.organizer-analytics-event-name {
    display: flex;
    min-width: 7rem;
    align-items: center;
    gap: 0.35rem;
}

.organizer-analytics-event-name img,
.organizer-analytics-event-fallback {
    display: grid;
    width: 1.7rem;
    height: 1.7rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 0.3rem;
    background: #e7f0ff;
    color: #0866f5;
    font-size: 0.5rem;
    object-fit: cover;
}

.organizer-analytics-event-name strong {
    overflow: hidden;
    font-size: 0.58rem;
    text-overflow: ellipsis;
}

.organizer-analytics-table-currency {
    display: block;
    white-space: nowrap;
}

.organizer-analytics-view-link {
    display: inline-flex;
    min-height: 1.5rem;
    align-items: center;
    justify-content: center;
    padding: 0.2rem 0.45rem;
    border: 1px solid #83b3ff;
    border-radius: 0.35rem;
    color: #0759c7;
    font-size: 0.55rem;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
}

.organizer-analytics-reports .organizer-analytics-table {
    min-width: 39rem;
}

.organizer-analytics-empty,
.organizer-analytics-empty-cell {
    padding: 1.2rem 0.75rem;
    color: #667792;
    font-size: 0.65rem;
    text-align: center;
}

@media (max-width: 1000px) {
    .organizer-analytics-overview-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .organizer-analytics-overview-filters {
        width: 100%;
        justify-content: flex-start;
        flex-wrap: wrap;
    }

    .organizer-analytics-kpi .organizer-analytics-currency {
        font-size: 0.72rem;
        white-space: normal;
    }
}

@media (max-width: 760px) {
    .organizer-analytics-kpis {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .organizer-analytics-main-grid,
    .organizer-analytics-secondary-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-analytics-overview-filters {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .organizer-analytics-overview-filters .form-field,
    .organizer-analytics-overview-filters select,
    .organizer-analytics-overview-filters input,
    .organizer-analytics-download {
        width: 100%;
        max-width: 100% !important;
    }
}

@media (max-width: 480px) {
    .organizer-analytics-overview-title {
        align-items: flex-start;
        gap: 0.55rem;
    }

    .organizer-analytics-overview-icon {
        width: 2.9rem;
        height: 2.9rem;
    }

    .organizer-analytics-overview-icon svg {
        width: 1.4rem;
        height: 1.4rem;
    }

    .organizer-analytics-overview-title h1 {
        font-size: 1.35rem;
    }

    .organizer-analytics-overview-title p {
        font-size: 0.65rem;
    }

    .organizer-analytics-kpi {
        min-height: 4.7rem;
        grid-template-columns: 2.2rem minmax(0, 1fr);
        gap: 0.35rem;
        padding: 0.45rem;
    }

    .organizer-analytics-kpi-icon {
        width: 2.15rem;
        height: 2.15rem;
    }

    .organizer-analytics-kpi-icon svg {
        width: 1.15rem;
        height: 1.15rem;
    }

    .organizer-analytics-kpi h2 {
        font-size: 0.56rem;
    }

    .organizer-analytics-kpi strong {
        font-size: 0.92rem;
    }

    .organizer-analytics-kpi .organizer-analytics-currency {
        font-size: 0.62rem;
        overflow-wrap: anywhere;
    }

    .organizer-analytics-kpi small {
        font-size: 0.48rem;
    }

    .organizer-analytics-panel-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .organizer-analytics-trend .organizer-analytics-panel-heading {
        align-items: flex-start;
    }

    .organizer-analytics-trend .organizer-analytics-legend {
        justify-content: flex-start;
    }

    .organizer-analytics-chart svg {
        height: 8rem;
    }

    .organizer-analytics-donut-layout {
        grid-template-columns: minmax(7rem, 0.9fr) minmax(0, 1fr);
    }
}

@media print {
    .organizer-analytics-overview .organizer-sidebar,
    .organizer-analytics-overview-header .organizer-analytics-overview-filters,
    .site-header {
        display: none !important;
    }

    .organizer-analytics-overview,
    .organizer-analytics-overview-content {
        width: 100% !important;
        margin: 0 !important;
    }

    .organizer-analytics-panel,
    .organizer-analytics-kpi {
        break-inside: avoid;
        box-shadow: none;
    }
}

.organizer-wallet-content {
    gap: 0.65rem;
    color: #10215f;
    font-family: var(--vdm-font-family);
}

.organizer-wallet-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.8rem;
}

.organizer-wallet-title {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 0.8rem;
}

.organizer-wallet-title-icon {
    display: grid;
    width: 3.8rem;
    height: 3.8rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 50%;
    background: #dceaff;
    color: #0866f5;
}

.organizer-wallet-title-icon svg {
    width: 1.9rem;
    height: 1.9rem;
}

.organizer-wallet-title h1 {
    margin: 0;
    color: #0b1f6b;
    font-size: clamp(1.45rem, 2.4vw, 2rem);
    font-weight: 800;
    letter-spacing: -0.035em;
    line-height: 1.15;
}

.organizer-wallet-title p {
    margin: 0.25rem 0 0;
    color: #263b73;
    font-size: 0.78rem;
}

.organizer-wallet-manual-badge {
    flex: 0 0 auto;
    padding: 0.45rem 0.7rem;
    border: 1px solid #b9d1ff;
    border-radius: 999px;
    background: #eff5ff;
    color: #1252bd;
    font-size: 0.63rem;
    font-weight: 700;
}

.organizer-wallet-hero {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(12rem, 1.35fr) 1px minmax(9rem, 0.85fr) minmax(8rem, 0.75fr) auto;
    align-items: center;
    gap: 0.85rem;
    padding: 1.1rem 1.25rem;
    border: 1px solid #123887;
    border-radius: 0.75rem;
    background: linear-gradient(112deg, #071b58 0%, #0c3584 68%, #0849b8 100%);
    color: #fff;
    box-shadow: 0 0.45rem 1.2rem rgba(9, 42, 116, 0.16);
}

.organizer-wallet-hero-total,
.organizer-wallet-hero-stat > div {
    display: grid;
    min-width: 0;
    gap: 0.2rem;
}

.organizer-wallet-hero-total > span,
.organizer-wallet-hero-stat small {
    color: #e2ebff;
    font-size: 0.63rem;
    font-weight: 600;
}

.organizer-wallet-hero-total strong,
.organizer-wallet-hero-stat strong {
    display: block;
    color: #fff;
    font-size: clamp(1rem, 1.7vw, 1.55rem);
    font-weight: 800;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.organizer-wallet-hero-total small {
    color: #c8d8fa;
    font-size: 0.54rem;
}

.organizer-wallet-hero-separator {
    width: 1px;
    height: 4.1rem;
    background: rgba(215, 229, 255, 0.45);
}

.organizer-wallet-hero-stat {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 0.5rem;
    padding: 0.7rem;
    border: 1px solid rgba(201, 220, 255, 0.16);
    border-radius: 0.55rem;
    background: rgba(255, 255, 255, 0.08);
}

.organizer-wallet-stat-icon {
    display: grid;
    width: 2.7rem;
    height: 2.7rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.16);
    color: #fff;
}

.organizer-wallet-stat-icon svg {
    width: 1.5rem;
    height: 1.5rem;
}

.organizer-wallet-pending-icon {
    background: rgba(255, 255, 255, 0.12);
}

.organizer-wallet-primary-action {
    display: inline-flex;
    min-height: 2.85rem;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    padding: 0.65rem 0.85rem;
    border: 0;
    border-radius: 0.55rem;
    background: #0866f5;
    color: #fff;
    font: inherit;
    font-size: 0.68rem;
    font-weight: 800;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
}

.organizer-wallet-primary-action:hover,
.organizer-wallet-primary-action:focus-visible {
    background: #0053d6;
    color: #fff;
}

.organizer-wallet-primary-action svg {
    width: 1.1rem;
    height: 1.1rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.organizer-wallet-kpis {
    display: grid;
    grid-template-columns: minmax(10rem, 0.8fr) minmax(10rem, 0.8fr) minmax(18rem, 1.8fr);
    gap: 0.55rem;
    align-items: stretch;
}

.organizer-wallet-kpi {
    display: grid;
    min-width: 0;
    min-height: 7rem;
    grid-template-columns: 2.8rem minmax(0, 1fr);
    align-items: center;
    gap: 0.55rem;
    padding: 0.8rem;
    border: 1px solid #dce6f6;
    border-radius: 0.6rem;
    background: #fff;
    box-shadow: 0 2px 8px rgba(11, 31, 107, 0.035);
}

.organizer-wallet-kpi-icon {
    display: grid;
    width: 2.65rem;
    height: 2.65rem;
    place-items: center;
    border-radius: 50%;
    background: #e7f0ff;
    color: #0866f5;
}

.organizer-wallet-kpi-icon svg {
    width: 1.4rem;
    height: 1.4rem;
}

.organizer-wallet-kpi-green {
    background: #e5f7ee;
    color: #138b51;
}

.organizer-wallet-kpi h2 {
    margin: 0 0 0.2rem;
    color: #10215f;
    font-size: 0.66rem;
    font-weight: 700;
}

.organizer-wallet-kpi strong {
    display: block;
    color: #0b1f6b;
    font-size: 0.95rem;
    font-weight: 800;
    overflow-wrap: anywhere;
}

.organizer-wallet-kpi small {
    display: block;
    margin-top: 0.22rem;
    color: #657693;
    font-size: 0.52rem;
}

.organizer-wallet-panel {
    min-width: 0;
    overflow: hidden;
    border: 1px solid #dce6f6;
    border-radius: 0.6rem;
    background: #fff;
    box-shadow: 0 2px 8px rgba(11, 31, 107, 0.035);
}

.organizer-wallet-panel-heading {
    display: flex;
    min-height: 2.5rem;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    padding: 0.5rem 0.7rem;
    border-bottom: 1px solid #e8eef8;
}

.organizer-wallet-panel-heading > div {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 0.4rem;
}

.organizer-wallet-panel-heading > div > svg {
    width: 1.05rem;
    height: 1.05rem;
    flex: 0 0 auto;
    color: #0866f5;
}

.organizer-wallet-panel-heading h2 {
    margin: 0;
    color: #0b1f6b;
    font-size: 0.74rem;
    font-weight: 800;
}

.organizer-wallet-panel-heading > a {
    color: #0866f5;
    font-size: 0.59rem;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
}

.organizer-wallet-activity {
    display: flex;
    flex-direction: column;
}

.organizer-wallet-activity .organizer-wallet-panel-heading {
    flex: 0 0 auto;
}

.organizer-wallet-chart {
    min-height: 0;
    padding: 0.3rem 0.65rem 0.45rem;
}

.organizer-wallet-chart svg {
    display: block;
    width: 100%;
    height: 5.4rem;
}

.organizer-wallet-chart svg line {
    stroke: #e7edf8;
    stroke-width: 1;
}

.organizer-wallet-chart svg polyline {
    fill: none;
    stroke: var(--wallet-series-color);
    stroke-width: 3;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.organizer-wallet-chart-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    color: #455978;
    font-size: 0.53rem;
}

.organizer-wallet-chart-legend span {
    display: inline-flex;
    align-items: center;
    gap: 0.22rem;
}

.organizer-wallet-chart-legend i {
    width: 0.45rem;
    height: 0.45rem;
    border-radius: 50%;
    background: var(--wallet-series-color);
}

.organizer-wallet-chart-axis {
    display: flex;
    justify-content: space-between;
    margin-top: 0.3rem;
    color: #62728d;
    font-size: 0.5rem;
}

.organizer-wallet-empty {
    margin: 1.6rem 0;
    color: #667792;
    font-size: 0.63rem;
    text-align: center;
}

.organizer-wallet-quick-actions,
.organizer-wallet-transactions,
.organizer-wallet-request {
    margin-top: 0.05rem;
}

.organizer-wallet-actions-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.55rem;
    padding: 0.55rem;
}

.organizer-wallet-actions-grid a {
    display: grid;
    min-width: 0;
    min-height: 3.9rem;
    grid-template-columns: 2rem minmax(0, 1fr);
    align-content: center;
    align-items: center;
    column-gap: 0.55rem;
    padding: 0.45rem 0.65rem;
    border: 1px solid #a9c7ff;
    border-radius: 0.5rem;
    color: #0b1f6b;
    text-decoration: none;
}

.organizer-wallet-actions-grid a:hover,
.organizer-wallet-actions-grid a:focus-visible {
    background: #f2f7ff;
}

.organizer-wallet-actions-grid a > span {
    display: grid;
    width: 1.8rem;
    height: 1.8rem;
    grid-row: span 2;
    place-items: center;
    color: #0866f5;
}

.organizer-wallet-actions-grid svg {
    width: 1.45rem;
    height: 1.45rem;
}

.organizer-wallet-actions-grid strong {
    font-size: 0.65rem;
    font-weight: 800;
}

.organizer-wallet-actions-grid small {
    color: #5a6c8c;
    font-size: 0.52rem;
}

.organizer-wallet-table-wrap {
    width: 100%;
    overflow-x: auto;
}

.organizer-wallet-table {
    width: 100%;
    min-width: 47rem;
    border-collapse: collapse;
    color: #10215f;
    font-size: 0.59rem;
}

.organizer-wallet-table th,
.organizer-wallet-table td {
    padding: 0.43rem 0.5rem;
    border-bottom: 1px solid #e7edf7;
    text-align: left;
    white-space: nowrap;
}

.organizer-wallet-table th {
    background: #f0f5ff;
    color: #112662;
    font-size: 0.56rem;
    font-weight: 800;
}

.organizer-wallet-table tbody tr:last-child td {
    border-bottom: 0;
}

.organizer-wallet-positive {
    color: #168a4e;
    font-weight: 800;
}

.organizer-wallet-negative {
    color: #d93030;
    font-weight: 800;
}

.organizer-wallet-status {
    display: inline-flex;
    padding: 0.18rem 0.42rem;
    border: 1px solid #b5c5df;
    border-radius: 999px;
    background: #f5f7fa;
    color: #405270;
    font-size: 0.52rem;
    font-weight: 700;
}

.organizer-wallet-status.is-complete {
    border-color: #9cddba;
    background: #e8f8ef;
    color: #137744;
}

.organizer-wallet-status.is-rejected {
    border-color: #f0b5b5;
    background: #fff0f0;
    color: #a32626;
}

.organizer-wallet-empty-cell {
    padding: 1.25rem;
    color: #667792;
    text-align: center !important;
}

.organizer-wallet-request-body {
    display: grid;
    grid-template-columns: minmax(13rem, 0.9fr) minmax(17rem, 1.1fr);
    gap: 1rem;
    padding: 0.75rem;
}

.organizer-wallet-request-body > div > p {
    margin: 0 0 0.65rem;
    color: #526586;
    font-size: 0.64rem;
    line-height: 1.6;
}

.organizer-wallet-encryption-note {
    display: flex;
    align-items: flex-start;
    gap: 0.35rem;
    color: #1854aa !important;
}

.organizer-wallet-encryption-note svg {
    width: 1rem;
    height: 1rem;
    flex: 0 0 auto;
}

.organizer-wallet-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.55rem;
}

.organizer-wallet-form label,
.organizer-wallet-provider-field,
.organizer-wallet-admin-actions label {
    display: grid;
    min-width: 0;
    gap: 0.22rem;
    color: #263b69;
    font-size: 0.58rem;
    font-weight: 700;
}

.organizer-wallet-form input,
.organizer-wallet-form select,
.organizer-wallet-form textarea,
.organizer-wallet-admin-actions input,
.organizer-wallet-admin-filter select {
    width: 100%;
    min-width: 0;
    min-height: 2.2rem;
    padding: 0.45rem 0.55rem;
    border: 1px solid #d3def0;
    border-radius: 0.4rem;
    background: #fff;
    color: #12285d;
    font: inherit;
    font-size: 0.64rem;
}

.organizer-wallet-form textarea {
    resize: vertical;
}

.organizer-wallet-provider-field {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

.organizer-wallet-provider-field[hidden] {
    display: none;
}

.organizer-wallet-phone-field[hidden] {
    display: none;
}

.organizer-wallet-account-field[hidden] {
    display: none;
}

.organizer-wallet-bank-field[hidden] {
    display: none;
}

.organizer-wallet-bank-field {
    grid-column: 1 / -1;
}

.organizer-wallet-bank-options {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 8.5rem), 1fr));
    gap: 0.5rem;
}

.organizer-wallet-bank-option {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr);
    min-width: 0 !important;
    min-height: 3.8rem;
    align-items: center;
    gap: 0.45rem !important;
    padding: 0.4rem;
    border: 1px solid #d3def0;
    border-radius: 0.4rem;
    background: #fff;
    cursor: pointer;
}

.organizer-wallet-bank-option:has(input:checked) {
    border-color: #0866f5;
    background: #eff5ff;
}

.organizer-wallet-bank-option input {
    flex: 0 0 auto;
    width: 1rem !important;
    min-height: 1rem !important;
    height: 1rem;
    margin: 0 0 0 0.2rem;
    accent-color: #0866f5;
}

.organizer-wallet-bank-option img {
    display: block;
    width: 100%;
    max-width: none;
    height: 3rem;
    object-fit: contain;
    object-position: center;
}

.organizer-wallet-provider-field legend {
    margin-bottom: 0.22rem;
    color: #263b69;
    font-size: 0.58rem;
    font-weight: 700;
}

.organizer-wallet-provider-options {
    display: flex;
    gap: 0.4rem;
}

.organizer-wallet-provider-option {
    display: inline-flex !important;
    min-height: 3.35rem;
    min-width: 3.35rem !important;
    grid-template-columns: auto 1fr;
    align-items: center;
    justify-content: flex-start;
    gap: 0.4rem !important;
    padding: 0.25rem;
    border: 1px solid #d3def0;
    border-radius: 0.4rem;
    background: #fff;
    color: #12285d !important;
    font-size: 0.64rem !important;
    cursor: pointer;
}

.organizer-wallet-provider-option:has(input:checked) {
    border-color: #0866f5;
    background: #eff5ff;
    color: #0759c7 !important;
}

.organizer-wallet-provider-option input {
    width: 1rem !important;
    min-height: 1rem !important;
    height: 1rem;
    margin: 0 0 0 0.2rem;
    accent-color: #0866f5;
}

.organizer-wallet-provider-option img {
    display: block;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 0.45rem;
    object-fit: cover;
}

.organizer-wallet-details-field {
    grid-column: 1 / -1;
}

.organizer-wallet-form .organizer-wallet-primary-action {
    justify-self: start;
}

.organizer-wallet-field-error {
    color: #b42318;
    font-size: 0.55rem;
}

.organizer-wallet-no-balance {
    align-self: center;
    color: #657693;
    font-size: 0.65rem;
}

.organizer-wallet-security {
    display: grid;
    grid-template-columns: 2.5rem minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.55rem;
    padding: 0.65rem 0.75rem;
    border: 1px solid #c9dcff;
    border-radius: 0.6rem;
    background: #eef4ff;
}

.organizer-wallet-security > span {
    display: grid;
    width: 2.35rem;
    height: 2.35rem;
    place-items: center;
    border-radius: 50%;
    background: #0866f5;
    color: #fff;
}

.organizer-wallet-security > span svg {
    width: 1.4rem;
    height: 1.4rem;
}

.organizer-wallet-security strong {
    color: #0b1f6b;
    font-size: 0.65rem;
}

.organizer-wallet-security p {
    margin: 0.15rem 0 0;
    color: #31466f;
    font-size: 0.55rem;
    line-height: 1.5;
}

.organizer-wallet-security > a {
    color: #0759c7;
    font-size: 0.58rem;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
}

.organizer-wallet-notice {
    padding: 0.6rem 0.75rem;
    border: 1px solid #a9d8bd;
    border-radius: 0.5rem;
    background: #eaf8ef;
    color: #17643b;
    font-size: 0.65rem;
}

.organizer-wallet-admin-error {
    border-color: #efb8b5;
    background: #fff1f0;
    color: #9c2b24;
}

.organizer-wallet-admin-error ul {
    margin: 0.35rem 0 0;
    padding-left: 1.1rem;
}

.organizer-wallet-admin-filter {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    margin: 0 0 0.8rem;
    color: #33466b;
    font-size: 0.72rem;
}

.organizer-wallet-admin-filter span {
    margin-left: auto;
    color: #687792;
}

.organizer-wallet-admin-card {
    margin: 0 0 0.75rem;
}

.organizer-wallet-admin-heading {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

.organizer-wallet-admin-heading > div {
    display: grid;
    gap: 0.2rem;
}

.organizer-wallet-admin-heading > div:last-child {
    text-align: right;
}

.organizer-wallet-admin-heading strong {
    color: #112662;
    font-size: 0.9rem;
}

.organizer-wallet-admin-heading span {
    color: #60708a;
    font-size: 0.65rem;
    overflow-wrap: anywhere;
}

.organizer-wallet-admin-details {
    display: grid;
    gap: 0.5rem;
    margin: 0.8rem 0;
}

.organizer-wallet-admin-details div {
    display: grid;
    grid-template-columns: minmax(9rem, 0.4fr) minmax(0, 1fr);
    gap: 0.6rem;
}

.organizer-wallet-admin-details dt {
    color: #687792;
    font-size: 0.65rem;
    font-weight: 700;
}

.organizer-wallet-admin-details dd {
    margin: 0;
    color: #1b2f5c;
    font-size: 0.68rem;
    overflow-wrap: anywhere;
    white-space: pre-wrap;
}

.organizer-wallet-admin-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
    padding-top: 0.7rem;
    border-top: 1px solid #e7edf7;
}

.organizer-wallet-admin-actions form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: end;
    gap: 0.45rem;
}

.organizer-wallet-admin-actions button {
    justify-self: start;
}

@media (max-width: 1100px) {
    .organizer-wallet-hero {
        grid-template-columns: minmax(0, 1.2fr) minmax(8rem, 0.8fr) minmax(8rem, 0.8fr);
    }

    .organizer-wallet-hero-separator {
        display: none;
    }

    .organizer-wallet-primary-action {
        grid-column: 1 / -1;
        justify-self: start;
    }

    .organizer-wallet-kpis {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .organizer-wallet-activity {
        grid-column: 1 / -1;
    }
}

@media (max-width: 760px) {
    .organizer-wallet-header {
        align-items: flex-start;
    }

    .organizer-wallet-hero {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.6rem;
        padding: 0.85rem;
    }

    .organizer-wallet-hero-total {
        grid-column: 1 / -1;
        padding-bottom: 0.55rem;
        border-bottom: 1px solid rgba(215, 229, 255, 0.3);
    }

    .organizer-wallet-hero-total strong {
        font-size: 1.2rem;
    }

    .organizer-wallet-hero-stat {
        padding: 0.45rem;
    }

    .organizer-wallet-stat-icon {
        width: 2.1rem;
        height: 2.1rem;
    }

    .organizer-wallet-stat-icon svg {
        width: 1.15rem;
        height: 1.15rem;
    }

    .organizer-wallet-hero-stat strong {
        font-size: 0.85rem;
    }

    .organizer-wallet-hero-stat small {
        font-size: 0.53rem;
    }

    .organizer-wallet-primary-action {
        grid-column: 1 / -1;
        width: 100%;
    }

    .organizer-wallet-kpis {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .organizer-wallet-kpi {
        grid-template-columns: 2.2rem minmax(0, 1fr);
        gap: 0.35rem;
        padding: 0.55rem;
    }

    .organizer-wallet-kpi-icon {
        width: 2.1rem;
        height: 2.1rem;
    }

    .organizer-wallet-kpi-icon svg {
        width: 1.15rem;
        height: 1.15rem;
    }

    .organizer-wallet-actions-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-wallet-request-body {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-wallet-security {
        grid-template-columns: 2.2rem minmax(0, 1fr);
    }

    .organizer-wallet-security > span {
        width: 2rem;
        height: 2rem;
    }

    .organizer-wallet-security > a {
        grid-column: 2;
    }
}

@media (max-width: 480px) {
    .organizer-wallet-title {
        align-items: flex-start;
        gap: 0.5rem;
    }

    .organizer-wallet-title-icon {
        width: 2.8rem;
        height: 2.8rem;
    }

    .organizer-wallet-title-icon svg {
        width: 1.4rem;
        height: 1.4rem;
    }

    .organizer-wallet-title h1 {
        font-size: 1.35rem;
    }

    .organizer-wallet-title p {
        font-size: 0.63rem;
    }

    .organizer-wallet-manual-badge {
        padding: 0.35rem 0.48rem;
        font-size: 0.52rem;
    }

    .organizer-wallet-kpi {
        min-height: 5.2rem;
    }

    .organizer-wallet-kpi h2 {
        font-size: 0.55rem;
    }

    .organizer-wallet-kpi strong {
        font-size: 0.75rem;
    }

    .organizer-wallet-kpi small {
        font-size: 0.47rem;
    }

    .organizer-wallet-panel-heading {
        align-items: flex-start;
    }

    .organizer-wallet-panel-heading h2 {
        font-size: 0.67rem;
    }

    .organizer-wallet-form {
        grid-template-columns: minmax(0, 1fr);
    }

    .organizer-wallet-details-field {
        grid-column: auto;
    }

    .organizer-wallet-form .organizer-wallet-primary-action {
        width: 100%;
    }

    .organizer-wallet-admin-filter {
        flex-wrap: wrap;
    }

    .organizer-wallet-admin-filter span {
        width: 100%;
        margin-left: 0;
    }

    .organizer-wallet-admin-heading,
    .organizer-wallet-admin-actions {
        grid-template-columns: minmax(0, 1fr);
        flex-direction: column;
    }

    .organizer-wallet-admin-heading > div:last-child {
        text-align: left;
    }

    .organizer-wallet-admin-details div,
    .organizer-wallet-admin-actions form {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media print {
    .organizer-wallet-overview .organizer-sidebar,
    .organizer-wallet-header,
    .organizer-wallet-quick-actions,
    .organizer-wallet-request,
    .organizer-wallet-security {
        display: none !important;
    }

    .organizer-wallet-overview,
    .organizer-wallet-content {
        width: 100% !important;
        margin: 0 !important;
    }

    .organizer-wallet-panel,
    .organizer-wallet-kpi {
        break-inside: avoid;
        box-shadow: none;
    }
}

body:has(.home-page) .site-header {
    background: rgba(5, 23, 83, 0.98);
    border-bottom-color: rgba(255, 255, 255, 0.2);
}

body:has(.home-page) .site-header .nav-shell,
.home-page .container {
    width: min(1920px, calc(100% - clamp(2rem, 4vw, 5rem)));
    max-width: none;
}

body:has(.home-page) .site-header .nav-shell {
    min-height: 64px;
}

body:has(.home-page) .site-header .brand-logo img {
    width: 126px;
    height: 54px;
    object-fit: contain;
}

.home-page .main-nav {
    gap: clamp(1rem, 2.2vw, 2.2rem);
    font-size: 0.9rem;
}

.home-page .hero-section {
    position: relative;
    overflow: hidden;
    padding: 1rem 0 1.5rem;
    background:
        linear-gradient(90deg, rgba(4, 17, 69, 0.96) 0%, rgba(5, 27, 96, 0.78) 48%, rgba(5, 24, 83, 0.9) 100%),
        url('https://images.unsplash.com/photo-1492684223066-81342ee5ff30?auto=format&fit=crop&w=2200&q=85') center 43% / cover,
        #071c69;
}

.home-page .hero-grid {
    grid-template-columns: minmax(260px, 0.75fr) minmax(0, 1.25fr);
    gap: clamp(1.5rem, 4vw, 4rem);
    min-height: 226px;
}

.home-page .hero-copy {
    position: relative;
    z-index: 1;
    max-width: 700px;
}

.home-page .hero-copy .eyebrow {
    padding: 0.34rem 0.72rem;
    border-color: var(--vdm-gold);
    background: rgba(5, 23, 83, 0.72);
    color: var(--vdm-gold);
    font-size: 0.72rem;
    letter-spacing: 0;
}

.home-page .hero-copy h1 {
    margin: 0.45rem 0 0.55rem;
    font-size: clamp(2.1rem, 3.8vw, 3.3rem);
    line-height: 1.02;
}

.home-page .hero-copy h1 span {
    display: block;
    color: var(--vdm-gold);
}

.home-page .hero-copy p {
    max-width: 490px;
    margin: 0 0 1rem;
    color: #eef3ff;
    font-size: 0.95rem;
    line-height: 1.4;
}

.home-page .hero-explore-link,
.home-page .hero-listing .btn {
    min-height: 38px;
    padding: 0.55rem 1.1rem;
    border-radius: 999px;
    background: var(--vdm-gold);
    color: #071c69;
    box-shadow: none;
    font-size: 0.82rem;
}

.home-page .hero-explore-link:hover,
.home-page .hero-listing .btn:hover {
    background: #ffd13b;
}

.home-page .hero-card {
    position: relative;
    display: flex;
    min-height: 226px;
    align-items: flex-end;
    border: 1px solid rgba(255, 255, 255, 0.58);
    border-radius: 16px;
    background: #102b82;
    box-shadow: 0 16px 38px rgba(0, 0, 0, 0.24);
}

.home-page .hero-event-carousel,
.home-page .hero-event-slides {
    min-width: 0;
}

.home-page .hero-event-carousel {
    position: relative;
    width: min(100%, 660px);
    justify-self: end;
}

.home-page .hero-event-slides {
    position: relative;
    overflow: hidden;
    border-radius: 26px;
}

.home-page .home-event-card {
    display: grid;
    min-height: 0;
    aspect-ratio: 1.8 / 1;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: stretch;
    overflow: hidden;
    border: 1px solid #e0e6f2;
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 16px 38px rgba(0, 0, 0, 0.18);
}

.home-page .home-event-card::after {
    display: none;
}

.home-page .home-event-art {
    position: relative;
    z-index: 1;
    min-width: 0;
    overflow: hidden;
    background: #ffbf00;
    clip-path: ellipse(100% 130% at 0% 50%);
}

.home-page .home-event-art-image,
.home-page .home-event-art-placeholder {
    position: absolute;
    inset: 0 10px 10px 0;
    width: calc(100% - 10px);
    height: calc(100% - 10px);
    clip-path: ellipse(100% 130% at 0% 50%);
}

.home-page .home-event-art-image {
    object-fit: cover;
    object-position: center;
}

.home-page .home-event-art-placeholder {
    display: grid;
    place-items: center;
    background:
        radial-gradient(circle at 75% 30%, rgba(244, 180, 0, 0.3), transparent 28%),
        linear-gradient(135deg, #0b1f6b, #123a9a);
    color: #fff;
    text-align: center;
}

.home-page .home-event-art-placeholder span {
    padding: 0.5rem 0.8rem;
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 999px;
    background: rgba(11, 31, 107, 0.5);
    font-weight: 800;
}

.home-page .home-event-date {
    position: absolute;
    top: clamp(0.45rem, 1vw, 0.75rem);
    left: clamp(0.45rem, 1vw, 0.75rem);
    display: grid;
    min-width: clamp(38px, 4.8vw, 56px);
    overflow: hidden;
    border-radius: 9px;
    background: #0b1f6b;
    color: #fff;
    text-align: center;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.24);
}

.home-page .home-event-date span:first-child {
    padding: 0.2rem 0.24rem 0.14rem;
    background: #ffbf00;
    color: #0b1f6b;
    font-size: clamp(0.5rem, 0.7vw, 0.62rem);
    font-weight: 800;
}

.home-page .home-event-date strong {
    font-size: clamp(1.12rem, 2.4vw, 1.8rem);
    line-height: 1.1;
}

.home-page .home-event-date span:last-child {
    padding: 0 0.2rem 0.22rem;
    font-size: clamp(0.44rem, 0.62vw, 0.56rem);
    font-weight: 700;
}

.home-page .home-event-details {
    position: relative;
    z-index: 2;
    display: flex;
    min-width: 0;
    flex-direction: column;
    justify-content: center;
    gap: clamp(0.35rem, 0.7vw, 0.6rem);
    padding: clamp(0.75rem, 1.5vw, 1.2rem);
    color: #0b1f6b;
}

.home-page .home-event-favorite {
    position: absolute;
    top: clamp(0.7rem, 1.8vw, 1.35rem);
    right: clamp(0.7rem, 1.8vw, 1.35rem);
    display: grid;
    width: clamp(23px, 3.5vw, 40px);
    height: clamp(23px, 3.5vw, 40px);
    place-items: center;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #6a7184;
    cursor: pointer;
    text-decoration: none;
    transition: color .18s ease, transform .18s ease;
}

.home-page .home-event-favorite svg {
    width: 100%;
    height: 100%;
}

.home-page .home-event-favorite:hover,
.home-page .home-event-favorite:focus-visible {
    color: #e43e64;
    transform: scale(1.08);
}

.home-page .home-event-favorite:focus-visible {
    outline: 3px solid rgba(22, 103, 247, .45);
    outline-offset: 3px;
}

.home-page .home-event-favorite.is-saved {
    color: #e43e64;
}

.home-page .home-event-favorite.is-saved path {
    fill: currentColor;
}

.home-page .home-event-favorite:disabled {
    cursor: wait;
    opacity: .65;
}

.home-page .home-event-save-status:not(:empty) {
    position: absolute;
    top: clamp(2.5rem, 5vw, 3.5rem);
    right: clamp(0.7rem, 1.8vw, 1.35rem);
    max-width: 70%;
    color: #a3213e;
    font-size: .72rem;
    text-align: right;
}

.home-page .home-event-category {
    display: inline-flex;
    max-width: calc(100% - 2.5rem);
    min-height: 30px;
    align-items: center;
    align-self: flex-start;
    gap: 0.5rem;
    overflow: hidden;
    padding: 0.25rem 0.65rem;
    border-radius: 999px;
    background: #e4edff;
    color: #0b1f6b;
    font-size: clamp(0.68rem, 1.1vw, 0.95rem);
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home-page .home-event-category span {
    font-size: 1.25em;
}

.home-page .home-event-details h2 {
    display: -webkit-box;
    overflow: hidden;
    margin: 0;
    color: #081b59;
    font-size: clamp(1.1rem, 2.3vw, 2rem);
    font-weight: 800;
    letter-spacing: -0.045em;
    line-height: 1.02;
    overflow-wrap: anywhere;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.home-page .home-event-description {
    display: -webkit-box;
    overflow: hidden;
    margin: 0;
    color: #4b536b;
    font-size: clamp(0.65rem, 1vw, 0.95rem);
    line-height: 1.3;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.home-page .home-event-facts {
    display: grid;
    gap: clamp(0.3rem, 0.6vw, 0.5rem);
    margin-top: 0.1rem;
}

.home-page .home-event-facts p {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
    color: #101f55;
    font-size: clamp(0.66rem, 1.15vw, 1rem);
    line-height: 1.25;
}

.home-page .home-event-facts svg {
    width: clamp(18px, 2vw, 24px);
    height: clamp(18px, 2vw, 24px);
    flex: 0 0 auto;
}

.home-page .home-event-facts p span {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.home-page .home-event-card-footer {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 0.55rem;
    margin-top: auto;
    padding-top: clamp(0.4rem, 0.8vw, 0.65rem);
    border-top: 1px solid #dfe5f1;
}

.home-page .home-event-price {
    display: flex;
    min-width: 0;
    flex-direction: column;
    color: #0b1f6b;
}

.home-page .home-event-price strong {
    overflow: hidden;
    font-size: clamp(0.8rem, 1.4vw, 1.3rem);
    font-weight: 800;
    letter-spacing: -0.03em;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home-page .home-event-price span {
    font-size: clamp(0.65rem, 1.3vw, 1rem);
}

.home-page .home-event-ticket-button {
    display: inline-flex;
    min-height: clamp(36px, 3.2vw, 44px);
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    padding: 0.55rem clamp(0.55rem, 1.4vw, 1rem);
    border-radius: 999px;
    background: #ffbf00;
    color: #0b1f6b;
    font-size: clamp(0.68rem, 0.9vw, 0.82rem);
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}

.home-page .home-event-ticket-button:hover {
    background: #ffd13b;
}

.home-page .home-event-ticket-button:focus-visible {
    outline: 3px solid #0b1f6b;
    outline-offset: 3px;
}

.home-page .home-event-slide[hidden] {
    display: none;
}

.home-page .home-event-slide.is-entering {
    position: relative;
    z-index: 1;
    animation: home-event-slide-in-from-top 500ms ease-out both;
}

.home-page .home-event-slide.is-exiting {
    position: absolute;
    z-index: 2;
    inset: 0;
    width: 100%;
    height: 100%;
    animation: home-event-slide-out-left 500ms ease-in both;
}

@keyframes home-event-slide-in-from-top {
    from {
        opacity: 0;
        transform: translateY(-100%);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes home-event-slide-out-left {
    from {
        opacity: 1;
        transform: translateX(0);
    }

    to {
        opacity: 0;
        transform: translateX(-100%);
    }
}

@media (prefers-reduced-motion: reduce) {
    .home-page .home-event-slide.is-entering,
    .home-page .home-event-slide.is-exiting {
        animation: none;
    }
}

.home-page .hero-card::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(3, 14, 53, 0.94), rgba(3, 14, 53, 0.6) 52%, rgba(3, 14, 53, 0.04));
    content: "";
}

.home-page .hero-card .hero-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    border-radius: inherit;
    object-fit: cover;
}

.home-page .hero-card .hero-listing {
    position: relative;
    z-index: 1;
    width: min(75%, 360px);
    gap: 0.5rem;
    padding: 1rem;
}

.home-page .hero-listing .tag {
    padding: 0.3rem 0.6rem;
    border: 0;
    background: var(--vdm-gold);
    color: #071c69;
    font-size: 0.64rem;
}

.home-page .hero-listing h2 {
    font-size: clamp(1.2rem, 2vw, 1.6rem);
}

.home-page .hero-listing .hero-event-meta {
    gap: 0.28rem;
    color: #fff;
    font-size: 0.76rem;
}

.home-page .hero-listing .hero-event-meta span span {
    margin-right: 0.2rem;
    color: var(--vdm-gold);
}

.home-page .featured-event-empty .hero-listing {
    width: 100%;
}

.home-page .home-search-section {
    position: relative;
    z-index: 2;
    margin-top: -1.3rem;
    padding: 0;
    background: transparent;
}

.home-page .home-search-section .search-box {
    display: grid;
    width: max(calc(100% - 660px), calc(37.5% + clamp(15px, 2.5vw, 40px)));
    grid-template-columns: minmax(190px, 1.6fr) minmax(120px, 0.7fr) minmax(125px, 0.72fr) auto;
    gap: 0;
    min-height: 50px;
    margin: 0;
    padding: 0.32rem;
    border: 1px solid #dfe7fb;
    border-radius: 999px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(9, 36, 105, 0.17);
}

.home-page .home-search-section .search-box input,
.home-page .home-search-section .search-box select {
    min-width: 0;
    min-height: 40px;
    padding: 0 1rem;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #10214b;
    font-size: 0.78rem;
}

.home-page .home-search-section .search-box input + input,
.home-page .home-search-section .search-box select {
    border-left: 1px solid #dce4f2;
}

.home-page .home-search-section .search-box .btn {
    display: inline-flex;
    min-height: 40px;
    min-width: 168px;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    padding: 0.55rem 1.35rem;
    border-radius: 999px;
    background: #0759ed;
    color: #fff;
    font-size: 0.88rem;
    font-weight: 700;
    white-space: nowrap;
}

@media (max-width: 1000px) and (min-width: 761px) {
    .home-page .home-search-section .search-box {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        border-radius: 18px;
    }

    .home-page .home-search-section .search-box input + input,
    .home-page .home-search-section .search-box select {
        border-left: 0;
    }

    .home-page .home-search-section .search-box select {
        border-top: 1px solid #dce4f2;
    }

    .home-page .home-search-section .search-box .btn {
        grid-column: 1 / -1;
    }
}

.home-page > .section:not(.home-search-section):not(.home-trending-section) {
    padding: 0.4rem 0;
    background: #f7f9ff;
}

.home-page .home-category-strip {
    overflow: hidden;
}

.home-page .home-category-track {
    display: flex;
    width: max-content;
    animation: home-category-scroll 36s linear infinite;
}

.home-page .home-category-track-group {
    display: flex;
    flex: 0 0 auto;
    gap: 0.45rem;
    padding-right: 0.45rem;
}

.home-page .home-category-strip:hover .home-category-track,
.home-page .home-category-strip:focus-within .home-category-track {
    animation-play-state: paused;
}

.home-page .home-category-link {
    display: flex;
    min-width: 132px;
    min-height: 62px;
    align-items: center;
    justify-content: center;
    gap: 0.55rem;
    padding: 0.55rem 0.65rem;
    border: 1px solid #dbe5fb;
    border-radius: 12px;
    background: #eef3ff;
    color: #10214b;
    font-size: 0.77rem;
    font-weight: 700;
    text-align: center;
    transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.home-page .home-category-link:hover,
.home-page .home-category-link:focus-visible {
    border-color: #0759ed;
    color: #0759ed;
}

.home-page .home-category-link.is-active {
    border-color: #0759ed;
    background: #0759ed;
    color: #fff;
}

.home-page .home-category-icon {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    object-fit: contain;
}

@keyframes home-category-scroll {
    to {
        transform: translateX(-50%);
    }
}

@media (prefers-reduced-motion: reduce) {
    .home-page .home-category-strip {
        overflow-x: auto;
    }

    .home-page .home-category-track {
        animation: none;
    }
}

.home-page .home-trending-section {
    padding: 0.35rem 0 0.55rem;
    background: #f7f9ff;
}

.home-page .home-trending-section .section-header {
    align-items: center;
    margin-bottom: 0.55rem;
}

.home-page .home-trending-section .section-header .eyebrow {
    display: none;
}

.home-page .home-trending-section .section-header > div:first-child {
    width: 100%;
}

.home-page .home-trending-section .section-header h2 {
    margin: 0;
    padding-left: 0.65rem;
    border-left: 5px solid var(--vdm-gold);
    color: #10214b;
    font-size: clamp(1.25rem, 2.2vw, 1.65rem);
    letter-spacing: -0.04em;
}

.home-page .home-trending-section .link-text {
    color: #0759ed;
    font-size: 0.78rem;
}

.home-page .home-trending-section .event-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.9rem;
}

.home-page .home-trending-section .event-card {
    position: relative;
    display: flex;
    min-width: 0;
    flex-direction: column;
    border: 1px solid #d7e1f8;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 8px 20px rgba(9, 36, 105, 0.1);
}

.home-page .home-trending-section .premium-event-card {
    --premium-event-image-height: clamp(110px, 11vw, 150px);
}

.home-page .home-trending-section .event-card .event-image {
    width: 100%;
    height: var(--premium-event-image-height);
    flex: 0 0 auto;
    object-fit: cover;
}

.event-card-actions {
    display: contents;
}

@media (min-width: 761px) {
    .home-page .home-trending-section .event-card {
        aspect-ratio: 1;
        overflow: hidden;
    }

    .home-page .home-trending-section .premium-event-card {
        --premium-event-image-height: 58%;
    }

    .home-page .home-trending-section .event-card .event-image {
        height: var(--premium-event-image-height);
        flex-basis: 58%;
    }

    .home-page .home-trending-section .event-body {
        min-height: 0;
        padding: 0.75rem 0.95rem 0.9rem;
    }

    .home-page .home-trending-section .event-card-actions {
        display: flex;
        width: 100%;
        min-width: 0;
        align-items: center;
        justify-content: space-between;
        gap: 0.65rem;
        margin-top: auto;
    }

    .home-page .home-trending-section .event-card .event-date-badge {
        top: 0.75rem;
        right: 0.75rem;
        width: 58px;
        border-radius: 11px;
    }

    .home-page .home-trending-section .event-card-actions .event-organizer-name {
        min-width: 0;
        flex: 1 1 auto;
        margin: 0;
        font-size: 0.64rem;
        font-weight: 700;
    }

    .home-page .home-trending-section .event-card-actions > .event-ticket-link {
        display: inline-flex;
        min-height: 46px;
        min-width: 148px;
        align-items: center;
        justify-content: center;
        align-self: flex-end;
        gap: 0.4rem;
        flex: 0 0 auto;
        margin: 0;
        padding: 0.6rem 0.9rem;
        border-radius: 10px;
        background: #ffbf00;
        color: #10214b;
        font-size: 0.88rem;
        font-weight: 800;
        text-decoration: none;
        transition: background-color 160ms ease, transform 160ms ease;
    }

    .home-page .home-trending-section .event-card-actions > .event-ticket-link:hover {
        background: #ffd13b;
        transform: translateY(-1px);
    }

    .home-page .home-trending-section .event-card-actions > .event-ticket-link:focus-visible {
        outline: 3px solid #0759ed;
        outline-offset: 2px;
    }
}

.home-page .home-trending-section .event-body {
    display: flex;
    min-width: 0;
    flex: 1;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.35rem;
    padding: 0.65rem 0.75rem 0.8rem;
}

.home-page .home-trending-section .event-body .meta-tag {
    position: absolute;
    top: 0.45rem;
    left: 0.5rem;
    max-width: calc(100% - 1rem);
    overflow: hidden;
    padding: 0.22rem 0.48rem;
    border: 0;
    background: #0766f5;
    color: #fff;
    font-size: 0.58rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home-page .home-trending-section .event-body h3 {
    display: -webkit-box;
    overflow: hidden;
    margin: 0;
    color: #10214b;
    font-size: clamp(0.95rem, 1.15vw, 1.15rem);
    font-weight: 800;
    letter-spacing: -0.02em;
    line-height: 1.2;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.home-page .home-trending-section .event-body p:not(.event-organizer-name),
.home-page .home-trending-section .event-body .btn {
    display: none;
}

.home-page .home-trending-section .event-meta {
    display: grid;
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.35rem;
    margin: 0.15rem 0 0;
    padding: 0;
    border: 0;
    color: #33476f;
    font-size: 0.7rem;
}

.home-page .home-trending-section .event-meta li {
    min-width: 0;
    overflow: hidden;
    max-width: 100%;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home-page .home-trending-section .event-meta li:first-child {
    grid-column: 1 / -1;
    color: #10214b;
    font-size: 0.85rem;
    font-weight: 800;
}

.home-page .home-trending-section .event-meta li:nth-child(2),
.home-page .home-trending-section .event-meta li:nth-child(3) {
    padding: 0.3rem 0.45rem;
    border-radius: 6px;
    background: #f0f4fc;
    font-size: 0.66rem;
}

.home-page .home-trending-section .event-organizer-name {
    margin: 0;
    color: #10214b;
    font-size: 0.64rem;
    font-weight: 800;
}

.home-page .home-trending-section .event-ticket-link {
    align-self: flex-end;
    margin-top: auto;
    min-height: 42px;
    min-width: 128px;
    padding: 0.55rem 0.75rem;
    border-radius: 9px;
    background: #ffbf00;
    color: #10214b;
    font-size: 0.78rem;
    font-weight: 800;
}

.home-page .home-app-banner {
    position: relative;
    overflow: hidden;
    padding: 0.7rem 0;
    border-top: 3px solid var(--vdm-gold);
    border-radius: 22px 22px 0 0;
    background: linear-gradient(105deg, #082987, #06195f 72%, #071348);
    color: #fff;
}

.home-page .home-app-banner-inner {
    display: flex;
    min-height: 70px;
    align-items: center;
    gap: 1rem;
}

.home-page .home-app-icon {
    width: 56px;
    height: 56px;
    flex: 0 0 auto;
    border: 2px solid rgba(255, 191, 0, 0.8);
    border-radius: 14px;
    object-fit: cover;
}

.home-page .home-app-copy {
    min-width: 190px;
    flex: 1;
}

.home-page .home-app-copy h2 {
    margin: 0;
    color: #fff;
    font-size: 1rem;
}

.home-page .home-app-copy p {
    margin: 0.12rem 0 0;
    color: #dce7ff;
    font-size: 0.72rem;
}

.home-page .home-app-cta {
    display: inline-flex;
    min-height: 40px;
    align-items: center;
    gap: 0.55rem;
    padding: 0.55rem 1.15rem;
    border-radius: 999px;
    background: var(--vdm-gold);
    color: #071c69;
    font-size: 0.78rem;
    font-weight: 800;
    white-space: nowrap;
}

.home-page .home-app-benefits {
    display: flex;
    align-items: center;
    gap: 1.1rem;
    margin: 0;
    padding: 0 0 0 1rem;
    border-left: 1px solid rgba(255, 255, 255, 0.45);
    list-style: none;
    color: #f3f6ff;
    font-size: 0.7rem;
    white-space: nowrap;
}

.home-page .home-app-benefits li {
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.home-page .home-app-benefits li img {
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    object-fit: contain;
}

@media (max-width: 1000px) {
    .home-page .home-app-benefits {
        gap: 0.7rem;
        font-size: 0.64rem;
    }
}

@media (max-width: 760px) {
    .home-page .hero-section {
        padding: 1.4rem 0 2rem;
    }

    .home-page .hero-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 1rem;
    }

    .home-page .hero-event-carousel {
        width: 100%;
    }

    .home-page .hero-card {
        min-height: 200px;
    }

    .home-page .home-event-card {
        min-height: 270px;
        aspect-ratio: auto;
        grid-template-columns: minmax(0, 0.78fr) minmax(0, 1.22fr);
        border-radius: 20px;
    }

    .home-page .hero-event-slides {
        border-radius: 20px;
    }

    .home-page .home-event-details {
        gap: 0.55rem;
        padding: 0.85rem 0.7rem 0.8rem;
    }

    .home-page .home-event-category {
        min-height: 29px;
        gap: 0.3rem;
        padding: 0.3rem 0.55rem;
        font-size: 0.68rem;
    }

    .home-page .home-event-details h2 {
        font-size: clamp(1.05rem, 5vw, 1.5rem);
    }

    .home-page .home-event-description {
        font-size: 0.68rem;
    }

    .home-page .home-event-facts p {
        gap: 0.35rem;
        font-size: 0.68rem;
    }

    .home-page .home-event-facts svg {
        width: 18px;
        height: 18px;
    }

    .home-page .home-event-card-footer {
        flex-wrap: wrap;
        gap: 0.35rem;
        padding-top: 0.55rem;
    }

    .home-page .home-event-price strong {
        font-size: 0.85rem;
    }

    .home-page .home-event-price span {
        font-size: 0.65rem;
    }

    .home-page .home-event-ticket-button {
        min-height: 38px;
        gap: 0.3rem;
        padding: 0.45rem 0.65rem;
        font-size: 0.68rem;
    }

    .home-page .home-event-ticket-button svg {
        width: 17px;
        height: 17px;
    }

    .home-page .home-search-section .search-box {
        width: 100%;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        border-radius: 18px;
    }

    .home-page .home-search-section .search-box input + input,
    .home-page .home-search-section .search-box select {
        border-left: 0;
    }

    .home-page .home-search-section .search-box select {
        border-top: 1px solid #dce4f2;
    }

    .home-page .home-search-section .search-box .btn {
        grid-column: 1 / -1;
    }

    .home-page .home-trending-section .event-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-page .home-app-banner-inner {
        flex-wrap: wrap;
    }

    .home-page .home-app-copy {
        flex: 1 1 calc(100% - 80px);
    }

    .home-page .home-app-cta {
        margin-left: 72px;
    }

    .home-page .home-app-benefits {
        flex: 1 1 100%;
        justify-content: space-between;
        margin-left: 72px;
        padding: 0;
        border: 0;
    }
}

@media (max-width: 520px) {
    body:has(.home-page) .site-header .nav-shell,
    .home-page .container {
        width: calc(100% - 1.25rem);
    }

    .home-page .hero-copy h1 {
        font-size: clamp(2.1rem, 10vw, 3rem);
    }

    .home-page .hero-copy p {
        max-width: 34rem;
        font-size: 0.86rem;
    }

    .home-page .hero-card .hero-listing {
        width: min(90%, 340px);
    }

    .home-page .home-category-strip {
        overflow: hidden;
    }

    .home-page .home-category-link {
        min-height: 54px;
    }

    .home-page .home-trending-section .event-grid {
        gap: 0.55rem;
    }

    .home-page .home-trending-section .event-card .event-image {
        height: var(--premium-event-image-height);
    }

    .home-page .home-trending-section .event-body {
        padding: 0.6rem 0.6rem 0.7rem;
    }

    .home-page .home-trending-section .event-body h3 {
        font-size: 0.9rem;
    }

    .home-page .home-trending-section .event-meta li:first-child {
        font-size: 0.76rem;
    }

    .home-page .home-trending-section .event-meta li:nth-child(2),
    .home-page .home-trending-section .event-meta li:nth-child(3) {
        padding: 0.25rem 0.35rem;
        font-size: 0.59rem;
    }

    .home-page .home-trending-section .event-card-actions {
        gap: 0.35rem;
    }

    .home-page .home-trending-section .event-card-actions .event-organizer-name {
        font-size: 0.5rem;
    }

    .home-page .home-trending-section .event-ticket-link {
        min-height: 38px;
        min-width: 0;
        padding: 0.45rem 0.55rem;
        font-size: 0.65rem;
    }

    .home-page .home-app-banner-inner {
        gap: 0.7rem;
    }

    .home-page .home-app-icon {
        width: 48px;
        height: 48px;
    }

    .home-page .home-app-copy h2 {
        font-size: 0.9rem;
    }

    .home-page .home-app-benefits {
        margin-left: 0;
        flex-wrap: wrap;
    }
}

body:has(.public-event-page) {
    display: flex;
    min-height: 100vh;
    flex-direction: column;
    background: #f3f6fc;
}

body:has(.public-event-page) > main {
    flex: 1;
}

body:has(.public-event-page) .site-header {
    background: #061b5c;
    border-bottom: 1px solid rgba(255, 255, 255, 0.16);
}

body:has(.public-event-page) .site-header .nav-shell {
    width: min(1920px, calc(100% - clamp(2rem, 5vw, 4rem)));
    min-height: 60px;
    gap: clamp(0.7rem, 1.8vw, 1.6rem);
}

body:has(.public-event-page) .site-header .brand-logo img {
    width: 116px;
    height: 50px;
    object-fit: contain;
}

body:has(.public-event-page) .main-nav {
    gap: clamp(0.7rem, 1.5vw, 1.4rem);
    font-size: 0.78rem;
    white-space: nowrap;
}

body:has(.public-event-page) .main-nav a[aria-current="page"] {
    position: relative;
    color: #ffbf00;
}

body:has(.public-event-page) .main-nav a[aria-current="page"]::after {
    position: absolute;
    right: 0;
    bottom: -0.75rem;
    left: 0;
    height: 3px;
    border-radius: 999px;
    background: #ffbf00;
    content: "";
}

body:has(.public-event-page) .site-header .nav-actions {
    gap: 0.5rem;
    white-space: nowrap;
}

body:has(.public-event-page) .site-header .nav-actions .btn {
    padding: 0.5rem 0.85rem;
    font-size: 0.75rem;
}

body:has(.public-event-page) .site-header .nav-actions .btn-primary {
    background: #ffbf00;
    color: #071c69;
}

.public-event-page {
    width: calc(100% - clamp(1.5rem, 5vw, 4rem));
    max-width: 1920px;
    margin: 0 auto;
    padding: 0.5rem 0 1.5rem;
}

.public-event-page .event-breadcrumbs {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    margin: 0 0 0.55rem;
    color: #10214b;
    font-size: 0.72rem;
}

.public-event-page .event-breadcrumbs a {
    color: #0759c7;
    font-weight: 600;
}

.public-event-layout {
    grid-template-columns: minmax(0, 1.5fr) minmax(0, 0.95fr) minmax(280px, 0.82fr);
    align-items: start;
    gap: clamp(0.65rem, 1.5vw, 1.25rem);
}

.public-event-gallery,
.public-event-summary,
.public-event-layout .customer-ticket-panel {
    min-width: 0;
}

.public-event-cover {
    position: relative;
    overflow: hidden;
    min-height: 285px;
    height: clamp(285px, 27vw, 365px);
    border: 1px solid #dce5f8;
    border-radius: 13px;
    background: linear-gradient(135deg, #061b5c, #1677ff);
    box-shadow: 0 5px 16px rgba(9, 36, 105, 0.12);
}

.public-event-cover .event-detail-hero {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 0;
    max-height: none;
    border: 0;
    border-radius: 0;
    object-fit: cover;
}

.event-gallery-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(110px, 1fr));
    gap: 0.6rem;
    margin-top: 0.75rem;
}

.event-gallery-grid img {
    display: block;
    width: 100%;
    aspect-ratio: 1;
    border: 1px solid #dce5f8;
    border-radius: 10px;
    background: #edf5ff;
    object-fit: cover;
}

.public-event-featured {
    position: absolute;
    z-index: 1;
    top: 0.75rem;
    left: 0.75rem;
    padding: 0.4rem 0.7rem;
    border-radius: 999px;
    background: #ffbf00;
    color: #071c69;
    font-size: 0.7rem;
    font-weight: 800;
}

.public-event-sponsors {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 1.25rem;
    width: calc(68.9655% - 0.51724rem);
    margin-top: 0.75rem;
    padding: 0.75rem 1rem;
    overflow: hidden;
    border: 1px solid #dce5f8;
    border-radius: 12px;
    background: #fff;
}

.public-event-sponsors h2 {
    margin: 0;
    color: #526484;
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
    white-space: nowrap;
}

.public-event-sponsor-window {
    min-width: 0;
    overflow: hidden;
}

.public-event-sponsor-track {
    display: flex;
    width: max-content;
    align-items: center;
    animation: public-event-sponsor-slide 30s linear infinite;
}

.public-event-sponsor-track:hover {
    animation-play-state: paused;
}

.public-event-sponsor-track.is-static {
    width: 100%;
    justify-content: center;
    animation: none;
}

.public-event-sponsor-logo {
    display: grid;
    width: clamp(120px, 16vw, 190px);
    height: 54px;
    flex: 0 0 auto;
    place-items: center;
    padding: 0 1.2rem;
}

.public-event-sponsor-logo img {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 48px;
    object-fit: contain;
}

@keyframes public-event-sponsor-slide {
    to {
        transform: translateX(-50%);
    }
}

@media (prefers-reduced-motion: reduce) {
    .public-event-sponsor-track {
        animation: none;
        transform: none;
    }

    .public-event-sponsor-track:not(.is-static) .public-event-sponsor-logo:nth-child(n + 2) {
        display: none;
    }
}

.public-event-cover-caption {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem 1rem;
    padding: 0.8rem;
    background: linear-gradient(transparent, rgba(2, 13, 49, 0.86));
    color: #fff;
    font-size: 0.72rem;
    font-weight: 600;
}

.public-event-summary {
    display: flex;
    min-height: 0;
    flex-direction: column;
    padding: 0.2rem 0;
}

.public-event-title-tools {
    position: relative;
    display: flex;
    min-width: 0;
    align-items: flex-start;
}

.public-event-title-badges {
    display: grid;
    width: 100%;
    min-width: 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.35rem;
    margin: 0;
    box-sizing: border-box;
    padding: 0 4.5rem 0 0;
}

.public-event-title-badges > div {
    min-width: 0;
    padding: 0.38rem 0.5rem;
    border: 1px solid #dfe7f7;
    border-radius: 0.6rem;
    background: #f7f9ff;
}

.public-event-title-badges > div:last-child {
    grid-column: 1 / -1;
}

.public-event-title-badges dt {
    margin: 0;
    color: #66748f;
    font-size: 0.56rem;
    font-weight: 800;
    letter-spacing: 0.07em;
    line-height: 1.2;
    text-transform: uppercase;
}

.public-event-title-badges dd {
    min-width: 0;
    margin: 0.14rem 0 0;
    color: #142a61;
    font-size: 0.68rem;
    font-weight: 750;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.public-event-title-badges dd small {
    display: block;
    margin-top: 0.08rem;
    color: #596986;
    font-size: 0.62rem;
    font-weight: 600;
}

.public-event-share {
    position: absolute;
    top: 0;
    right: 0;
    display: inline-flex;
    min-height: 2rem;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    padding: 0.35rem 0.65rem;
    border: 1px solid #d5def2;
    border-radius: 999px;
    background: #fff;
    color: #173c91;
    font: inherit;
    font-size: 0.7rem;
    font-weight: 750;
    cursor: pointer;
    transition: border-color 150ms ease, background-color 150ms ease, color 150ms ease;
}

.public-event-share:hover,
.public-event-share:focus-visible {
    border-color: #174cae;
    background: #edf3ff;
    color: #0c347f;
}

.public-event-share:focus-visible {
    outline: 3px solid rgba(23, 76, 174, 0.25);
    outline-offset: 2px;
}

.public-event-share svg {
    width: 0.95rem;
    height: 0.95rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.public-event-summary > h1 {
    margin: 0.55rem 0 0.3rem;
    color: #10214b;
    font-size: clamp(1.4rem, 2.4vw, 2rem);
    letter-spacing: -0.045em;
    line-height: 1.12;
    overflow-wrap: anywhere;
}

.event-share-dialog {
    position: fixed;
    inset: 0;
    display: none;
    width: min(34rem, calc(100% - 2rem));
    max-width: none;
    max-height: min(90vh, 48rem);
    margin: auto;
    padding: 0;
    overflow: auto;
    border: 0;
    border-radius: 1.15rem;
    background: transparent;
    color: #10214b;
    opacity: 0;
    transform: translateY(1.75rem);
    transition: opacity 240ms ease, transform 300ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

.event-share-dialog[open] {
    display: block;
    opacity: 1;
    transform: translateY(0);
}

@starting-style {
    .event-share-dialog[open] {
        opacity: 0;
        transform: translateY(1.75rem);
    }
}

.event-share-dialog::backdrop {
    background: rgba(3, 12, 42, 0.62);
    backdrop-filter: blur(4px);
}

.event-share-dialog-panel {
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.85);
    border-radius: inherit;
    background: #fff;
    box-shadow: 0 1.5rem 5rem rgba(3, 18, 60, 0.3);
}

.event-share-dialog-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.4rem 1.5rem 1.15rem;
    background: linear-gradient(120deg, #071b52, #1749a4);
    color: #fff;
}

.event-share-eyebrow {
    color: #ffce42;
    font-size: 0.65rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.event-share-dialog-header h2 {
    margin: 0.3rem 0 0;
    color: #fff;
    font-size: 1.35rem;
    font-weight: 850;
    letter-spacing: -0.035em;
}

.event-share-dialog-header p {
    max-width: 25rem;
    margin: 0.35rem 0 0;
    overflow: hidden;
    color: rgba(255, 255, 255, 0.78);
    font-size: 0.8rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.event-share-close {
    display: grid;
    width: 2.25rem;
    height: 2.25rem;
    flex: 0 0 auto;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    font: inherit;
    font-size: 1.5rem;
    line-height: 1;
    cursor: pointer;
}

.event-share-close:hover,
.event-share-close:focus-visible {
    background: rgba(255, 255, 255, 0.25);
}

.event-share-dialog-content {
    display: grid;
    gap: 1rem;
    padding: 1.25rem 1.5rem 1.5rem;
}

.event-share-options {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.65rem;
}

.event-share-options a {
    display: grid;
    min-width: 0;
    justify-items: center;
    gap: 0.45rem;
    padding: 0.7rem 0.3rem;
    border: 1px solid #e6ebf5;
    border-radius: 0.85rem;
    color: #243452;
    font-size: 0.72rem;
    font-weight: 700;
    text-decoration: none;
    transition: transform 160ms ease, border-color 160ms ease, background-color 160ms ease;
}

.event-share-options a:hover,
.event-share-options a:focus-visible {
    transform: translateY(-2px);
    border-color: #b7c9ee;
    background: #f5f8ff;
}

.event-share-social-icon {
    display: grid;
    width: 2.3rem;
    height: 2.3rem;
    place-items: center;
    border-radius: 50%;
    background: #edf2ff;
    color: #12387d;
    font-size: 1.1rem;
    font-weight: 850;
}

.event-share-social-icon svg {
    display: block;
    width: 1.25rem;
    height: 1.25rem;
    fill: currentColor;
}

.event-share-social-whatsapp {
    background: #25d366;
    color: #fff;
}

.event-share-social-whatsapp svg {
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.5;
}

.event-share-social-facebook {
    background: #1877f2;
    color: #fff;
}

.event-share-social-x {
    background: #111;
    color: #fff;
}

.event-share-social-x svg {
    width: 1rem;
    height: 1rem;
}

.event-share-social-telegram {
    background: #229ed9;
    color: #fff;
}

.event-share-social-telegram svg {
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.3;
}

.event-share-link-row {
    display: flex;
    min-width: 0;
    gap: 0.5rem;
    padding: 0.35rem;
    border: 1px solid #dfe6f3;
    border-radius: 0.8rem;
    background: #f8faff;
}

.event-share-link-row input {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: #53617b;
    font: inherit;
    font-size: 0.72rem;
}

.event-share-link-row button,
.event-share-qr-actions button {
    min-height: 2.3rem;
    flex: 0 0 auto;
    padding: 0.45rem 0.8rem;
    border: 0;
    border-radius: 0.55rem;
    background: #14377f;
    color: #fff;
    font: inherit;
    font-size: 0.72rem;
    font-weight: 750;
    cursor: pointer;
}

.event-share-link-row button:hover,
.event-share-qr-actions button:hover {
    background: #1c4ba6;
}

.event-share-status {
    min-height: 0;
    margin: -0.55rem 0;
    color: #246235;
    font-size: 0.72rem;
}

.event-share-status:empty {
    display: none;
}

.event-share-qr-section {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem;
    border: 1px solid #e5eaf4;
    border-radius: 0.9rem;
    background: #f7f9fd;
}

.event-share-qr-copy {
    min-width: 0;
}

.event-share-qr-copy h3 {
    margin: 0;
    color: #10214b;
    font-size: 0.95rem;
    font-weight: 800;
}

.event-share-qr-copy p {
    margin: 0.3rem 0 0.8rem;
    color: #65718a;
    font-size: 0.75rem;
}

.event-share-qr-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.event-share-qr-actions button:last-child {
    border: 1px solid #d3ddf0;
    background: #fff;
    color: #16377c;
}

.event-share-qr-actions button:last-child:hover {
    background: #edf3ff;
}

.event-share-qr {
    display: grid;
    width: 7rem;
    height: 7rem;
    flex: 0 0 auto;
    place-items: center;
    padding: 0.35rem;
    border: 1px solid #e2e8f4;
    border-radius: 0.65rem;
    background: #fff;
}

.event-share-qr svg {
    display: block;
    width: 100%;
    height: 100%;
}

@media (max-width: 520px) {
    .event-share-dialog {
        width: calc(100% - 1rem);
        max-height: calc(100dvh - 1rem);
        border-radius: 1rem;
    }

    .event-share-dialog-header {
        padding: 1.1rem 1rem 0.9rem;
    }

    .event-share-dialog-content {
        gap: 0.8rem;
        padding: 1rem;
    }

    .event-share-options {
        gap: 0.4rem;
    }

    .event-share-options a {
        padding-inline: 0.15rem;
        font-size: 0.65rem;
    }

    .event-share-qr-section {
        gap: 0.6rem;
        padding: 0.7rem;
    }

    .event-share-qr {
        width: 5.5rem;
        height: 5.5rem;
    }

    .event-share-qr-actions button {
        min-height: 2.1rem;
        padding-inline: 0.55rem;
        font-size: 0.66rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .event-share-dialog {
        transition: none;
    }
}

.public-event-intro {
    margin: 0;
    color: #33476f;
    font-size: 0.78rem;
    line-height: 1.45;
}

.public-event-meta {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.6rem;
    margin: 0.8rem 0;
    padding: 0 0 0.7rem;
    border-bottom: 1px solid #d9e3f7;
}

.public-event-meta > div {
    display: flex;
    min-width: 0;
    gap: 0.4rem;
    align-items: flex-start;
}

.public-event-meta dt {
    color: #0c3c9f;
    font-size: 1rem;
    font-weight: 800;
}

.public-event-meta dd {
    display: grid;
    min-width: 0;
    margin: 0;
    color: #10214b;
    font-size: 0.68rem;
    font-weight: 600;
    overflow-wrap: anywhere;
}

.public-event-meta dd small {
    color: #526484;
    font-size: 0.62rem;
    font-weight: 500;
}

.public-event-highlights {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    margin-bottom: 0.7rem;
}

.public-event-highlights span {
    display: inline-flex;
    min-height: 29px;
    align-items: center;
    gap: 0.32rem;
    padding: 0.3rem 0.5rem;
    border: 1px solid #dce5f8;
    border-radius: 8px;
    background: #edf3ff;
    color: #10214b;
    font-size: 0.59rem;
    font-weight: 700;
}

.public-event-highlights b {
    color: #0759ed;
    font-size: 0.85rem;
}

.public-event-about {
    padding-top: 0.55rem;
    border-top: 1px solid #d9e3f7;
}

.public-event-about h2 {
    margin: 0 0 0.3rem;
    color: #10214b;
    font-size: 0.92rem;
}

.public-event-about details {
    color: #33476f;
    font-size: 0.7rem;
    line-height: 1.45;
}

.public-event-about summary {
    color: #0759c7;
    cursor: pointer;
    font-weight: 700;
}

.public-event-about details p {
    max-height: 7rem;
    overflow: auto;
    margin: 0.4rem 0 0;
    white-space: pre-line;
}

.public-event-layout .customer-ticket-panel {
    position: static;
    top: auto;
    padding: 0;
    overflow: hidden;
    border: 1px solid #d5e0f6;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 6px 20px rgba(9, 36, 105, 0.12);
}

.public-ticket-heading {
    display: flex;
    min-height: 45px;
    align-items: center;
    gap: 0.6rem;
    padding: 0.55rem 0.8rem;
    background: #071e64;
    color: #fff;
}

.public-ticket-heading > span {
    color: #ffbf00;
    font-size: 1.15rem;
}

.public-ticket-heading h2 {
    margin: 0;
    color: #fff;
    font-size: 0.95rem;
}

.public-event-layout .ticket-selection {
    gap: 0.55rem;
    margin: 0;
    padding: 0.7rem;
}

.public-event-layout .ticket-selection > h2 {
    display: none;
}

.public-event-layout .ticket-option {
    grid-template-columns: minmax(0, 1fr) max-content 50px;
    gap: 0.45rem;
    padding: 0.55rem 0.1rem;
    border: 0;
    border-bottom: 1px solid #e0e8f7;
    border-radius: 0;
    background: #fff;
}

.public-event-layout .ticket-option:focus-within {
    box-shadow: none;
}

.public-event-layout .ticket-option-info {
    display: grid;
    grid-column: 1;
    grid-row: 1;
    gap: 0.12rem;
}

.public-event-layout .ticket-option-info strong {
    color: #10214b;
    font-size: 0.76rem;
}

.public-event-layout .ticket-option-info small {
    color: #526484;
    font-size: 0.6rem;
    line-height: 1.35;
}

.public-event-layout .ticket-option-info small:nth-of-type(1) {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}

.public-event-layout .ticket-option-info small:last-child {
    color: #657693;
}

.public-event-layout .ticket-option-price {
    grid-column: 2;
    grid-row: 1;
    color: #10214b;
    font-size: 0.68rem;
    font-weight: 800;
}

.public-event-layout .ticket-option input[type="number"] {
    grid-column: 3;
    grid-row: 1;
    width: 50px;
    min-height: 29px;
    padding: 0.2rem 0.35rem;
    border: 1px solid #d4def2;
    border-radius: 999px;
    background: #edf3ff;
    font-size: 0.72rem;
    text-align: center;
}

.public-event-layout .ticket-estimate {
    padding: 0.55rem;
    border: 1px solid #dce5f8;
    border-radius: 9px;
}

.public-event-layout .ticket-estimate h3 {
    font-size: 0.78rem;
}

.public-event-layout .ticket-estimate p {
    margin: 0.25rem 0;
    font-size: 0.61rem;
    line-height: 1.4;
}

.public-event-layout .ticket-estimate ul {
    font-size: 0.65rem;
}

.public-event-layout .ticket-submit {
    width: 100%;
    min-height: 38px;
    padding: 0.5rem 0.8rem;
    border-radius: 999px;
    background: #ffbf00;
    color: #071c69;
    font-size: 0.76rem;
    font-weight: 800;
    text-align: center;
}

.public-event-layout .ticket-submit:hover {
    background: #ffd13b;
}

.public-event-layout .ticket-selection > .muted-copy {
    margin: 0;
    color: #687386;
    font-size: 0.57rem;
    line-height: 1.35;
}

.public-reservation-notes {
    color: #526484;
    font-size: 0.59rem;
}

.public-reservation-notes summary {
    color: #0759c7;
    cursor: pointer;
    font-weight: 700;
}

.public-reservation-notes .muted-copy {
    margin: 0.25rem 0 0;
    font-size: 0.59rem;
    line-height: 1.4;
}

.public-event-layout .ticket-selection > .notice,
.public-event-layout .customer-ticket-panel > .notice {
    margin: 0.65rem;
    font-size: 0.7rem;
}

.public-event-highlights-panel {
    display: grid;
    grid-template-columns: minmax(130px, 0.65fr) minmax(0, 3fr);
    align-items: center;
    gap: 0.75rem;
    margin-top: 0.75rem;
    padding: 0.65rem 0.85rem;
    border: 1px solid #dce5f8;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 4px 14px rgba(9, 36, 105, 0.07);
}

.public-event-highlights-panel h2 {
    margin: 0;
    color: #10214b;
    font-size: 0.88rem;
}

.public-event-highlights-panel h2 span {
    margin-right: 0.35rem;
    color: #0759ed;
}

.public-event-highlights-panel > div {
    display: flex;
    justify-content: space-around;
    gap: 0.65rem;
}

.public-event-highlights-panel > div > span {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 0.4rem;
    color: #10214b;
    font-size: 0.65rem;
}

.public-event-highlights-panel b {
    color: #0759ed;
    font-size: 1.05rem;
}

.public-related-events {
    margin-top: 0.8rem;
}

.public-related-events .section-header {
    align-items: center;
    margin-bottom: 0.5rem;
}

.public-related-events .section-header h2 {
    margin: 0;
    color: #10214b;
    font-size: 1rem;
}

.public-related-events .section-header .link-text {
    color: #0759c7;
    font-size: 0.68rem;
}

.public-related-empty {
    margin: 0;
    padding: 0.6rem 0.75rem;
    border: 1px solid #dce5f8;
    border-radius: 9px;
    background: #fff;
    color: #526484;
    font-size: 0.7rem;
}

.public-related-empty a {
    color: #0759c7;
    font-weight: 700;
}

.public-related-events .section-header .eyebrow {
    display: none;
}

.public-related-events .event-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.7rem;
}

.public-related-events .event-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid #d7e1f8;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 4px 12px rgba(9, 36, 105, 0.08);
}

.public-related-events .event-card .event-image {
    height: clamp(70px, 8vw, 105px);
    object-fit: cover;
}

.public-related-events .event-body {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.2rem 0.4rem;
    padding: 0.4rem 0.55rem 0.5rem;
}

.public-related-events .event-body .meta-tag,
.public-related-events .event-body p:not(.event-organizer-name),
.public-related-events .event-body > .btn {
    display: none;
}

.public-related-events .event-body h3 {
    grid-column: 1 / -1;
    overflow: hidden;
    margin: 0;
    color: #10214b;
    font-size: 0.72rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.public-related-events .event-meta {
    grid-column: 1 / -1;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 0.2rem 0.45rem;
    margin: 0;
    font-size: 0.6rem;
}

.public-related-events .event-meta li:nth-child(3) {
    display: none;
}

.public-related-events .event-organizer-name {
    grid-column: 1 / -1;
    display: block;
    overflow: hidden;
    margin: 0;
    color: #64728d;
    font-size: 0.58rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.public-related-events .event-ticket-link {
    grid-column: 2;
    grid-row: 2;
    align-self: end;
    margin: 0;
    padding: 0.18rem 0.5rem;
    border-radius: 999px;
    background: #e6efff;
    color: #0759c7;
    font-size: 0.6rem;
    font-weight: 800;
    white-space: nowrap;
}

.premium-event-card {
    --premium-event-image-height: clamp(165px, 22vw, 250px);
    overflow: hidden;
    isolation: isolate;
    border: 1px solid #dce5f8;
    border-radius: 18px;
    background: linear-gradient(180deg, #fff 0%, #f8faff 100%);
    box-shadow: 0 10px 24px rgba(9, 36, 105, 0.11);
}

.premium-event-card .event-image {
    width: 100%;
    height: var(--premium-event-image-height);
    flex: 0 0 auto;
    position: relative;
    z-index: 1;
    object-fit: cover;
    background-color: #e9effb;
    clip-path: polygon(
        0 0,
        100% 0,
        100% 92%,
        90% 94%,
        80% 96%,
        70% 98%,
        60% 99%,
        50% 98%,
        40% 96%,
        30% 93%,
        20% 90%,
        10% 87%,
        0 83%
    );
}

.premium-event-card .event-image-placeholder {
    display: grid;
    place-items: center;
}

.premium-event-card::before {
    position: absolute;
    z-index: 0;
    inset: 0 0 auto;
    height: var(--premium-event-image-height);
    background: #ffbf00;
    clip-path: polygon(
        0 0,
        100% 0,
        100% 95%,
        90% 97%,
        80% 99%,
        70% 100%,
        60% 100%,
        50% 99%,
        40% 97%,
        30% 94%,
        20% 91%,
        10% 88%,
        0 84%
    );
    content: "";
    pointer-events: none;
}

.premium-event-card .event-body {
    display: flex;
    min-width: 0;
    flex: 1;
    flex-direction: column;
    align-items: stretch;
    gap: 0.55rem;
    padding: 1rem 1.1rem 1.1rem;
}

.premium-event-card .event-body .meta-tag,
.premium-event-card > .meta-tag {
    position: absolute;
    z-index: 2;
    display: inline-flex;
    top: 0.85rem;
    left: 0.85rem;
    max-width: calc(100% - 5rem);
    overflow: hidden;
    padding: 0.45rem 0.8rem;
    border: 0;
    border-radius: 999px;
    background: #0759ed;
    color: #fff;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.02em;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.premium-event-card .event-date-badge {
    top: 0.85rem;
    right: 0.85rem;
    width: 52px;
    border-radius: 10px;
}

.premium-event-card .event-date-badge span:first-child {
    padding: 0.25rem 0.2rem 0.15rem;
    font-size: 0.58rem;
}

.premium-event-card .event-date-badge strong {
    font-size: 1.25rem;
}

.premium-event-card .event-date-badge span:last-child {
    padding: 0.05rem 0.2rem 0.28rem;
    color: #fff;
    font-size: 0.58rem;
    font-weight: 800;
    line-height: 1;
}

.premium-event-card .event-body h3 {
    display: -webkit-box;
    overflow: hidden;
    margin: 0;
    color: #0b1f6b;
    font-size: clamp(1.05rem, 1.8vw, 1.45rem);
    font-weight: 800;
    letter-spacing: -0.035em;
    line-height: 1.15;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.premium-event-card .event-body h3 a {
    color: inherit;
    text-decoration: none;
}

.premium-event-card .event-body h3 a:hover,
.premium-event-card .event-body h3 a:focus-visible {
    color: #0759ed;
}

.premium-event-card .event-body h3 a:focus-visible {
    border-radius: 2px;
    outline: 2px solid #0759ed;
    outline-offset: 3px;
}

.premium-event-card .event-meta {
    display: flex;
    min-width: 0;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.4rem 1rem;
    margin: 0;
    padding: 0.7rem 0;
    border-top: 1px solid #dce5f8;
    color: #33476f;
    font-size: 0.8rem;
}

.premium-event-card .event-meta li {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.premium-event-card .event-meta li:first-child {
    flex: 1 1 100%;
    color: #10214b;
    font-size: 0.95rem;
    font-weight: 700;
}

.premium-event-card .event-meta li:nth-child(2),
.premium-event-card .event-meta li:nth-child(3) {
    flex: 0 1 auto;
}

.premium-event-card .event-card-actions {
    display: flex;
    width: 100%;
    min-width: 0;
    align-self: stretch;
    align-items: center;
    justify-content: space-between;
    gap: 0.65rem;
    margin-top: auto;
    padding-top: 0.65rem;
    border-top: 1px solid #dce5f8;
}

.premium-event-card .event-card-actions .event-organizer-name {
    min-width: 0;
    flex: 1 1 auto;
    overflow: hidden;
    margin: 0;
    color: #10214b;
    font-size: 0.68rem;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.premium-event-card .event-card-actions > .event-ticket-link {
    display: inline-flex;
    min-height: 44px;
    min-width: 138px;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    margin: 0;
    padding: 0.65rem 1rem;
    border-radius: 999px;
    background: #ffbf00;
    color: #0b1f6b;
    font-size: 0.9rem;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
    box-shadow: 0 5px 12px rgba(255, 191, 0, 0.24);
    transition: background-color 160ms ease, transform 160ms ease;
}

.premium-event-card .event-card-actions > .event-ticket-link:hover {
    background: #ffd13b;
    transform: translateY(-1px);
}

.premium-event-card .event-card-actions > .event-ticket-link:focus-visible {
    outline: 3px solid #0759ed;
    outline-offset: 3px;
}

@media (max-width: 760px) {
    .premium-event-card {
        --premium-event-image-height: clamp(125px, 42vw, 205px);
    }

    .premium-event-card .event-image {
        height: var(--premium-event-image-height);
    }

    .premium-event-card .event-body {
        gap: 0.45rem;
        padding: 0.8rem;
    }

    .premium-event-card .event-body .meta-tag {
        top: 0.65rem;
        left: 0.65rem;
        padding: 0.35rem 0.6rem;
        font-size: 0.65rem;
    }

    .premium-event-card .event-date-badge {
        top: 0.65rem;
        right: 0.65rem;
        width: 44px;
    }

    .premium-event-card .event-date-badge span:first-child,
    .premium-event-card .event-date-badge span:last-child {
        font-size: 0.5rem;
    }

    .premium-event-card .event-body h3 {
        font-size: 0.95rem;
    }

    .premium-event-card .event-meta {
        gap: 0.35rem 0.65rem;
        padding: 0.55rem 0;
        font-size: 0.68rem;
    }

    .premium-event-card .event-meta li:first-child {
        font-size: 0.78rem;
    }

    .premium-event-card .event-card-actions {
        gap: 0.4rem;
        padding-top: 0.5rem;
    }

    .premium-event-card .event-card-actions .event-organizer-name {
        font-size: 0.58rem;
    }

    .premium-event-card .event-card-actions > .event-ticket-link {
        min-height: 38px;
        min-width: 0;
        gap: 0.25rem;
        padding: 0.5rem 0.65rem;
        font-size: 0.68rem;
    }
}

.public-related-events .premium-event-card {
    border-radius: 16px;
}

.public-related-events .premium-event-card .event-image {
    height: var(--premium-event-image-height);
}

.public-related-events .premium-event-card {
    --premium-event-image-height: clamp(100px, 12vw, 170px);
}

body:has(.public-event-page) .site-footer {
    padding: 0.65rem 0;
    border-top: 3px solid #ffbf00;
    border-radius: 16px 16px 0 0;
}

.event-card,
.hero-featured-link {
    position: relative;
    transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}

.event-card .event-image,
.hero-featured-link .hero-image,
.hero-featured-link .home-event-art-image {
    transition: transform 320ms ease;
}

.event-card:hover,
.event-card:focus-within,
.hero-featured-link:hover,
.hero-featured-link:focus-within {
    z-index: 1;
    transform: scale(1.025);
}

.event-card:hover .event-image,
.event-card:focus-within .event-image,
.hero-featured-link:hover .hero-image,
.hero-featured-link:focus-within .hero-image,
.hero-featured-link:hover .home-event-art-image,
.hero-featured-link:focus-within .home-event-art-image {
    transform: scale(1.06);
}

@media (prefers-reduced-motion: reduce) {
    .event-card,
    .hero-featured-link,
    .event-card .event-image,
    .hero-featured-link .hero-image,
    .hero-featured-link .home-event-art-image {
        transition: none;
    }

    .event-card:hover,
    .event-card:focus-within,
    .hero-featured-link:hover,
    .hero-featured-link:focus-within,
    .event-card:hover .event-image,
    .event-card:focus-within .event-image,
    .hero-featured-link:hover .hero-image,
    .hero-featured-link:focus-within .hero-image,
    .hero-featured-link:hover .home-event-art-image,
    .hero-featured-link:focus-within .home-event-art-image {
        transform: none;
    }
    background: #061b5c;
    color: #fff;
}

.public-event-footer-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    font-size: 0.64rem;
}

.public-event-footer-inner .brand-logo img {
    width: 108px;
    height: 46px;
}

.public-event-footer-inner nav {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem 0.8rem;
}

.public-event-footer-inner nav a {
    color: #f3f6ff;
}

.public-event-footer-inner > span {
    color: #d3ddf2;
    white-space: nowrap;
}

@media (max-width: 1000px) {
    body:has(.public-event-page) .site-header .nav-shell {
        gap: 0.7rem;
    }

    body:has(.public-event-page) .main-nav {
        gap: 0.6rem;
        font-size: 0.68rem;
    }

    body:has(.public-event-page) .site-header .brand-logo img {
        width: 90px;
    }

    .public-event-layout {
        grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
    }

    .public-event-layout .customer-ticket-panel {
        grid-column: 1 / -1;
    }

    .public-event-layout .ticket-selection {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .public-event-layout .ticket-selection > h2,
    .public-event-layout .ticket-estimate,
    .public-event-layout .ticket-submit,
    .public-event-layout .ticket-selection > .muted-copy {
        grid-column: 1 / -1;
    }

    .public-event-layout .ticket-selection > h2 {
        display: block;
    }

    .public-related-events .event-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    body:has(.public-event-page) .site-header .main-nav {
        display: none;
    }

    body:has(.public-event-page) .site-header .nav-shell {
        min-height: 56px;
    }

    .public-event-page {
        width: calc(100% - 1.25rem);
        padding-top: 0.4rem;
    }

    .public-event-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 0.75rem;
    }

    .public-event-cover {
        height: clamp(220px, 62vw, 340px);
        min-height: 220px;
    }

    .public-event-summary {
        padding: 0.15rem 0;
    }

    .public-event-layout .customer-ticket-panel {
        grid-column: 1;
    }

    .public-event-layout .ticket-selection {
        grid-template-columns: minmax(0, 1fr);
    }

    .public-event-layout .ticket-selection > h2,
    .public-event-layout .ticket-estimate,
    .public-event-layout .ticket-submit,
    .public-event-layout .ticket-selection > .muted-copy {
        grid-column: 1;
    }

    .public-event-highlights-panel {
        grid-template-columns: minmax(0, 1fr);
    }

    .public-event-highlights-panel > div {
        justify-content: flex-start;
        flex-wrap: wrap;
    }
}

@media (max-width: 520px) {
    .home-page .home-trending-section .premium-event-card {
        --premium-event-image-height: clamp(110px, 31vw, 140px);
    }

    body:has(.public-event-page) .site-header .nav-shell {
        width: calc(100% - 1rem);
    }

    body:has(.public-event-page) .site-header .brand-logo img {
        width: 76px;
        height: 44px;
    }

    body:has(.public-event-page) .site-header .nav-actions .btn {
        padding: 0.4rem 0.55rem;
        font-size: 0.65rem;
    }

    .public-event-page .customer-event-detail {
        width: 100%;
    }

    .public-event-meta {
        grid-template-columns: minmax(0, 1fr);
        gap: 0.45rem;
    }

    .public-related-events .event-grid {
        gap: 0.5rem;
    }

    .public-event-footer-inner {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.55rem;
    }
}

.event-header-home-link {
    display: grid;
    width: 30px;
    height: 34px;
    flex: 0 0 auto;
    place-items: center;
    color: #fff;
    font-size: 1.35rem;
}

.public-event-cover:has(.public-event-road-image)::after {
    position: absolute;
    z-index: 1;
    inset: 0;
    background: linear-gradient(90deg, rgba(2, 13, 49, 0.48), transparent 80%), linear-gradient(0deg, rgba(2, 13, 49, 0.48), transparent 42%);
    content: "";
}

.public-event-cover .public-event-road-image {
    object-position: center;
}

.public-event-artwork-title {
    position: absolute;
    z-index: 2;
    top: 33%;
    left: 7%;
    display: grid;
    width: 58%;
    gap: 0.3rem;
    transform: rotate(-4deg);
    color: #fff;
    text-shadow: 0 2px 8px rgba(2, 13, 49, 0.8);
}

.public-event-artwork-title span {
    color: #ffcf22;
    font-size: clamp(0.55rem, 0.9vw, 0.75rem);
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.public-event-artwork-title strong {
    font-size: clamp(1.45rem, 3.3vw, 3rem);
    font-style: italic;
    letter-spacing: -0.06em;
    line-height: 0.98;
}

.public-event-featured,
.public-event-cover-caption {
    z-index: 3;
}

.public-event-cover {
    height: clamp(245px, 24.8vw, 320px);
}

.public-event-layout .ticket-option {
    grid-template-columns: minmax(0, 1fr) max-content;
}

.public-event-layout .ticket-option-info {
    grid-column: 1;
    grid-row: 1 / span 2;
}

.public-event-layout .ticket-option-info small:nth-of-type(1) {
    -webkit-line-clamp: 1;
}

.public-event-layout .ticket-option-info small:last-child {
    font-size: 0.56rem;
    max-width: 8.5rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.public-event-layout .ticket-option-price {
    grid-column: 2;
    grid-row: 1;
    text-align: right;
}

.public-ticket-quantity {
    display: inline-flex;
    grid-column: 2;
    grid-row: 2;
    align-items: center;
    justify-self: end;
    gap: 0.22rem;
}

.public-event-layout .ticket-option .public-ticket-quantity button {
    display: grid;
    width: 19px;
    height: 19px;
    flex: 0 0 auto;
    place-items: center;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #dce8ff;
    color: #0c3c9f;
    font: inherit;
    font-size: 0.82rem;
    font-weight: 800;
    line-height: 1;
    cursor: pointer;
}

.public-event-layout .ticket-option .public-ticket-quantity button:disabled {
    opacity: 0.45;
    cursor: not-allowed;
}

.public-event-layout .ticket-option input[type="number"] {
    width: 25px;
    min-height: 25px;
    padding: 0;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: #10214b;
    font-size: 0.7rem;
    font-weight: 700;
    text-align: center;
    appearance: textfield;
}

.public-event-layout .ticket-option input[type="number"]::-webkit-inner-spin-button,
.public-event-layout .ticket-option input[type="number"]::-webkit-outer-spin-button {
    margin: 0;
    appearance: none;
}

.public-event-followup {
    display: grid;
    grid-template-columns: minmax(0, 2.2fr) minmax(250px, 0.9fr);
    gap: 0.75rem;
    align-items: stretch;
    margin-top: 0.75rem;
}

.public-event-followup .public-event-highlights-panel {
    margin-top: 0;
}

.public-event-promo {
    position: relative;
    display: flex;
    min-width: 0;
    min-height: 78px;
    align-items: center;
    gap: 0.55rem;
    overflow: hidden;
    padding: 0.7rem;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 12px;
    background:
        linear-gradient(90deg, rgba(5, 23, 83, 0.97), rgba(5, 23, 83, 0.76)),
        url('https://images.unsplash.com/photo-1492684223066-81342ee5ff30?auto=format&fit=crop&w=800&q=80') center / cover,
        #071c69;
    color: #fff;
}

.public-event-promo > span {
    flex: 0 0 auto;
    color: #ffbf00;
    font-size: 1.25rem;
}

.public-event-promo > div {
    min-width: 0;
    flex: 1;
}

.public-event-promo h2 {
    margin: 0;
    color: #fff;
    font-size: 0.78rem;
}

.public-event-promo p {
    margin: 0.2rem 0 0;
    color: #e6ecff;
    font-size: 0.61rem;
    line-height: 1.3;
}

.public-event-promo > a {
    flex: 0 0 auto;
    padding: 0.38rem 0.55rem;
    border-radius: 999px;
    background: #ffbf00;
    color: #071c69;
    font-size: 0.59rem;
    font-weight: 800;
    white-space: nowrap;
}

.public-discovery-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.7rem;
}

.public-discovery-card {
    position: relative;
    display: grid;
    min-width: 0;
    overflow: hidden;
    border: 1px solid #d7e1f8;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 4px 12px rgba(9, 36, 105, 0.08);
    transition: transform 160ms ease, box-shadow 160ms ease;
}

.public-discovery-card:hover,
.public-discovery-card:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 8px 18px rgba(9, 36, 105, 0.14);
}

.public-discovery-card img {
    width: 100%;
    height: clamp(70px, 7.8vw, 92px);
    object-fit: cover;
}

.public-discovery-card > span {
    position: absolute;
    top: 0.4rem;
    left: 0.45rem;
    max-width: calc(100% - 0.9rem);
    overflow: hidden;
    padding: 0.2rem 0.45rem;
    border-radius: 999px;
    background: #0759ed;
    color: #fff;
    font-size: 0.58rem;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.public-discovery-card > strong {
    padding: 0.45rem 0.55rem 0.55rem;
    color: #33476f;
    font-size: 0.62rem;
    font-weight: 600;
    line-height: 1.35;
}

@media (max-width: 1000px) {
    .public-event-followup {
        grid-template-columns: minmax(0, 1fr);
    }

    .public-event-sponsors {
        width: 100%;
    }

    .public-discovery-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .public-event-cover {
        height: clamp(220px, 62vw, 340px);
        min-height: 220px;
    }

    .public-event-artwork-title strong {
        font-size: clamp(1.8rem, 8vw, 3rem);
    }
}

@media (max-width: 520px) {
    .event-header-home-link {
        display: none;
    }

    .public-event-followup .public-event-highlights-panel > div {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .public-event-promo {
        flex-wrap: wrap;
    }

    .public-event-promo > a {
        margin-left: 1.8rem;
    }
}

.public-event-cover {
    height: clamp(245px, 23.8vw, 305px);
}

.public-event-artwork-title {
    top: 37%;
    width: 68%;
}

.public-event-artwork-title strong {
    max-width: 100%;
    font-size: clamp(1.55rem, 3vw, 2.7rem);
}

.public-event-layout .ticket-selection {
    gap: 0.35rem;
    padding: 0.55rem 0.7rem 0.65rem;
}

.public-event-layout .ticket-option {
    padding: 0.42rem 0.05rem;
}

.public-event-layout .ticket-option-info small:nth-of-type(1) {
    max-width: 12rem;
}

.public-event-layout .ticket-estimate {
    padding: 0.45rem 0.55rem;
}

.public-event-layout .ticket-estimate > .muted-copy {
    display: none;
}

.public-event-followup {
    grid-template-columns: minmax(0, 2fr) minmax(280px, 0.9fr);
}

.public-event-highlights-panel {
    grid-template-columns: minmax(115px, 0.5fr) minmax(0, 3fr);
    padding-block: 0.55rem;
}

.public-event-promo {
    min-height: 68px;
}

.public-related-events {
    margin-top: 0.6rem;
}

.public-discovery-grid {
    gap: 0.6rem;
}

.public-discovery-card img {
    height: clamp(70px, 6.7vw, 84px);
}

.public-discovery-card > strong {
    padding: 0.35rem 0.5rem 0.45rem;
    font-size: 0.58rem;
}

.public-event-page {
    padding-bottom: 0.75rem;
}

.public-event-page .event-breadcrumbs {
    margin-bottom: 0.35rem;
}

@media (max-width: 1000px) {
    .public-event-followup {
        grid-template-columns: minmax(0, 1fr);
    }

    .public-event-layout .ticket-estimate > .muted-copy {
        display: block;
    }
}

@media (max-width: 760px) {
    .public-event-artwork-title {
        width: 80%;
    }

    .public-event-followup {
        grid-template-columns: minmax(0, 1fr);
    }
}

.premium-event-showcase .section-header {
    margin-bottom: 1.25rem;
}

.customer-catalog .event-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(0.7rem, 1.2vw, 1.1rem);
}

.home-page .premium-event-showcase .event-grid {
    --home-event-gap: clamp(0.7rem, 1.2vw, 1.1rem);
    grid-auto-columns: calc((100% - (3 * var(--home-event-gap))) / 4);
    grid-auto-flow: column;
    grid-template-columns: none;
    grid-template-rows: 1fr;
    gap: var(--home-event-gap);
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.home-page .premium-event-showcase .event-grid::-webkit-scrollbar {
    display: none;
}

.home-page .premium-event-showcase .event-grid > .event-card {
    min-width: 0;
    scroll-snap-align: start;
}

.home-page .premium-event-showcase .event-grid > .event-grid-empty {
    grid-column: auto;
    width: calc(400% + (3 * var(--home-event-gap)));
}

.home-event-section-actions {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 0.5rem;
}

.home-event-section-arrow {
    display: inline-grid;
    width: 2.25rem;
    height: 2.25rem;
    flex: 0 0 auto;
    place-items: center;
    padding: 0;
    border: 1px solid #d5def2;
    border-radius: 50%;
    background: #fff;
    color: #0b1f6b;
    cursor: pointer;
    box-shadow: 0 3px 10px rgba(9, 36, 105, 0.1);
}

.home-event-section-arrow[hidden] {
    display: none;
}

.home-event-section-arrow:disabled {
    color: #8490a8;
    cursor: default;
    opacity: 0.55;
    box-shadow: none;
}

.home-event-section-arrow svg {
    width: 1.25rem;
    height: 1.25rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.home-event-section-arrow:focus-visible {
    outline: 3px solid #0759ed;
    outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
    .home-page .premium-event-showcase .event-grid {
        scroll-behavior: auto;
    }
}

@media (min-width: 1024px) {
    .home-page .premium-event-showcase .event-grid {
        grid-auto-columns: auto;
        grid-auto-flow: row;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        grid-template-rows: none;
        overflow: visible;
        scroll-behavior: auto;
        scroll-snap-type: none;
    }

    .home-page .premium-event-showcase .event-grid > .event-card {
        scroll-snap-align: none;
    }

    .home-page .premium-event-showcase .event-grid > .event-grid-empty {
        grid-column: 1 / -1;
        width: 100%;
    }

    .home-page .premium-event-showcase .home-event-section-arrow {
        display: none;
    }
}

.home-page .premium-event-showcase .premium-event-showcase-card {
    aspect-ratio: 0.7;
    border-radius: 20px;
    box-shadow: 0 16px 30px rgba(30, 66, 177, 0.17);
}

.home-page .premium-event-showcase .premium-event-showcase-card .event-image {
    height: 46%;
    flex-basis: 46%;
    clip-path: polygon(
        0 0,
        100% 0,
        100% 94%,
        85% 97%,
        70% 99%,
        55% 100%,
        45% 100%,
        30% 98%,
        15% 94%,
        0 87%
    );
}

.home-page .premium-event-showcase .premium-event-showcase-card::before {
    height: 46%;
    clip-path: polygon(
        0 0,
        100% 0,
        100% 96%,
        85% 99%,
        70% 100%,
        55% 100%,
        45% 100%,
        30% 99%,
        15% 95%,
        0 88%
    );
}

.home-page .premium-event-showcase .premium-event-showcase-body {
    position: relative;
    z-index: 2;
    justify-content: flex-start;
    gap: 0.5rem;
    padding: 0.8rem 0.9rem 0.9rem;
}

.home-page .premium-event-showcase .premium-event-showcase-card > .meta-tag {
    top: 1rem;
    left: 1rem;
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    max-width: calc(100% - 6.5rem);
    padding: 0.7rem 1rem;
    font-size: 0.95rem;
}

.premium-event-showcase-card > .meta-tag svg {
    width: 1.25rem;
    height: 1.25rem;
    flex: 0 0 auto;
    fill: currentColor;
}

.home-page .premium-event-showcase .premium-event-showcase-body h3 {
    flex: 0 0 auto;
    margin: 0.15rem 0 0;
    font-size: clamp(1.05rem, 1.45vw, 1.45rem);
    line-height: 1.05;
}

.home-page .premium-event-showcase .event-showcase-location {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 0.35rem;
    color: #10214b;
    font-size: clamp(0.78rem, 1.05vw, 0.95rem);
    font-weight: 700;
}

.event-showcase-location > svg {
    width: 1.1rem;
    height: 1.1rem;
    flex: 0 0 auto;
    fill: #0b1f6b;
}

.event-showcase-location > span:first-of-type {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.event-showcase-price {
    margin-left: auto;
    color: #536383;
    font-size: 0.72rem;
    font-weight: 700;
    white-space: nowrap;
}

.event-showcase-benefits {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: center;
    margin: 0.15rem 0 0;
    padding: 0.55rem 0;
    border-top: 1px solid #d5def2;
    list-style: none;
}

.event-showcase-benefits li {
    display: flex;
    min-width: 0;
    min-height: 2.4rem;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    padding: 0 0.3rem;
    color: #10214b;
    font-size: clamp(0.62rem, 0.8vw, 0.75rem);
    line-height: 1.2;
}

.event-showcase-benefits li + li {
    border-left: 1px solid #c8d3ec;
}

.event-showcase-benefits li > svg,
.event-showcase-benefits li > img {
    width: 1.5rem;
    height: 1.5rem;
    flex: 0 0 auto;
    object-fit: contain;
    fill: #0b1f6b;
}

.event-showcase-footer {
    display: flex;
    min-width: 0;
    align-items: stretch;
    justify-content: space-between;
    gap: 0.9rem;
    margin-top: auto;
}

.event-showcase-organizer {
    display: flex;
    min-width: 0;
    flex: 1 1 0;
    align-items: center;
}

.event-showcase-organizer > span {
    display: grid;
    min-width: 0;
    gap: 0.1rem;
}

.event-showcase-organizer small {
    color: #173c91;
    font-size: 0.75rem;
    text-transform: uppercase;
}

.event-showcase-organizer strong {
    display: block;
    overflow: hidden;
    color: #111a31;
    font-size: clamp(0.75rem, 1.5vw, 1rem);
    white-space: nowrap;
}

.organizer-name-track {
    display: inline-flex;
    width: max-content;
    gap: 2rem;
}

.organizer-name-copy {
    display: inline-flex;
}

.event-showcase-organizer strong.is-scrolling .organizer-name-track {
    animation: organizer-name-marquee var(--organizer-scroll-duration) linear infinite;
}

@keyframes organizer-name-marquee {
    to {
        transform: translateX(calc(-1 * var(--organizer-scroll-distance)));
    }
}

.event-showcase-organizer strong.is-typing::after {
    display: inline-block;
    width: 0.06em;
    height: 0.85em;
    margin-left: 0.1em;
    background: #0759ed;
    content: "";
    vertical-align: -0.04em;
    animation: organizer-typing-cursor 0.75s steps(2, end) infinite;
}

.event-showcase-organizer .organizer-typing-letter {
    visibility: hidden;
}

.event-showcase-organizer .organizer-typing-letter.is-visible {
    visibility: visible;
}

.event-showcase-organizer.is-typing-pending [data-organizer-typing-name] {
    visibility: hidden;
}

@keyframes organizer-typing-cursor {
    50% {
        opacity: 0;
    }
}

.home-page .premium-event-showcase .event-showcase-footer > .event-ticket-link {
    display: inline-flex;
    min-width: 0;
    min-height: 3rem;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    margin: 0;
    padding: 0.55rem 0.7rem;
    border-radius: 999px;
    background: #ffbf00;
    box-shadow: 0 7px 14px rgba(255, 191, 0, 0.24);
    color: #111827;
    font-size: clamp(0.72rem, 0.95vw, 0.88rem);
    font-weight: 800;
    text-decoration: none;
    text-transform: capitalize;
    white-space: nowrap;
}

@media (prefers-reduced-motion: reduce) {
    .event-showcase-organizer strong.is-typing::after {
        animation: none;
    }
}

.event-showcase-footer > .event-ticket-link svg {
    width: 1.1rem;
    height: 1.1rem;
    flex: 0 0 auto;
    fill: #0b1f6b;
}

.home-page .premium-event-showcase .event-showcase-footer > .event-ticket-link:hover {
    background: #ffd13b;
    transform: translateY(-1px);
}

.home-page .premium-event-showcase .event-showcase-footer > .event-ticket-link:focus-visible {
    outline: 3px solid #0759ed;
    outline-offset: 3px;
}

@media (min-width: 761px) and (max-width: 900px) {
    .home-page .premium-event-showcase .event-grid {
        --home-event-gap: 0.8rem;
        grid-auto-columns: calc((100% - var(--home-event-gap)) / 2);
    }

    .home-page .premium-event-showcase .premium-event-showcase-card {
        aspect-ratio: auto;
        overflow: visible;
    }

    .home-page .premium-event-showcase .premium-event-showcase-card .event-image,
    .home-page .premium-event-showcase .premium-event-showcase-card::before {
        height: clamp(125px, 24vw, 180px);
    }

    .home-page .premium-event-showcase .premium-event-showcase-card .event-image {
        flex: 0 0 auto;
    }

    .home-page .premium-event-showcase .premium-event-showcase-body {
        flex: 0 0 auto;
        min-height: 0;
        padding: 0.75rem;
    }
}

@media (max-width: 760px) {
    .event-grid,
    .customer-catalog .event-grid,
    .home-page .home-trending-section .event-grid,
    .home-page .premium-event-showcase .event-grid,
    .public-related-events .event-grid {
        --mobile-event-grid-gap: 0.65rem;
        grid-auto-columns: calc((100% - var(--mobile-event-grid-gap)) / 2);
        grid-auto-flow: column;
        grid-template-columns: none;
        grid-template-rows: 1fr;
        gap: var(--mobile-event-grid-gap);
        overflow-x: auto;
        overscroll-behavior-x: contain;
        scroll-behavior: smooth;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .event-grid::-webkit-scrollbar,
    .customer-wallet-ticket-list:has(> .event-card)::-webkit-scrollbar {
        display: none;
    }

    .event-grid > .event-card,
    .customer-wallet-ticket-list:has(> .event-card) > .event-card {
        min-width: 0;
        scroll-snap-align: start;
    }

    .customer-wallet-ticket-list:has(> .event-card) {
        --mobile-event-grid-gap: 0.65rem;
        grid-auto-columns: calc((100% - var(--mobile-event-grid-gap)) / 2);
        grid-auto-flow: column;
        grid-template-columns: none;
        grid-template-rows: 1fr;
        gap: var(--mobile-event-grid-gap);
        overflow-x: auto;
        overscroll-behavior-x: contain;
        scroll-behavior: smooth;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .event-grid:has(> .event-grid-empty:only-child) {
        grid-auto-columns: 100%;
        overflow-x: hidden;
    }

    .event-grid > .event-grid-empty:only-child {
        grid-column: auto;
        width: auto;
    }

    .customer-catalog .event-grid {
        grid-auto-columns: calc((100% - var(--mobile-event-grid-gap)) / 2);
    }

    .home-page .home-trending-section .section-header {
        align-items: center;
        flex-direction: row;
        gap: 0.5rem;
    }

    .home-page .home-trending-section .section-header > div:first-child {
        width: auto;
        min-width: 0;
        flex: 1 1 auto;
    }

    .home-page .home-trending-section .home-event-section-actions {
        align-self: flex-start;
        margin-left: auto;
        padding-top: 0.1rem;
    }

    .home-page .premium-event-showcase .event-grid {
        --home-event-gap: 0.55rem;
        grid-auto-columns: calc((100% - var(--home-event-gap)) / 2);
        align-items: stretch;
    }

    .home-page .premium-event-showcase .event-grid > .event-grid-empty {
        width: calc(200% + var(--home-event-gap));
    }

    .home-page .premium-event-showcase .premium-event-showcase-card {
        width: 100%;
        aspect-ratio: auto;
    }

    .home-page .premium-event-showcase .premium-event-showcase-card .event-image,
    .home-page .premium-event-showcase .premium-event-showcase-card::before {
        height: clamp(100px, 32vw, 145px);
    }

    .home-page .premium-event-showcase .premium-event-showcase-card .event-image {
        flex: 0 0 auto;
    }

    .home-page .premium-event-showcase .premium-event-showcase-card {
        overflow: visible;
    }

    .home-page .premium-event-showcase .premium-event-showcase-body {
        flex: 0 0 auto;
        min-height: 0;
        gap: 0.4rem;
        padding: 0.6rem;
    }

    .home-page .premium-event-showcase .premium-event-showcase-card > .meta-tag {
        top: 0.5rem;
        left: 0.5rem;
        gap: 0.3rem;
        padding: 0.35rem 0.5rem;
        font-size: 0.62rem;
    }

    .home-page .premium-event-showcase .premium-event-showcase-body h3 {
        font-size: clamp(0.9rem, 3.8vw, 1.2rem);
    }

    .home-page .premium-event-showcase .event-showcase-location {
        flex-wrap: wrap;
        gap: 0.2rem;
        font-size: 0.72rem;
    }

    .home-page .premium-event-showcase .event-showcase-location > svg {
        width: 0.9rem;
        height: 0.9rem;
    }

    .home-page .premium-event-showcase .event-showcase-price {
        width: 100%;
        margin-left: 1.1rem;
        font-size: 0.58rem;
    }

    .event-showcase-benefits {
        padding: 0.35rem 0;
    }

    .event-showcase-benefits li {
        flex-direction: column;
        gap: 0.08rem;
        padding: 0 0.05rem;
        font-size: 0.44rem;
        text-align: center;
    }

    .event-showcase-benefits li > svg,
    .event-showcase-benefits li > img {
        width: 0.8rem;
        height: 0.8rem;
    }

    .event-showcase-footer {
        flex-direction: column;
        align-items: stretch;
        gap: 0.35rem;
    }

    .event-showcase-organizer small {
        font-size: 0.52rem;
    }

    .event-showcase-organizer strong {
        font-size: 0.65rem;
    }

    .home-page .premium-event-showcase .event-showcase-footer > .event-ticket-link {
        height: 1.8rem;
        min-height: 1.8rem;
        gap: 0.15rem;
        padding: 0.2rem 0.35rem;
        font-size: 0.58rem;
        line-height: 1;
    }

    .home-page .premium-event-showcase .event-showcase-footer > .event-ticket-link svg {
        width: 0.75rem;
        height: 0.75rem;
    }
}

.premium-event-card .event-body .meta-tag,
.premium-event-card > .meta-tag {
    padding: 0.14rem 0.26rem;
    font-size: 0.38rem;
}

.home-page .premium-event-showcase .premium-event-showcase-card > .meta-tag {
    gap: 0.2rem;
    padding: 0.2rem 0.32rem;
    font-size: 0.42rem;
}

.home-page .premium-event-showcase .premium-event-showcase-card > .meta-tag svg {
    width: 0.65rem;
    height: 0.65rem;
}

@media (max-width: 760px) {
    .home-page .premium-event-showcase .premium-event-showcase-card > .meta-tag {
        gap: 0.12rem;
        padding: 0.14rem 0.24rem;
        font-size: 0.34rem;
    }

    .home-page .premium-event-showcase .premium-event-showcase-card > .meta-tag svg {
        width: 0.48rem;
        height: 0.48rem;
    }
}

.premium-event-card .event-date-badge,
.home-page .home-trending-section .event-card .event-date-badge {
    top: 0.55rem;
    right: 0.55rem;
    width: 32px;
    border-radius: 7px;
}

.premium-event-card .event-date-badge span:first-child,
.home-page .home-trending-section .event-card .event-date-badge span:first-child {
    padding: 0.12rem 0.08rem 0.06rem;
    font-size: 0.36rem;
}

.premium-event-card .event-date-badge strong,
.home-page .home-trending-section .event-card .event-date-badge strong {
    font-size: 0.78rem;
}

.premium-event-card .event-date-badge span:last-child,
.home-page .home-trending-section .event-card .event-date-badge span:last-child {
    padding: 0.02rem 0.08rem 0.12rem;
    font-size: 0.36rem;
}

@media (max-width: 760px) {
    .premium-event-card .event-date-badge,
    .home-page .home-trending-section .event-card .event-date-badge {
        top: 0.4rem;
        right: 0.4rem;
        width: 28px;
    }

    .premium-event-card .event-date-badge span:first-child,
    .home-page .home-trending-section .event-card .event-date-badge span:first-child {
        padding: 0.08rem 0.05rem 0.04rem;
        font-size: 0.32rem;
    }

    .premium-event-card .event-date-badge strong,
    .home-page .home-trending-section .event-card .event-date-badge strong {
        font-size: 0.68rem;
    }

    .premium-event-card .event-date-badge span:last-child,
    .home-page .home-trending-section .event-card .event-date-badge span:last-child {
        padding: 0.01rem 0.05rem 0.08rem;
        font-size: 0.32rem;
    }
}

.promo-box > .btn-primary {
    border-color: var(--vdm-blue);
    background: var(--vdm-white);
    color: var(--vdm-blue);
}

.promo-box > .btn-primary:hover,
.promo-box > .btn-primary:focus-visible {
    border-color: var(--vdm-blue-interaction);
    background: var(--vdm-blue-interaction);
    color: var(--vdm-white);
}

.event-section-page {
    min-height: calc(100vh - 5rem);
    padding: 0 0 3rem;
    background: #f4f7ff;
}

.event-section-container {
    width: min(calc(100% - 3rem), 1440px);
    margin: 0 auto;
}

.event-section-hero {
    position: relative;
    overflow: hidden;
    padding: 1.5rem 0 1.6rem;
    background:
        radial-gradient(ellipse at 68% 115%, rgba(84, 147, 255, 0.2), transparent 38%),
        linear-gradient(110deg, #fff 0%, #f5f8ff 48%, #eaf2ff 100%);
}

.event-section-hero::before {
    position: absolute;
    inset: 0 auto 0 0;
    width: 68%;
    background: radial-gradient(circle, rgba(7, 89, 237, 0.075) 0 0.38rem, transparent 0.42rem) left center / 1.25rem 1.25rem;
    content: "";
    -webkit-mask-image: linear-gradient(90deg, #000 0%, rgba(0, 0, 0, 0.65) 55%, transparent 100%);
    mask-image: linear-gradient(90deg, #000 0%, rgba(0, 0, 0, 0.65) 55%, transparent 100%);
    pointer-events: none;
}

.event-section-hero::after {
    position: absolute;
    inset: 0 0 0 48%;
    background:
        radial-gradient(ellipse at 70% 72%, rgba(78, 136, 231, 0.13), transparent 54%),
        linear-gradient(120deg, transparent 32%, rgba(255, 255, 255, 0.42) 32.2% 46%, transparent 46.2%);
    content: "";
    pointer-events: none;
}

.event-section-hero-inner {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
}

.event-section-heading {
    min-width: 0;
}

.event-section-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.4rem 0.9rem;
    border-radius: 999px;
    background: #ffce24;
    color: #0b1f6b;
    font-size: 0.82rem;
    font-weight: 900;
    letter-spacing: 0.025em;
    line-height: 1;
    text-transform: uppercase;
}

.event-section-eyebrow svg {
    width: 1rem;
    height: 1rem;
    fill: currentColor;
}

.event-section-heading h1 {
    margin: 0.4rem 0 0;
    color: #0b1f6b;
    font-size: clamp(2.7rem, 5.5vw, 4.25rem);
    font-weight: 900;
    letter-spacing: -0.065em;
    line-height: 0.98;
}

.event-section-heading h1 span {
    color: #0759ed;
}

.event-section-heading p {
    margin: 0.5rem 0 0;
    color: #526484;
    font-size: clamp(0.95rem, 1.6vw, 1.2rem);
    font-weight: 600;
}

.event-section-explore-link {
    position: relative;
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 0.45rem;
    margin-bottom: 0.5rem;
    padding-bottom: 0.6rem;
    color: #063ab5;
    font-size: 1rem;
    font-weight: 900;
    text-decoration: none;
}

.event-section-explore-link::after {
    position: absolute;
    right: 0.6rem;
    bottom: 0;
    left: 0;
    height: 0.28rem;
    border-top: 2px solid #ffbf00;
    border-radius: 50%;
    content: "";
    transform: rotate(-2deg);
}

.event-section-explore-link svg {
    width: 1.35rem;
    height: 1.35rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2.5;
}

.event-section-content {
    padding-top: 1.5rem;
}

.event-section-page .event-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(1rem, 1.8vw, 1.5rem);
    align-items: stretch;
}

.event-catalog-page .event-section-content {
    padding-top: 1.25rem;
}

.event-catalog-page .event-catalog-filters {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(0, 1.5fr) minmax(0, 1.45fr) auto;
    gap: 0.6rem;
    margin: 0;
    padding: 0.8rem 1rem;
    border: 1px solid #e0e7fb;
    border-radius: 1.25rem;
    background: #fff;
    box-shadow: 0 10px 24px rgba(11, 31, 107, 0.12);
}

.event-catalog-page .event-catalog-filters .catalog-filter-actions {
    align-items: center;
    justify-content: flex-end;
}

.event-catalog-page .event-catalog-filters input,
.event-catalog-page .event-catalog-filters select {
    min-height: 3rem;
    border-color: #e2e8f5;
    border-radius: 0.65rem;
    color: var(--vdm-navy);
}

.event-catalog-page .event-catalog-filters input::placeholder {
    color: #777eaa;
}

.event-catalog-page .event-catalog-filters .btn {
    min-height: 2.8rem;
    white-space: nowrap;
}

.event-catalog-page .event-catalog-filters .btn-primary {
    border-color: var(--vdm-gold);
    background: var(--vdm-gold);
    color: var(--vdm-blue);
}

.event-catalog-page .event-catalog-filters .btn-primary:hover {
    border-color: var(--vdm-blue);
    background: var(--vdm-blue);
    color: var(--vdm-white);
}

.event-catalog-page .catalog-results {
    margin: 0 0 0.65rem;
}

.event-catalog-page .catalog-result-count {
    font-weight: 700;
}

.event-catalog-page .catalog-home-event-section .home-event-section-actions {
    display: none;
}

.event-catalog-page .event-catalog-load-more {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.6rem;
    margin: 1.5rem 0 0.5rem;
}

.event-catalog-page .event-catalog-load-more > form {
    margin: 0;
}

.event-catalog-page .event-catalog-load-more > form > button {
    min-width: 10rem;
    border-color: var(--vdm-gold);
    background: var(--vdm-gold);
    color: var(--vdm-navy);
    text-align: center;
}

.event-catalog-page .event-catalog-load-more > form > button:hover,
.event-catalog-page .event-catalog-load-more > form > button:focus-visible {
    border-color: var(--vdm-blue);
    background: var(--vdm-blue);
    color: var(--vdm-white);
}

.event-catalog-page .event-catalog-load-more-status {
    min-height: 1.2em;
    margin: 0;
    color: var(--vdm-muted);
    font-size: var(--vdm-font-size-sm);
}

.event-catalog-page .home-page .premium-event-showcase .premium-event-showcase-card {
    min-height: 0;
}

.event-section-page .premium-event-showcase-card {
    display: flex;
    min-width: 0;
    aspect-ratio: 0.8;
    flex-direction: column;
    min-height: 460px;
    border-radius: 20px;
    box-shadow: 0 14px 28px rgba(30, 66, 177, 0.16);
}

.event-section-page .premium-event-showcase-card .event-image,
.event-section-page .premium-event-showcase-card::before {
    height: 51%;
}

.event-section-page .premium-event-showcase-body {
    position: relative;
    z-index: 2;
    justify-content: flex-start;
    gap: 0.65rem;
    padding: 1rem 1.25rem 1.1rem;
}

.event-section-page .premium-event-showcase-body h3 {
    flex: 0 0 auto;
    margin: 0;
    font-size: clamp(1.3rem, 2vw, 1.7rem);
    line-height: 1.08;
}

.event-section-page .event-showcase-location {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 0.4rem;
    color: #10214b;
    font-size: clamp(0.9rem, 1.25vw, 1.05rem);
    font-weight: 700;
}

.event-section-page .event-showcase-location > svg {
    width: 1.2rem;
    height: 1.2rem;
    flex: 0 0 auto;
    fill: #0b1f6b;
}

.event-section-page .event-showcase-location > span:first-of-type {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.event-section-page .event-showcase-price {
    margin-left: auto;
    color: #536383;
    font-size: 0.78rem;
    font-weight: 700;
    white-space: nowrap;
}

.event-section-page .event-showcase-benefits {
    margin-top: 0.15rem;
    padding: 0.55rem 0;
    border-top: 1px solid #d5def2;
}

.event-section-page .event-showcase-benefits li {
    min-height: 2.5rem;
    gap: 0.35rem;
    font-size: clamp(0.68rem, 0.9vw, 0.8rem);
}

.event-section-page .event-showcase-benefits li > svg,
.event-section-page .event-showcase-benefits li > img {
    width: 1.5rem;
    height: 1.5rem;
}

.event-section-page .event-showcase-footer {
    min-height: 3.25rem;
    align-items: center;
    gap: 0.5rem;
    margin-top: auto;
    padding-top: 0.55rem;
    border-top: 1px solid #d5def2;
}

.event-section-page .event-showcase-organizer {
    min-width: 0;
}

.event-section-page .event-showcase-organizer small {
    font-size: 0.65rem;
}

.event-section-page .event-showcase-organizer strong {
    font-size: clamp(0.75rem, 1.2vw, 0.95rem);
}

.event-section-page .event-showcase-footer > .event-ticket-link {
    min-width: 0;
    min-height: 3rem;
    gap: 0.4rem;
    padding: 0.55rem 0.9rem;
    border-radius: 999px;
    background: #ffbf00;
    box-shadow: 0 7px 14px rgba(255, 191, 0, 0.24);
    color: #111827;
    font-size: clamp(0.78rem, 1vw, 0.9rem);
    font-weight: 900;
    text-decoration: none;
    white-space: nowrap;
}

.event-section-page .event-showcase-footer > .event-ticket-link svg {
    width: 1.1rem;
    height: 1.1rem;
    flex: 0 0 auto;
    fill: #0b1f6b;
}

.event-section-page .event-showcase-footer > .event-ticket-link:hover {
    background: #ffd13b;
    transform: translateY(-1px);
}

.event-section-page .event-showcase-footer > .event-ticket-link:focus-visible {
    outline: 3px solid #0759ed;
    outline-offset: 3px;
}

.event-section-page .premium-event-showcase-card > .meta-tag {
    top: 0.9rem;
    left: 0.9rem;
    gap: 0.4rem;
    max-width: calc(100% - 5rem);
    padding: 0.55rem 0.85rem;
    font-size: 0.8rem;
}

.event-section-page .premium-event-showcase-card > .meta-tag svg {
    width: 1.15rem;
    height: 1.15rem;
}

.event-section-page .premium-event-showcase-card .event-date-badge {
    top: 0.75rem;
    right: 0.75rem;
    width: 3.75rem;
    border-radius: 0.7rem;
}

.event-section-page .premium-event-showcase-card .event-date-badge span:first-child,
.event-section-page .premium-event-showcase-card .event-date-badge span:last-child {
    padding: 0.2rem 0.15rem;
    font-size: 0.62rem;
}

.event-section-page .premium-event-showcase-card .event-date-badge strong {
    font-size: 1.45rem;
}

@media (max-width: 900px) {
    .event-section-page .event-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .event-catalog-page .event-catalog-filters {
        grid-template-columns: minmax(0, 1fr);
    }

    .event-catalog-page .event-catalog-filters .catalog-filter-actions {
        grid-column: 1 / -1;
    }

    .event-section-page .premium-event-showcase-card {
        aspect-ratio: 0.72;
    }

    .event-section-page .premium-event-showcase-body {
        gap: 0.5rem;
        padding: 0.8rem;
    }

    .event-section-page .event-showcase-price {
        font-size: 0.68rem;
    }
}

@media (max-width: 760px) {
    .event-section-container {
        width: min(calc(100% - 1.25rem), 1440px);
    }

    .event-section-hero {
        padding: 1.2rem 0 1.35rem;
    }

    .event-section-hero-inner {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.8rem;
    }

    .event-section-heading h1 {
        font-size: clamp(2.45rem, 10vw, 3.6rem);
    }

    .event-section-heading p {
        max-width: 31rem;
        font-size: 0.92rem;
    }

    .event-section-explore-link {
        align-self: flex-end;
        margin: 0 0 0.1rem;
        font-size: 0.9rem;
    }

    .event-section-content {
        padding-top: 1rem;
    }

    .event-catalog-page .event-catalog-filters {
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 0.5rem;
        padding: 0.65rem;
        overflow-x: visible;
    }

    .event-catalog-page .event-catalog-filters #event-search,
    .event-catalog-page .event-catalog-filters #event-location {
        display: none;
    }

    .event-catalog-page .event-catalog-filters .catalog-filter-actions {
        grid-column: auto;
        display: flex;
        flex-wrap: nowrap;
    }

    .event-catalog-page .event-catalog-filters .catalog-filter-actions .btn {
        flex: 1 1 auto;
    }

    .event-section-page .event-grid {
        --mobile-event-grid-gap: 0.65rem;
        grid-auto-columns: calc((100% - var(--mobile-event-grid-gap)) / 2);
        grid-auto-flow: column;
        grid-template-columns: none;
        grid-template-rows: 1fr;
        gap: var(--mobile-event-grid-gap);
        overflow-x: auto;
        overscroll-behavior-x: contain;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .event-catalog-page .catalog-home-event-section .home-page .premium-event-showcase .event-grid {
        grid-auto-columns: auto;
        grid-auto-flow: row;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: none;
        overflow: visible;
        scroll-behavior: auto;
        scroll-snap-type: none;
        -webkit-overflow-scrolling: auto;
    }

    .event-catalog-page .catalog-home-event-section .home-page .premium-event-showcase .event-grid > .event-card {
        scroll-snap-align: none;
    }

    .event-catalog-page .catalog-home-event-section .home-page .premium-event-showcase .event-grid > .event-grid-empty {
        grid-column: 1 / -1;
        width: 100%;
    }

    .event-section-page .event-grid::-webkit-scrollbar {
        display: none;
    }

    .event-section-page .premium-event-showcase-card {
        min-width: 0;
        aspect-ratio: auto;
        min-height: 0;
        scroll-snap-align: start;
    }

    .event-section-page .premium-event-showcase-card .event-image,
    .event-section-page .premium-event-showcase-card::before {
        height: clamp(110px, 30vw, 160px);
        flex-basis: auto;
    }

    .event-section-page .premium-event-showcase-body {
        flex: 1 0 auto;
        gap: 0.45rem;
        padding: 0.65rem;
    }

    .event-section-page .premium-event-showcase-body h3 {
        font-size: clamp(0.95rem, 4vw, 1.2rem);
    }

    .event-section-page .event-showcase-location {
        flex-wrap: wrap;
        gap: 0.2rem;
        font-size: 0.72rem;
    }

    .event-section-page .event-showcase-location > svg {
        width: 0.9rem;
        height: 0.9rem;
    }

    .event-section-page .event-showcase-price {
        width: 100%;
        margin-left: 1.1rem;
        font-size: 0.58rem;
    }

    .event-section-page .event-showcase-benefits {
        padding: 0.35rem 0;
    }

    .event-section-page .event-showcase-benefits li {
        min-height: 2.2rem;
        flex-direction: column;
        gap: 0.08rem;
        padding: 0 0.05rem;
        font-size: 0.5rem;
        text-align: center;
    }

    .event-section-page .event-showcase-benefits li > svg,
    .event-section-page .event-showcase-benefits li > img {
        width: 0.8rem;
        height: 0.8rem;
    }

    .event-section-page .event-showcase-footer {
        flex-direction: column;
        align-items: stretch;
        gap: 0.35rem;
    }

    .event-section-page .event-showcase-organizer small {
        font-size: 0.52rem;
    }

    .event-section-page .event-showcase-organizer strong {
        font-size: 0.65rem;
    }

    .event-section-page .event-showcase-footer > .event-ticket-link {
        min-height: 1.9rem;
        gap: 0.15rem;
        padding: 0.25rem 0.35rem;
        font-size: 0.62rem;
        line-height: 1;
    }

    .event-section-page .event-showcase-footer > .event-ticket-link svg {
        width: 0.75rem;
        height: 0.75rem;
    }

    .event-section-page .premium-event-showcase-card > .meta-tag {
        top: 0.5rem;
        left: 0.5rem;
        gap: 0.25rem;
        padding: 0.35rem 0.5rem;
        font-size: 0.58rem;
    }

    .event-section-page .premium-event-showcase-card > .meta-tag svg {
        width: 0.75rem;
        height: 0.75rem;
    }

    .event-section-page .premium-event-showcase-card .event-date-badge {
        top: 0.45rem;
        right: 0.45rem;
        width: 2.4rem;
    }

    .event-section-page .premium-event-showcase-card .event-date-badge span:first-child,
    .event-section-page .premium-event-showcase-card .event-date-badge span:last-child {
        font-size: 0.42rem;
    }

    .event-section-page .premium-event-showcase-card .event-date-badge strong {
        font-size: 0.9rem;
    }
}

body:has(.memories-page) {
    background: #f5f7ff;
}

.memories-page {
    display: flex;
    min-height: 100vh;
    flex-direction: column;
    padding-bottom: 2rem;
    color: #0b1f6b;
}

.memories-container {
    width: min(1440px, calc(100% - 3rem));
    margin-inline: auto;
}

.memories-hero {
    position: relative;
    overflow: hidden;
    min-height: 205px;
    background:
        linear-gradient(90deg, rgba(4, 15, 58, 0.92) 0%, rgba(7, 25, 79, 0.78) 42%, rgba(7, 25, 79, 0.28) 100%),
        url("/images/memories-hero-festival.jpg") center 48% / cover no-repeat,
        #07194f;
    color: #fff;
}

.memories-hero::before,
.memories-hero::after {
    position: absolute;
    right: -3%;
    bottom: -72%;
    width: 58%;
    height: 150%;
    border: 2px solid rgba(74, 141, 255, 0.9);
    border-color: rgba(74, 141, 255, 0.9) transparent transparent;
    border-radius: 50%;
    content: "";
    transform: rotate(-9deg);
}

.memories-hero::after {
    right: -9%;
    bottom: -82%;
    width: 54%;
    border-top-color: rgba(55, 129, 255, 0.95);
    transform: rotate(-13deg);
}

.memories-hero-inner {
    position: relative;
    display: flex;
    min-height: 205px;
    align-items: center;
    gap: clamp(1.25rem, 3vw, 2.5rem);
    padding-block: 1.4rem;
}

.memories-hero-icon {
    width: clamp(5rem, 9vw, 7rem);
    flex: 0 0 auto;
    color: #fff;
    transform: rotate(-7deg);
}

.memories-hero-icon svg {
    display: block;
    width: 100%;
}

.memories-hero-copy {
    position: relative;
    z-index: 1;
}

.memories-eyebrow {
    display: block;
    margin-bottom: 0.1rem;
    color: #9dc2ff;
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.memories-hero h1 {
    margin: 0;
    color: #fff;
    font-size: clamp(2.6rem, 6vw, 4.25rem);
    font-weight: 800;
    letter-spacing: -0.06em;
    line-height: 1;
}

.memories-hero p {
    margin: 0.45rem 0 0;
    color: rgba(255, 255, 255, 0.93);
    font-size: clamp(0.9rem, 1.6vw, 1.05rem);
    font-weight: 600;
    line-height: 1.45;
}

.memories-hero-spark {
    position: absolute;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 0 1.1rem 0.3rem rgba(156, 196, 255, 0.75);
}

.memories-hero-spark-one {
    top: 24%;
    right: 18%;
    width: 0.45rem;
    height: 0.45rem;
}

.memories-hero-spark-two {
    top: 43%;
    right: 9%;
    width: 0.3rem;
    height: 0.3rem;
}

.memories-site-footer {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: var(--vdm-navy);
}

.memories-site-footer::before {
    position: absolute;
    z-index: -1;
    inset: 0;
    background: linear-gradient(rgba(5, 18, 60, 0.84), rgba(5, 18, 60, 0.9));
    content: "";
}

.memories-site-footer-background {
    position: absolute;
    z-index: -2;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 48%;
    pointer-events: none;
}

.site-default-footer {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: var(--vdm-navy);
}

.site-default-footer::before {
    position: absolute;
    z-index: -1;
    inset: 0;
    background: linear-gradient(rgba(5, 18, 60, 0.84), rgba(5, 18, 60, 0.9));
    content: "";
}

.site-footer-background {
    position: absolute;
    z-index: -2;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 48%;
    pointer-events: none;
}

.memories-content {
    display: flex;
    flex: 1 0 auto;
    flex-direction: column;
    padding-top: 1.15rem;
}

.memories-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.memories-tabs {
    display: flex;
    max-width: 100%;
    align-items: center;
    gap: 0.25rem;
    padding: 0.3rem;
    border: 1px solid #e1e7f8;
    border-radius: 999px;
    background: #fff;
    box-shadow: 0 5px 16px rgba(11, 31, 107, 0.08);
}

.memories-tabs a {
    display: inline-flex;
    min-height: 2.45rem;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    padding: 0.45rem 1rem;
    border-radius: 999px;
    color: #0b1f6b;
    font-size: 0.82rem;
    font-weight: 750;
    text-decoration: none;
    white-space: nowrap;
}

.memories-tabs a + a {
    position: relative;
}

.memories-tabs a + a::before {
    position: absolute;
    left: -0.14rem;
    width: 1px;
    height: 1.25rem;
    background: #d6def2;
    content: "";
}

.memories-tabs a.is-active {
    background: #1769d2;
    color: #fff;
    box-shadow: 0 3px 8px rgba(23, 105, 210, 0.22);
}

.memories-tabs a > span {
    font-size: 1.1rem;
    line-height: 1;
}

.memories-tabs svg,
.memories-event-detail svg,
.memories-gallery-button svg {
    width: 1.05rem;
    height: 1.05rem;
    flex: 0 0 auto;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.memories-category-filter {
    position: relative;
    min-width: 8.5rem;
}

.memories-category-filter select {
    width: 100%;
    min-height: 2.75rem;
    appearance: none;
    padding: 0.55rem 2.5rem 0.55rem 1rem;
    border: 1px solid #d5def5;
    border-radius: 999px;
    background: #fff;
    color: #0b1f6b;
    font: inherit;
    font-size: 0.8rem;
    font-weight: 700;
    cursor: pointer;
}

.memories-category-filter > svg {
    position: absolute;
    top: 50%;
    right: 0.85rem;
    width: 1rem;
    height: 1rem;
    fill: none;
    pointer-events: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
    transform: translateY(-50%);
}

.memories-event-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.memories-event-card {
    display: grid;
    min-width: 0;
    min-height: 205px;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
    gap: 0.85rem;
    padding: 0.35rem;
    overflow: hidden;
    border: 1px solid #e3e9f8;
    border-radius: 1rem;
    background: #fff;
    box-shadow: 0 6px 16px rgba(24, 55, 144, 0.1);
}

.memories-event-image-wrap {
    position: relative;
    min-width: 0;
    min-height: 12.5rem;
    overflow: hidden;
    border-radius: 0.75rem;
    background: #d9e3ff;
}

.memories-event-image-wrap > img,
.memories-image-placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.memories-image-placeholder {
    display: grid;
    min-height: 12.5rem;
    place-items: center;
    background: linear-gradient(135deg, #193c9d, #6d79d8);
    color: white;
    font-weight: 800;
}

.memories-past-badge {
    position: absolute;
    top: 0.65rem;
    left: 0.65rem;
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.38rem 0.65rem;
    border-radius: 999px;
    background: #0867ed;
    color: #fff;
    font-size: 0.68rem;
    font-weight: 800;
    box-shadow: 0 3px 10px rgba(0, 50, 163, 0.25);
}

.memories-past-badge > span {
    display: grid;
    width: 1rem;
    height: 1rem;
    place-items: center;
    border-radius: 50%;
    background: #fff;
    color: #0867ed;
    font-size: 0.72rem;
}

.memories-event-info {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    padding: 0.7rem 0.5rem 0.55rem 0;
}

.memories-event-info h2 {
    display: -webkit-box;
    margin: 0 0 0.45rem;
    overflow: hidden;
    color: #0b1f6b;
    font-size: clamp(0.95rem, 1.35vw, 1.25rem);
    font-weight: 800;
    letter-spacing: -0.03em;
    line-height: 1.18;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.memories-event-detail {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 0.45rem;
    margin: 0.2rem 0;
    color: #15285f;
    font-size: 0.76rem;
    font-weight: 600;
}

.memories-event-detail svg {
    width: 0.95rem;
    height: 0.95rem;
    color: #0b1f6b;
}

.memories-event-detail span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.memories-event-description {
    display: -webkit-box;
    margin: 0.45rem 0 0.6rem;
    overflow: hidden;
    color: #24345f;
    font-size: 0.76rem;
    line-height: 1.35;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.memories-gallery-button {
    display: inline-flex;
    min-height: 2.35rem;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    margin-top: auto;
    padding: 0.45rem 0.8rem;
    border: 0;
    border-radius: 999px;
    background: #1769d2;
    color: #fff;
    font: inherit;
    font-size: 0.72rem;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
    transition: background-color 150ms ease, transform 150ms ease;
}

.memories-gallery-button:hover,
.memories-gallery-button:focus-visible {
    background: #0b4fa8;
    transform: translateY(-1px);
}

.memories-gallery-button:focus-visible,
.memories-tabs a:focus-visible,
.memories-category-filter select:focus-visible {
    outline: 3px solid #2474fa;
    outline-offset: 3px;
}

.memories-gallery-button svg {
    width: 0.95rem;
    height: 0.95rem;
}

.memories-gallery-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.memories-gallery-grid .memories-event-card {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    padding: 0.45rem;
}

.memories-gallery-grid .memories-event-image-wrap {
    min-height: 14rem;
}

.memories-gallery-grid .memories-event-info {
    padding: 0.8rem 0.45rem 0.4rem;
}

.memories-pagination {
    display: flex;
    justify-content: center;
    margin: 1.5rem 0;
}

.memories-load-more {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.4rem;
    margin-top: 1.25rem;
}

.memories-load-more form {
    margin: 0;
}

.memories-load-more button {
    min-width: 10rem;
    border-color: #1769d2;
    background: #1769d2;
    color: #fff;
}

.memories-load-more button:hover,
.memories-load-more button:focus-visible {
    border-color: #0b4fa8;
    background: #0b4fa8;
    color: #fff;
}

.memories-load-more-status {
    min-height: 1.2em;
    margin: 0;
    color: #586581;
    font-size: 0.8rem;
}

.memories-thanks-banner {
    position: relative;
    display: flex;
    min-height: 4.25rem;
    align-items: center;
    gap: 1rem;
    margin-top: auto;
    padding: 0.7rem 1.4rem;
    overflow: hidden;
    border-radius: 0.9rem;
    background: linear-gradient(100deg, #dce6ff, #eff3ff);
}

.memories-trophy {
    flex: 0 0 auto;
    width: 3rem;
    height: 3rem;
}

.memories-trophy svg {
    display: block;
    width: 100%;
    height: 100%;
}

.memories-thanks-banner h2,
.memories-thanks-banner p {
    position: relative;
    z-index: 1;
    margin: 0;
}

.memories-thanks-banner h2 {
    color: #102575;
    font-size: 1rem;
    font-weight: 800;
}

.memories-thanks-banner p {
    margin-top: 0.1rem;
    color: #12235f;
    font-size: 0.8rem;
    font-weight: 600;
}

.memories-thanks-swoosh {
    position: absolute;
    right: 2%;
    bottom: -1.7rem;
    width: 10rem;
    height: 3.2rem;
    border-top: 4px solid #1769d2;
    border-radius: 50%;
    transform: rotate(-13deg);
}

.memories-thanks-swoosh::after {
    position: absolute;
    top: 0.55rem;
    right: 0.25rem;
    width: 7rem;
    height: 1.8rem;
    border-top: 4px solid #2474fa;
    border-radius: 50%;
    content: "";
}

.memories-empty-state {
    display: flex;
    min-height: 18rem;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    border: 1px dashed #cbd6f0;
    border-radius: 1rem;
    background: #fff;
    text-align: center;
}

.memories-empty-state > span {
    color: #1769d2;
    font-size: 2.3rem;
}

.memories-empty-state h2 {
    margin: 0.6rem 0 0.25rem;
    color: #0b1f6b;
}

.memories-empty-state p {
    margin: 0 0 1rem;
    color: #586581;
}

.memories-primary-button {
    display: inline-flex;
    min-height: 2.6rem;
    align-items: center;
    justify-content: center;
    padding: 0.55rem 1.2rem;
    border-radius: 999px;
    background: #1769d2;
    color: #fff;
    font-weight: 800;
    text-decoration: none;
}

.memories-gallery-dialog {
    position: fixed;
    width: min(900px, calc(100% - 2rem));
    max-width: none;
    max-height: min(90vh, 900px);
    padding: 1rem;
    overflow: visible;
    border: 0;
    border-radius: 1rem;
    background: #08194f;
    color: white;
    box-shadow: 0 24px 80px rgba(2, 10, 40, 0.45);
}

.memories-gallery-dialog::backdrop {
    background: rgba(4, 12, 38, 0.78);
    backdrop-filter: blur(4px);
}

.memories-gallery-dialog > img {
    display: block;
    width: 100%;
    max-height: calc(90vh - 5.5rem);
    border-radius: 0.65rem;
    object-fit: contain;
}

.memories-gallery-dialog h2 {
    margin: 0.8rem 3rem 0.15rem 0;
    font-size: 1rem;
}

.memories-gallery-close {
    position: absolute;
    z-index: 1;
    top: 0.35rem;
    right: 0.35rem;
    display: grid;
    width: 2.5rem;
    height: 2.5rem;
    place-items: center;
    border: 0;
    border-radius: 50%;
    background: #1769d2;
    color: #fff;
    font-size: 1.7rem;
    cursor: pointer;
}

@media (max-width: 900px) {
    .memories-container {
        width: calc(100% - 2rem);
    }

    .memories-event-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .memories-gallery-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 600px) {
    .memories-container {
        width: calc(100% - 1rem);
    }

    .memories-hero,
    .memories-hero-inner {
        min-height: 170px;
    }

    .memories-hero-inner {
        gap: 0.85rem;
    }

    .memories-hero-icon {
        width: 4rem;
    }

    .memories-hero h1 {
        font-size: 2.5rem;
    }

    .memories-hero p {
        font-size: 0.78rem;
    }

    .memories-eyebrow {
        font-size: 0.58rem;
    }

    .memories-toolbar {
        align-items: stretch;
        flex-direction: column;
        gap: 0.65rem;
    }

    .memories-tabs {
        justify-content: space-between;
        gap: 0;
        padding: 0.22rem;
    }

    .memories-tabs a {
        min-height: 2.3rem;
        gap: 0.25rem;
        padding: 0.35rem 0.6rem;
        font-size: 0.7rem;
    }

    .memories-category-filter {
        width: 100%;
    }

    .memories-event-grid,
    .memories-gallery-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 0.7rem;
    }

    .memories-event-card {
        min-height: 175px;
        grid-template-columns: minmax(0, 0.9fr) minmax(0, 1fr);
        gap: 0.6rem;
    }

    .memories-event-image-wrap,
    .memories-image-placeholder {
        min-height: 10.5rem;
    }

    .memories-event-info {
        padding-top: 0.5rem;
    }

    .memories-event-info h2 {
        font-size: 0.94rem;
    }

    .memories-event-detail,
    .memories-event-description {
        font-size: 0.68rem;
    }

    .memories-past-badge {
        top: 0.45rem;
        left: 0.45rem;
        padding: 0.3rem 0.45rem;
        font-size: 0.58rem;
    }

    .memories-gallery-button {
        min-height: 2rem;
        gap: 0.25rem;
        padding-inline: 0.55rem;
        font-size: 0.64rem;
    }

    .memories-gallery-grid .memories-event-card {
        grid-template-columns: minmax(0, 1fr);
    }

    .memories-gallery-grid .memories-event-image-wrap {
        min-height: 13rem;
    }

    .memories-thanks-banner {
        gap: 0.6rem;
        padding: 0.7rem 0.8rem;
    }

    .memories-trophy {
        width: 2.4rem;
        height: 2.4rem;
    }

    .memories-thanks-banner h2 {
        font-size: 0.82rem;
    }

    .memories-thanks-banner p {
        font-size: 0.68rem;
    }

    .memories-thanks-swoosh {
        right: -10%;
    }
}

.admin-memories-list,
.admin-memories-editor > .page-card {
    margin-bottom: 1.25rem;
}

.admin-memories-table-wrap {
    width: 100%;
    overflow-x: auto;
}

.admin-memories-table {
    width: 100%;
    border-collapse: collapse;
    text-align: left;
}

.admin-memories-table th,
.admin-memories-table td {
    padding: 0.8rem;
    border-bottom: 1px solid #e7ebf3;
    vertical-align: middle;
}

.admin-memories-table th {
    color: #53617b;
    font-size: 0.74rem;
    text-transform: uppercase;
}

.admin-memories-table td strong,
.admin-memories-table td small {
    display: block;
}

.admin-memories-table td small {
    margin-top: 0.15rem;
    color: #65718a;
}

.admin-memories-table .btn {
    min-height: 2.25rem;
    padding: 0.45rem 0.7rem;
    font-size: 0.75rem;
}

.admin-memories-visibility-form {
    margin: 0;
}

.admin-memories-upload {
    max-width: 42rem;
}

.admin-memories-upload input[type="file"] {
    width: 100%;
    min-height: 2.75rem;
    padding: 0.6rem;
    border: 1px solid #d5ddef;
    border-radius: 0.6rem;
    background: #fff;
}

.admin-memories-media-section {
    margin-top: 1.75rem;
}

.admin-memories-media-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr));
    gap: 1rem;
}

.admin-memories-media-card {
    min-width: 0;
    padding: 0.65rem;
}

.admin-memories-media-card > img,
.admin-memories-media-card > video {
    width: 100%;
    height: 12rem;
    border-radius: 0.55rem;
    background: #10172b;
    object-fit: cover;
}

.admin-memories-media-card > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin-top: 0.6rem;
}

.admin-memories-media-card p {
    flex: 1 1 auto;
    margin: 0;
    color: #53617b;
    font-size: 0.8rem;
}

.admin-memories-media-card form {
    margin: 0;
}

.memories-gallery-dialog-items {
    display: grid;
    max-height: calc(90vh - 5.5rem);
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr));
    gap: 0.65rem;
    overflow-y: auto;
}

.memories-gallery-dialog-items > img,
.memories-gallery-dialog-items > video {
    display: block;
    width: 100%;
    max-height: calc(90vh - 7rem);
    border-radius: 0.65rem;
    background: #030817;
    object-fit: contain;
}

@media (max-width: 760px) {
    .admin-memories-table th,
    .admin-memories-table td {
        padding: 0.6rem;
    }

    .admin-memories-editor .section-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .admin-memories-media-card > div {
        align-items: flex-start;
        flex-wrap: wrap;
    }
}

.about-page {
    overflow: hidden;
    color: #17213a;
    background: #fff;
}

.about-container {
    width: min(1120px, calc(100% - 3rem));
    margin-inline: auto;
}

.about-hero {
    position: relative;
    display: flex;
    min-height: 390px;
    align-items: center;
    overflow: hidden;
    background:
        linear-gradient(90deg, rgba(7, 17, 47, 0.9) 0%, rgba(7, 17, 47, 0.66) 52%, rgba(7, 17, 47, 0.2) 100%),
        url("../images/memories-hero-festival.jpg") center 48% / cover no-repeat;
}

.about-hero::after {
    position: absolute;
    inset: auto 0 0;
    height: 5px;
    background: linear-gradient(90deg, #f8b51b, #ffdb77, #f8b51b);
    content: "";
}

.about-hero-inner {
    position: relative;
    z-index: 1;
    padding-block: 4.5rem;
}

.about-eyebrow,
.about-section-kicker {
    display: inline-block;
    color: #ecaa1a;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.about-hero h1 {
    max-width: 680px;
    margin: 0.8rem 0 0;
    color: #fff;
    font-size: clamp(2.8rem, 6vw, 5rem);
    font-weight: 850;
    letter-spacing: -0.055em;
    line-height: 0.98;
}

.about-hero h1 span,
.about-cta h2 span {
    color: #f5b52b;
}

.about-hero p {
    max-width: 540px;
    margin: 1.15rem 0 0;
    color: rgba(255, 255, 255, 0.85);
    font-size: 1.05rem;
    line-height: 1.7;
}

.about-story {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    align-items: center;
    gap: clamp(2.5rem, 7vw, 6rem);
    padding-block: 6rem;
}

.about-story-copy h2,
.about-benefits > h2 {
    margin: 0.45rem 0 1rem;
    color: #14234f;
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 850;
    letter-spacing: -0.045em;
    line-height: 1.1;
}

.about-story-copy p {
    margin: 0 0 1rem;
    color: #5b657a;
    font-size: 0.98rem;
    line-height: 1.8;
}

.about-primary-link {
    display: inline-flex;
    min-height: 3rem;
    align-items: center;
    gap: 1.1rem;
    margin-top: 0.5rem;
    padding: 0.65rem 1.2rem;
    border-radius: 0.55rem;
    background: #142b70;
    color: #fff;
    font-size: 0.9rem;
    font-weight: 750;
    text-decoration: none;
    transition: background-color 160ms ease, transform 160ms ease;
}

.about-primary-link:hover {
    transform: translateY(-2px);
    background: #1b3c97;
}

.about-story-art {
    position: relative;
    min-height: 350px;
    padding: 0 2.5rem 2.5rem 0;
}

.about-story-event-image {
    display: block;
    width: 100%;
    height: 315px;
    border-radius: 1rem;
    object-fit: cover;
    box-shadow: 0 1.5rem 3.5rem rgba(19, 39, 93, 0.19);
}

.about-ticket-art {
    position: absolute;
    right: 0;
    bottom: 0;
    width: min(48%, 240px);
    padding: 0.65rem;
    border: 5px solid #fff;
    border-radius: 0.9rem;
    background: #fff;
    box-shadow: 0 1rem 2.5rem rgba(19, 39, 93, 0.2);
    transform: rotate(5deg);
}

.about-ticket-art img {
    display: block;
    width: 100%;
    height: 160px;
    border-radius: 0.5rem;
    object-fit: cover;
}

.about-story-spark {
    position: absolute;
    top: -1.3rem;
    right: 1.5rem;
    color: #f1b52f;
    font-size: 3rem;
}

.about-benefits {
    padding: 3.8rem clamp(1.5rem, 5vw, 4rem) 4rem;
    border: 1px solid #e8edf7;
    border-radius: 1.2rem;
    background: #f7f9fd;
}

.about-benefits > h2 {
    margin: 0 0 2.2rem;
    text-align: center;
    font-size: clamp(1.8rem, 3.5vw, 2.5rem);
}

.about-benefit-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.5rem;
}

.about-benefit {
    text-align: center;
}

.about-benefit-icon,
.about-purpose-icon {
    display: inline-grid;
    width: 3.25rem;
    height: 3.25rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 1rem;
    background: #e8efff;
    color: #173a96;
}

.about-benefit-icon svg,
.about-purpose-icon svg {
    width: 1.55rem;
    height: 1.55rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.7;
}

.about-benefit h3,
.about-purpose h3 {
    margin: 1rem 0 0.4rem;
    color: #172a63;
    font-size: 1rem;
    font-weight: 800;
}

.about-benefit p,
.about-purpose p {
    margin: 0;
    color: #667087;
    font-size: 0.85rem;
    line-height: 1.65;
}

.about-purpose {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 0.9fr);
    align-items: center;
    gap: clamp(2rem, 6vw, 5rem);
    padding-block: 6rem;
}

.about-purpose-image {
    display: block;
    width: 100%;
    height: 370px;
    border-radius: 1rem;
    object-fit: cover;
    box-shadow: 0 1.25rem 3rem rgba(19, 39, 93, 0.16);
}

.about-purpose-list {
    display: grid;
    gap: 1.6rem;
}

.about-purpose-list article {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
}

.about-purpose-icon {
    margin-top: 0.1rem;
}

.about-purpose h3 {
    margin: 0 0 0.35rem;
    font-size: 1.1rem;
}

.about-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    margin-bottom: 5rem;
    padding: 2.4rem clamp(1.5rem, 5vw, 3.5rem);
    border-radius: 1rem;
    background: linear-gradient(110deg, #10245f, #1d3b8f);
    box-shadow: 0 1rem 2.5rem rgba(16, 36, 95, 0.2);
}

.about-cta h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(1.6rem, 3.4vw, 2.4rem);
    font-weight: 850;
    letter-spacing: -0.04em;
    line-height: 1.15;
}

.about-cta p {
    margin: 0.6rem 0 0;
    color: rgba(255, 255, 255, 0.78);
    font-size: 0.93rem;
}

.about-cta > a {
    display: inline-flex;
    min-height: 3.1rem;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    padding: 0.7rem 1.35rem;
    border-radius: 0.55rem;
    background: #f4b52d;
    color: #17234a;
    font-size: 0.9rem;
    font-weight: 800;
    text-decoration: none;
    transition: background-color 160ms ease, transform 160ms ease;
}

.about-cta > a:hover {
    transform: translateY(-2px);
    background: #ffd166;
}

@media (max-width: 800px) {
    .about-container {
        width: min(100% - 2rem, 680px);
    }

    .about-hero {
        min-height: 340px;
        background-position: 58% center;
    }

    .about-story,
    .about-purpose {
        grid-template-columns: minmax(0, 1fr);
        gap: 2.5rem;
        padding-block: 4rem;
    }

    .about-story-art {
        width: min(100%, 560px);
        justify-self: center;
    }

    .about-benefit-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: 2rem;
    }

    .about-purpose-image {
        height: 320px;
    }
}

@media (max-width: 520px) {
    .about-container {
        width: calc(100% - 2rem);
    }

    .about-hero {
        min-height: 320px;
        background-position: 61% center;
    }

    .about-hero-inner {
        padding-block: 3.5rem;
    }

    .about-hero h1 {
        font-size: clamp(2.45rem, 11vw, 3.45rem);
    }

    .about-hero p {
        max-width: 24rem;
        font-size: 0.92rem;
    }

    .about-story {
        gap: 2rem;
        padding-block: 3.5rem;
    }

    .about-story-art {
        min-height: 275px;
        padding: 0 1.7rem 1.7rem 0;
    }

    .about-story-event-image {
        height: 245px;
    }

    .about-ticket-art {
        width: 44%;
        padding: 0.4rem;
        border-width: 3px;
    }

    .about-ticket-art img {
        height: 105px;
    }

    .about-story-spark {
        top: -1rem;
        font-size: 2.4rem;
    }

    .about-benefits {
        padding: 2.5rem 1rem;
    }

    .about-benefit-grid {
        gap: 1.6rem 0.85rem;
    }

    .about-benefit-icon {
        width: 2.8rem;
        height: 2.8rem;
        border-radius: 0.8rem;
    }

    .about-benefit h3 {
        font-size: 0.9rem;
    }

    .about-benefit p {
        font-size: 0.78rem;
    }

    .about-purpose {
        gap: 2rem;
        padding-block: 3.5rem;
    }

    .about-purpose-image {
        height: 245px;
    }

    .about-purpose-list {
        gap: 1.3rem;
    }

    .about-purpose-list article {
        gap: 0.75rem;
    }

    .about-purpose-icon {
        width: 2.7rem;
        height: 2.7rem;
        border-radius: 0.8rem;
    }

    .about-cta {
        align-items: flex-start;
        flex-direction: column;
        gap: 1.3rem;
        margin-bottom: 3.5rem;
        padding: 1.7rem 1.3rem;
    }
}

body:has(.how-it-works-page) .site-header {
    position: absolute;
    z-index: 20;
    inset: 0 0 auto;
    border-color: transparent;
    background: #04144e;
    box-shadow: none;
}

.how-it-works-page {
    color: #0c245f;
    background: #f5f7ff;
}

.how-it-works-container {
    width: min(1064px, calc(100% - 4rem));
    margin-inline: auto;
}

.how-it-works-hero {
    position: relative;
    display: flex;
    min-height: 296px;
    align-items: flex-end;
    overflow: hidden;
    background:
        linear-gradient(90deg, rgba(4, 19, 75, 0.97) 0%, rgba(5, 28, 102, 0.87) 40%, rgba(7, 37, 127, 0.2) 100%),
        linear-gradient(0deg, rgba(3, 17, 69, 0.22), rgba(3, 17, 69, 0.22)),
        url("../images/memories-hero-festival.jpg") center 48% / cover no-repeat;
}

.how-it-works-hero-copy {
    position: relative;
    padding-top: 5.3rem;
    padding-bottom: 2.45rem;
}

.how-it-works-eyebrow {
    display: inline-flex;
    min-height: 1.65rem;
    align-items: center;
    padding: 0.18rem 0.8rem;
    border-radius: 999px;
    background: #ffc400;
    color: #0b245f;
    font-size: 0.78rem;
    font-weight: 850;
    letter-spacing: 0.045em;
    line-height: 1;
    text-transform: uppercase;
}

.how-it-works-hero h1 {
    max-width: 650px;
    margin: 0.4rem 0 0;
    color: #fff;
    font-size: clamp(2.6rem, 5vw, 3.65rem);
    font-weight: 850;
    letter-spacing: -0.045em;
    line-height: 0.99;
}

.how-it-works-hero h1 span {
    color: #ffc400;
}

.how-it-works-hero p {
    margin: 0.65rem 0 0;
    color: #fff;
    font-size: 0.98rem;
    font-weight: 650;
    line-height: 1.5;
}

.how-it-works-swoosh {
    position: absolute;
    bottom: 1.05rem;
    left: max(2rem, calc((100% - 1064px) / 2));
    width: 13.5rem;
    height: 1rem;
    border-top: 6px solid #ffc400;
    border-radius: 50%;
    transform: rotate(-4deg);
}

.how-it-works-steps {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.2rem;
    padding-block: 1.9rem 1.6rem;
}

.how-it-works-step {
    position: relative;
    display: grid;
    min-width: 0;
    min-height: 126px;
    grid-template-columns: 2.4rem minmax(0, 1fr) minmax(7.7rem, 9.5rem);
    align-items: center;
    gap: 0.85rem;
    overflow: hidden;
    padding: 0.9rem 1rem 0.9rem 1.4rem;
    border: 1px solid #e8ebf8;
    border-radius: 1.25rem;
    background: #fff;
    box-shadow: 0 0.35rem 1rem rgba(23, 47, 119, 0.1);
}

.how-it-works-step-number {
    display: grid;
    width: 2.25rem;
    height: 2.25rem;
    align-self: start;
    place-items: center;
    margin-top: 0.25rem;
    border-radius: 50%;
    background: #0c245f;
    color: #fff;
    font-size: 1.3rem;
    font-weight: 850;
    line-height: 1;
}

.how-it-works-step-copy {
    position: relative;
    z-index: 1;
    min-width: 0;
}

.how-it-works-step h2 {
    margin: 0 0 0.4rem;
    color: #0c245f;
    font-size: clamp(1rem, 1.65vw, 1.35rem);
    font-weight: 850;
    letter-spacing: -0.035em;
    line-height: 1.2;
}

.how-it-works-step p {
    max-width: 15rem;
    margin: 0;
    color: #0c245f;
    font-size: 0.86rem;
    line-height: 1.42;
}

.how-it-works-art {
    position: relative;
    display: grid;
    width: 100%;
    height: 7rem;
    place-items: center;
}

.how-it-works-art svg {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    overflow: visible;
}

.how-art-orb {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 88%;
    height: 82%;
    border-radius: 50%;
    background: linear-gradient(140deg, #fff4cf, #f8f6ff 70%);
    transform: translate(-50%, -50%);
}

.how-art-ticket .how-art-orb {
    background: linear-gradient(140deg, #f3f5ff, #fff7da);
}

.how-art-payment .how-art-orb {
    background: linear-gradient(140deg, #eaf3ff, #f7f8ff);
}

.how-art-phone .how-art-orb {
    background: linear-gradient(140deg, #fff3cc, #f6f7ff);
}

@media (max-width: 820px) {
    .how-it-works-container {
        width: min(680px, calc(100% - 2rem));
    }

    .how-it-works-hero {
        min-height: 330px;
        background-position: 58% center;
    }

    .how-it-works-hero-copy {
        padding-top: 6rem;
        padding-bottom: 2.8rem;
    }

    .how-it-works-steps {
        grid-template-columns: minmax(0, 1fr);
        gap: 0.9rem;
        padding-block: 1.3rem;
    }

    .how-it-works-step {
        min-height: 120px;
        grid-template-columns: 2.4rem minmax(0, 1fr) 9rem;
    }

    .how-it-works-swoosh {
        left: 1rem;
    }
}

@media (max-width: 520px) {
    .how-it-works-hero {
        min-height: 335px;
        align-items: flex-end;
        background-position: 60% center;
    }

    .how-it-works-hero-copy {
        padding-top: 6.5rem;
        padding-bottom: 2.6rem;
    }

    .how-it-works-hero h1 {
        font-size: clamp(2.4rem, 11vw, 3.2rem);
    }

    .how-it-works-hero p {
        max-width: 23rem;
        font-size: 0.9rem;
    }

    .how-it-works-swoosh {
        bottom: 1.2rem;
        width: 10rem;
        border-top-width: 5px;
    }

    .how-it-works-step {
        min-height: 118px;
        grid-template-columns: 2.2rem minmax(0, 1fr) 6.8rem;
        gap: 0.65rem;
        padding: 0.8rem 0.6rem 0.8rem 0.8rem;
        border-radius: 1rem;
    }

    .how-it-works-step-number {
        width: 2rem;
        height: 2rem;
        font-size: 1.15rem;
    }

    .how-it-works-step h2 {
        font-size: 0.98rem;
    }

    .how-it-works-step p {
        font-size: 0.76rem;
    }

    .how-it-works-art {
        height: 6rem;
    }
}
