:root {
  color-scheme: dark;
  /* Colors and font come from the shared theme in /cm-theme.css */
  --page: var(--cm-page);
  --surface: var(--cm-card);
  --surface-raised: var(--cm-raised);
  --surface-soft: var(--cm-tabbar);
  --line: var(--cm-line);
  --line-strong: var(--cm-line-strong);
  --text: var(--cm-text);
  --muted: var(--cm-muted);
  --quiet: var(--cm-quiet);
  --pink: var(--cm-accent);
  --pink-soft: var(--cm-accent-soft);
  --pink-tile: var(--cm-accent-tile);
  --pink-line: var(--cm-accent-line);
  --pink-glow: var(--cm-accent-glow);
  --on-pink: var(--cm-on-accent);
  --green: var(--cm-green);
  --green-soft: var(--cm-green-soft);
  --amber: var(--cm-amber);
  --radius-card: var(--cm-radius-card);
  --radius-control: var(--cm-radius-control);
  font-family: var(--cm-font);
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  background: var(--page);
  color: var(--text);
}

* { box-sizing: border-box; }
html { min-width: 320px; min-height: 100%; background: var(--page); }
body { min-width: 320px; min-height: 100vh; margin: 0; background: var(--page); }
button, input { font: inherit; }
button { color: inherit; }
button:not(:disabled), a[href], [role="button"]:not([aria-disabled="true"]), select:not(:disabled), summary, label[for], input[type="checkbox"]:not(:disabled), input[type="radio"]:not(:disabled) { cursor: pointer; }
button:disabled, [aria-disabled="true"] { cursor: not-allowed; }
button:focus-visible, a:focus-visible { outline: 3px solid #ff9af3; outline-offset: 3px; }
[hidden] { display: none !important; }

.environment-ribbon { position: sticky; z-index: 30; top: 0; display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 30px; padding: 5px 12px; background: #32102e; color: #ffd7fa; font-size: 13.8px; font-weight: 800; letter-spacing: .13em; text-align: center; }
.environment-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--pink); box-shadow: 0 0 10px rgb(249 57 227 / 60%); }
.environment-caption { color: #d5a9d0; font-size: 12.4px; font-weight: 550; letter-spacing: .02em; }

.sign-in-screen { display: grid; min-height: calc(100vh - 30px); grid-template-rows: 1fr auto; align-items: center; padding: 38px 20px 22px; }
.auth-boot { grid-template-rows: 1fr; }
.auth-boot .sign-in-card { width: min(100%, 410px); }
.auth-boot .sign-in-card > .wordmark { display: inline-block; margin-bottom: 34px; }
.boot-message { display: flex; align-items: center; gap: 13px; color: var(--muted); font-size: 17.9px; font-weight: 600; }
.sign-in-card { width: min(100%, 410px); margin: 0 auto; padding: 0; }
.wordmark { color: var(--text); font-size: 38.6px; font-weight: 850; letter-spacing: -.08em; text-decoration: none; }
.wordmark span { color: var(--pink); }
.sign-in-card > .wordmark { display: inline-block; margin-bottom: 45px; }
.eyebrow { margin: 0 0 9px; color: var(--muted); font-size: 13.8px; font-weight: 800; letter-spacing: .16em; }
.sign-in-card .eyebrow { color: var(--pink); }
h1, h2, h3, p { margin-top: 0; }
.sign-in-card h1 { margin: 0 0 10px; font-size: clamp(46.9px, 10.3vw, 60.7px); font-weight: 760; letter-spacing: -.055em; line-height: 1.05; }
.intro { margin: 0 0 28px; color: var(--muted); font-size: 20.7px; line-height: 1.55; }
#login-form, #password-setup-form { display: grid; gap: 9px; }
#login-form label { margin-top: 8px; color: #dedce1; font-size: 17.9px; font-weight: 650; }
#password-setup-form label { margin-top: 8px; color: #dedce1; font-size: 17.9px; font-weight: 650; }
#login-form input, #password-setup-form input { width: 100%; min-height: 52px; padding: 13px 14px; border: 1px solid var(--line-strong); border-radius: 12px; background: var(--surface); color: var(--text); }
#login-form input:focus, #password-setup-form input:focus { border-color: var(--pink); outline: 2px solid var(--pink-soft); }
.button-primary, .button-secondary { display: inline-flex; min-height: 50px; align-items: center; justify-content: center; gap: 10px; padding: 12px 17px; border: 1px solid transparent; border-radius: 12px; font-size: 19.3px; font-weight: 750; text-decoration: none; }
.button-primary { background: var(--pink); color: #fff; }
.button-primary:disabled { cursor: not-allowed; opacity: .48; }
.sign-in-button { width: 100%; margin-top: 13px; }
.form-note { margin: 12px 0 0; color: var(--quiet); font-size: 16.6px; text-align: center; }
.form-note[data-state="error"] { color: #ffaaa7; }
.form-note[data-state="success"] { color: var(--green); }
.auth-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 9px; }
.auth-actions .quiet-action { min-height: 38px; color: #d6cfd9; font-size: 13.8px; text-align: center; }
.setup-copy { margin: 8px 0; color: var(--muted); font-size: 15.2px; line-height: 1.45; }
.workspace-picker-screen { display: flex; min-height: calc(100svh - 30px); flex-direction: column; align-items: center; justify-content: flex-start; padding: 24px 20px 16px; }
.workspace-picker-screen .sign-in-card { width: min(100%, 560px); margin: 0 auto; }
.workspace-picker-screen .sign-in-card > .wordmark { margin-bottom: 28px; }
.workspace-picker-screen .eyebrow { margin-bottom: 8px; }
.workspace-picker-screen h1 { margin-bottom: 8px; font-size: clamp(35px, 8vw, 50px); line-height: 1.05; }
.workspace-picker-screen .intro { margin-bottom: 0; font-size: 17.9px; line-height: 1.45; }
.workspace-picker-screen .sign-in-footer { margin-top: auto; }
.workspace-options { display: grid; gap: 22px; margin: 23px 0 8px; }
.workspace-group { display: grid; gap: 7px; }
.workspace-group h2 { margin: 0; font-size: 16.6px; font-weight: 750; letter-spacing: -.01em; }
.workspace-group > p { margin: 0 0 3px; color: var(--muted); font-size: 14.5px; line-height: 1.45; }
.workspace-group-list { display: grid; gap: 9px; }
.workspace-choice { display: flex; width: 100%; min-height: 78px; align-items: center; justify-content: space-between; gap: 14px; padding: 14px 15px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); color: var(--text); text-align: left; transition: border-color 150ms ease, background 150ms ease, transform 150ms ease; }
.workspace-choice:not(:disabled):hover { transform: translateY(-1px); border-color: var(--pink-line); background: #1b171c; }
.workspace-choice:not(:disabled):focus-visible { outline: 3px solid #ff9af3; outline-offset: 3px; }
.workspace-choice-copy { display: grid; min-width: 0; gap: 6px; }
.workspace-choice-heading { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.workspace-choice strong { font-size: 17.9px; line-height: 1.2; }
.workspace-role { display: inline-flex; min-height: 21px; align-items: center; padding: 3px 7px; border: 1px solid var(--line-strong); border-radius: 999px; color: #c9c5ce; font-size: 11.5px; font-weight: 700; line-height: 1; }
.workspace-choice small { color: var(--muted); font-size: 14.5px; line-height: 1.4; }
.workspace-choice-action { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 5px; color: #ff9af3; font-size: 14px; font-weight: 750; }
.workspace-choice-action span { font-size: 19px; }
.workspace-choice.is-disabled { min-height: 66px; border-color: #29292e; background: #111113; }
.workspace-choice.is-disabled .workspace-choice-copy { gap: 4px; }
.workspace-choice.is-disabled strong { color: #c5c2c9; font-size: 16.6px; }
.workspace-choice.is-disabled .workspace-role { color: var(--quiet); }
.workspace-choice.is-disabled small { color: var(--quiet); }
.workspace-status { flex: 0 0 auto; color: var(--quiet); font-size: 12.4px; font-weight: 700; }
.workspace-picker-screen #workspace-sign-out { min-height: 40px; margin-top: 3px; color: #c3bec8; }
.workspace-choice[aria-busy="true"] { cursor: wait; border-color: var(--pink-line); }
.workspace-choice-action .loading-spinner { width: 17px; height: 17px; border-width: 2px; }
.workspace-loading { position: fixed; z-index: 50; inset: 30px 0 0; display: flex; align-items: center; justify-content: center; gap: 13px; padding: 24px; background: rgb(13 13 15 / 82%); color: var(--text); font-size: 17.9px; font-weight: 650; backdrop-filter: blur(8px); }
.loading-spinner { display: inline-block; width: 23px; height: 23px; flex: 0 0 auto; border: 3px solid rgb(249 57 227 / 30%); border-top-color: var(--pink); border-radius: 50%; animation: workspace-spin .8s linear infinite; }
@keyframes workspace-spin { to { transform: rotate(360deg); } }
.workspace-switch-row { display: flex; min-height: 70px; align-items: center; gap: 12px; padding: 12px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); }
.workspace-switch-row > span:nth-child(2) { display: grid; min-width: 0; flex: 1; gap: 4px; }
.workspace-switch-row strong { font-size: 15.2px; }
.workspace-switch-row small { color: var(--muted); font-size: 13.8px; line-height: 1.4; }
.workspace-switch-row .setting-icon { flex: 0 0 32px; }
.workspace-switch-row .button-secondary { min-height: 40px; padding: 8px 12px; font-size: 13.8px; }
.workspace-switch-row .button-secondary[aria-busy="true"] { cursor: wait; opacity: .75; }
.sign-in-divider { display: flex; align-items: center; gap: 12px; margin: 28px 0 16px; color: var(--quiet); font-size: 15.2px; }
.sign-in-divider::before, .sign-in-divider:after { height: 1px; flex: 1; background: var(--line); content: ""; }
.button-secondary { border-color: var(--line-strong); background: var(--surface-raised); color: var(--text); }
.preview-button { width: 100%; min-height: 52px; justify-content: space-between; }
.preview-button span { color: var(--pink); font-size: 27.6px; }
.preview-disclaimer { margin: 12px 0 0; color: var(--quiet); font-size: 15.2px; line-height: 1.5; text-align: center; }
.sign-in-footer { padding-top: 26px; color: var(--quiet); font-size: 15.2px; text-align: center; }

.owner-app { min-height: calc(100vh - 30px); }
.desktop-sidebar { display: none; }
.topbar { position: sticky; z-index: 15; top: 30px; display: flex; height: 58px; align-items: center; gap: 12px; padding: 0 18px; border-bottom: 1px solid var(--line); background: rgb(15 15 18 / 94%); backdrop-filter: blur(16px); }
.mobile-wordmark { margin-right: auto; font-size: 31.7px; }
.topbar-context { display: none; }
.account-button { display: grid; width: 38px; height: 38px; flex: 0 0 38px; place-items: center; border: 1px solid var(--pink-line); border-radius: 50%; background: var(--pink-soft); color: #ffd7fa; font-size: 15.2px; font-weight: 800; }
.main-content { width: min(100%, 1000px); margin: 0 auto; padding: 17px 16px 112px; }
.preview-banner { display: flex; align-items: flex-start; gap: 10px; margin-bottom: 25px; padding: 12px 13px; border: 1px solid #413440; border-radius: 12px; background: #1c171d; color: #c7bdc7; font-size: 15.2px; line-height: 1.5; }
.info-mark { display: grid; width: 16px; height: 16px; flex: 0 0 16px; place-items: center; border: 1px solid #a1889f; border-radius: 50%; color: #dfbddd; font-family: Georgia, serif; font-size: 15.2px; font-weight: 700; }
.page-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; margin: 0 0 21px; }
.page-heading .eyebrow { margin-bottom: 7px; color: var(--pink); }
.page-heading h1 { margin: 0; font-size: clamp(37.3px, 8vw, 48.3px); font-weight: 760; letter-spacing: -.05em; line-height: 1.08; }
.page-subtitle { margin: 7px 0 0; color: var(--muted); font-size: 17.9px; line-height: 1.45; }
.today-pill, .date-range-button { display: none; }
.summary-grid { display: grid; gap: 11px; }
.summary-card { min-width: 0; padding: 16px; border: 1px solid var(--line); border-radius: 15px; background: var(--surface); }
.card-topline { display: flex; min-height: 26px; align-items: center; gap: 9px; }
.card-icon { display: grid; width: 29px; height: 29px; flex: 0 0 29px; place-items: center; border-radius: 9px; background: var(--pink-soft); color: var(--pink); font-size: 23.5px; font-weight: 750; }
.card-label { margin: 14px 0 6px; color: var(--muted); font-size: 15.2px; }
.status-pill { display: inline-flex; min-height: 22px; align-items: center; padding: 4px 8px; border: 1px solid transparent; border-radius: 999px; font-size: 11px; font-weight: 850; letter-spacing: .09em; white-space: nowrap; }
.status-upcoming { border-color: rgb(104 217 155 / 24%); background: var(--green-soft); color: var(--green); }
.status-neutral { background: #29282d; color: #b0adb6; }
.next-event-card h2 { margin: 0; font-size: 24.8px; font-weight: 730; letter-spacing: -.035em; line-height: 1.25; }
.event-meta { display: flex; flex-wrap: wrap; gap: 7px; margin: 8px 0 14px; color: var(--muted); font-size: 15.2px; }
.meta-dot { color: var(--quiet); }
.text-action, .quiet-action { min-height: 42px; padding: 7px 0; border: 0; background: transparent; color: var(--pink); font-size: 16.6px; font-weight: 700; text-align: left; }
.text-action span { padding-left: 5px; font-size: 23.5px; vertical-align: -1px; }
.ticket-summary-card .card-topline { gap: 8px; }
.ticket-summary-card .card-label { margin: 0; font-size: 12.4px; font-weight: 750; letter-spacing: .07em; }
.ticket-count { display: flex; align-items: baseline; gap: 6px; margin: 17px 0 12px; }
.ticket-count strong { font-size: 40px; font-weight: 760; letter-spacing: -.06em; }
.ticket-count span { color: var(--muted); font-size: 13.8px; }
.ticket-count i { margin: 0 3px; color: var(--quiet); font-size: 22.1px; font-style: normal; }
.progress-track { height: 5px; overflow: hidden; border-radius: 99px; background: #343238; }
.progress-track span { display: block; width: 0; height: 100%; border-radius: inherit; background: var(--pink); }
.muted-copy { margin: 9px 0 1px; color: var(--quiet); font-size: 13.8px; }
.activity-section { margin-top: 29px; }
.section-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
.section-heading .eyebrow { margin-bottom: 5px; }
.section-heading h2 { margin: 0; font-size: 26.2px; font-weight: 730; letter-spacing: -.035em; }
.quiet-action { color: #c3bec8; font-size: 15.2px; }
.empty-activity, .empty-orders { display: flex; align-items: center; gap: 12px; min-height: 72px; padding: 14px; border: 1px solid var(--line); border-radius: 13px; background: #121215; }
.empty-icon { display: grid; width: 34px; height: 34px; flex: 0 0 34px; place-items: center; border-radius: 10px; background: #202025; color: var(--muted); font-size: 23.5px; }
.empty-activity strong { font-size: 16.6px; font-weight: 700; }
.empty-activity p { margin: 4px 0 0; color: var(--muted); font-size: 13.8px; line-height: 1.4; }
.home-shortcuts { display: grid; gap: 9px; margin-top: 12px; }
.home-shortcuts button { display: flex; min-height: 64px; align-items: center; gap: 12px; padding: 11px 13px; border: 1px solid var(--line); border-radius: 13px; background: var(--surface); text-align: left; }
.shortcut-icon { display: grid; width: 34px; height: 34px; flex: 0 0 34px; place-items: center; border-radius: 10px; background: var(--pink-soft); color: var(--pink); font-size: 29px; }
.shortcut-icon.sales-shortcut { font-size: 22.1px; font-weight: 750; }
.home-shortcuts button > span:nth-child(2) { display: grid; gap: 4px; min-width: 0; }
.home-shortcuts strong { font-size: 16.6px; }
.home-shortcuts small { color: var(--muted); font-size: 13.8px; }
.row-chevron { margin-left: auto; color: var(--quiet); font-size: 30.4px; line-height: 1; }

.mobile-navigation { position: fixed; z-index: 20; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); padding: 6px 8px calc(7px + env(safe-area-inset-bottom)); border-top: 1px solid var(--line); background: rgb(19 19 22 / 96%); backdrop-filter: blur(18px); }
.mobile-navigation button { display: grid; min-width: 0; min-height: 54px; place-items: center; align-content: center; gap: 4px; padding: 4px 2px; border: 0; border-radius: 10px; background: transparent; color: #aaa7b0; font-size: 12.4px; font-weight: 620; }
.mobile-navigation button[aria-current="page"] { color: var(--pink); }
.mobile-navigation button svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.app-footer { display: none; }

.create-event { min-height: 42px; padding: 9px 12px; border-radius: 10px; font-size: 15.2px; white-space: nowrap; }
.create-event span { font-size: 22.1px; }
.filter-row { display: flex; align-items: center; gap: 8px; margin: 4px 0 13px; }
.filter-chip { display: inline-flex; min-height: 36px; align-items: center; gap: 7px; padding: 7px 11px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); color: var(--muted); font-size: 13.8px; font-weight: 650; }
.filter-chip span { color: var(--quiet); }
.filter-chip.selected { border-color: var(--pink-line); background: var(--pink-soft); color: #ffdafa; }
.filter-chip.selected span { color: #f89fed; }
.demo-tag { display: inline-flex; min-height: 21px; align-items: center; padding: 4px 7px; border: 1px solid #4b3c4b; border-radius: 999px; color: #d4b5d0; font-size: 11px; font-weight: 800; letter-spacing: .08em; white-space: nowrap; }
.filter-row .demo-tag { margin-left: auto; }
.event-row-card { display: grid; grid-template-columns: 48px minmax(0, 1fr); gap: 12px; padding: 14px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); }
.event-date-block { display: grid; width: 46px; height: 66px; align-content: center; justify-items: center; row-gap: 1px; border: 1px solid #453343; border-radius: 10px; background: #211821; color: var(--pink); }
.event-date-block span { font-size: 11px; font-weight: 800; letter-spacing: .06em; line-height: 1.1; text-transform: uppercase; }
.event-date-block strong { font-size: 30.4px; line-height: 1; }
.event-row-content { min-width: 0; }
.event-title-line { display: flex; align-items: flex-start; gap: 8px; }
.event-title-line h2 { min-width: 0; margin: 1px auto 0 0; font-size: 19.3px; font-weight: 710; letter-spacing: -.025em; line-height: 1.35; }
.event-title-line .status-pill { margin-top: 1px; }
.event-row-content > p { margin: 6px 0 11px; color: var(--muted); font-size: 13.8px; }
.event-row-stats { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; color: var(--muted); font-size: 12.4px; }
.event-row-stats strong { color: var(--text); font-weight: 750; }
.dot-separator { color: var(--quiet); }
.event-more { display: none; }
.event-row-actions { display: flex; grid-column: 1 / -1; gap: 8px; padding-top: 11px; border-top: 1px solid var(--line); }
.event-row-actions button { min-height: 38px; flex: 1; border: 0; border-radius: 9px; background: var(--pink); color: #fff; font-size: 13.8px; font-weight: 750; }
.event-row-actions .outline-action { border: 1px solid var(--line-strong); background: transparent; color: var(--muted); }
.page-footnote { margin: 14px 0 0; color: var(--quiet); font-size: 13.8px; line-height: 1.5; }

.event-editor { width: min(calc(100% - 32px), 980px); max-width: 980px; max-height: min(92dvh, 900px); margin: auto; padding: 0; overflow: auto; border: 1px solid var(--line-strong); border-radius: 18px; background: var(--surface); color: var(--text); box-shadow: 0 24px 80px rgb(0 0 0 / 55%); }
.event-editor::backdrop { background: rgb(0 0 0 / 68%); backdrop-filter: blur(4px); }
.event-editor form { display: grid; gap: 17px; padding: 20px; }
.event-editor-heading, .event-tiers-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.event-editor-heading h2, .event-tiers-heading h3 { margin: 3px 0 0; font-size: 23px; }
.event-tiers-heading h3 { font-size: 18px; }
.event-editor-close { display: grid; width: 40px; height: 40px; place-items: center; border: 1px solid var(--line); border-radius: 11px; background: var(--surface-raised); color: var(--muted); font-size: 26px; }
.event-editor-note { margin: -7px 0 0; color: var(--muted); font-size: 14px; line-height: 1.45; }
.event-editor-note[data-state="error"] { color: #ffaaa7; }
.event-editor-note[data-state="success"] { color: var(--green); }
.event-editor-fields { display: grid; grid-template-columns: minmax(0, 1fr); gap: 15px; }
.event-field { display: grid; min-width: 0; align-self: start; align-content: start; gap: 6px; color: #dedce1; font-size: 14px; font-weight: 650; }
.field-help { color: var(--muted); font-size: 13px; font-weight: 450; line-height: 1.4; }
.event-datetime-field { min-width: 0; margin: 0; padding: 0; border: 0; }
.event-datetime-field legend { margin-bottom: 7px; padding: 0; color: #dedce1; font-size: 14px; font-weight: 650; }
.event-datetime-controls { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; }
.event-form-section { min-width: 0; padding-top: 14px; border-top: 1px solid var(--line); }
.event-section-title { margin: 0 0 12px; color: var(--muted); font-size: 12px; font-weight: 800; letter-spacing: .12em; line-height: 1.3; text-transform: uppercase; }
.event-section-grid { display: grid; min-width: 0; grid-template-columns: minmax(0, 1fr); align-items: start; gap: 15px; }
.event-datetime-controls > label, .event-time-controls > label { display: grid; min-width: 0; gap: 6px; color: var(--text-muted); font-size: 12px; font-weight: 600; }
.event-time-controls { display: grid; min-width: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.event-datetime-controls input, .event-datetime-controls select { width: 100%; min-width: 0; min-height: 50px; padding: 10px; border: 1px solid var(--line-strong); border-radius: 10px; background: var(--surface-raised); color: var(--text); font: inherit; font-size: 16px; font-weight: 500; color-scheme: dark; }
.event-datetime-controls input:focus, .event-datetime-controls select:focus { border-color: var(--pink); outline: 2px solid var(--pink-soft); }
.event-field input, .event-field textarea, .event-field select, .event-tier-row input { width: 100%; min-width: 0; min-height: 46px; padding: 10px 11px; border: 1px solid var(--line-strong); border-radius: 10px; background: var(--surface-raised); color: var(--text); font: inherit; font-weight: 450; color-scheme: dark; }
.event-field textarea { min-height: 82px; resize: vertical; }
.event-field input:focus, .event-field textarea:focus, .event-field select:focus, .event-tier-row input:focus { border-color: var(--pink); outline: 2px solid var(--pink-soft); }
.event-tiers-heading { padding-top: 4px; border-top: 1px solid var(--line); }
.add-tier-button { min-height: 38px; padding: 8px 10px; font-size: 13px; white-space: nowrap; }
.event-tier-list { display: grid; gap: 10px; }
.event-tier-row { display: grid; grid-template-columns: minmax(0, 1fr) 76px 86px; align-items: end; gap: 8px; padding: 11px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface-raised); }
.event-tier-row label { display: grid; min-width: 0; gap: 5px; color: var(--muted); font-size: 12px; font-weight: 650; }
.event-tier-row label:first-child { grid-column: 1 / -1; }
.event-tier-row input { min-height: 42px; padding: 8px; font-size: 14px; }
.event-editor-actions { position: sticky; bottom: 0; display: flex; justify-content: flex-end; gap: 10px; padding-top: 12px; border-top: 1px solid var(--line); background: var(--surface); }
.event-editor-actions .quiet-action, .event-save-button { min-height: 44px; padding: 10px 14px; border-radius: 10px; }
.event-time-controls select { padding-right: 7px; padding-left: 7px; }
.event-save-button:disabled, .add-tier-button:disabled { opacity: .55; cursor: wait; }

.sales-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.metric-card { display: grid; min-height: 103px; align-content: start; gap: 6px; padding: 13px; border: 1px solid var(--line); border-radius: 13px; background: var(--surface); }
.metric-card > span { color: var(--muted); font-size: 13.8px; }
.metric-card strong { font-size: 33.1px; font-weight: 760; letter-spacing: -.055em; }
.metric-card small { color: var(--quiet); font-size: 12.4px; }
.orders-section { margin-top: 28px; }
.empty-orders { min-height: 190px; flex-direction: column; justify-content: center; gap: 7px; text-align: center; }
.empty-orders-icon { display: grid; width: 39px; height: 39px; margin-bottom: 3px; place-items: center; border: 1px solid #3a353d; border-radius: 12px; color: var(--muted); font-size: 24.8px; }
.empty-orders strong { font-size: 17.9px; }
.empty-orders p { margin: 0; color: var(--muted); font-size: 13.8px; }
.sample-record-note { margin-top: 4px; color: var(--quiet); font-size: 12.4px; }
.date-range-button { min-height: 38px; padding: 8px 11px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); color: #ddd9e1; font-size: 13.8px; }
.sales-filter-label { margin-left: auto; color: var(--muted); font-size: 13.8px; }
#sales-event-filter { max-width: min(58vw, 300px); min-height: 38px; padding: 7px 30px 7px 10px; border: 1px solid var(--line-strong); border-radius: 10px; background: var(--surface); color: var(--text); font-size: 13.8px; }

.profile-card { display: flex; align-items: center; gap: 13px; padding: 16px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); }
.profile-avatar { display: grid; width: 50px; height: 50px; flex: 0 0 50px; place-items: center; border: 1px solid var(--pink-line); border-radius: 14px; background: var(--pink-soft); color: #ffd7fa; font-size: 19.3px; font-weight: 800; }
.profile-card h2 { margin: 0 0 4px; font-size: 20.7px; }
.profile-card p { margin: 0 0 7px; color: var(--muted); font-size: 13.8px; }
.profile-card .demo-tag { min-height: 19px; font-size: 9.7px; }
.settings-group { margin-top: 25px; }
.settings-group > .eyebrow { margin: 0 0 8px 3px; color: var(--muted); }
.setting-row { display: flex; min-height: 66px; align-items: center; gap: 12px; padding: 11px 12px; border: 1px solid var(--line); border-bottom: 0; background: var(--surface); }
.setting-row:first-of-type { border-radius: 12px 12px 0 0; }
.setting-row:last-of-type { border-bottom: 1px solid var(--line); border-radius: 0 0 12px 12px; }
.setting-icon { display: grid; width: 32px; height: 32px; flex: 0 0 32px; place-items: center; border-radius: 9px; background: var(--surface-soft); color: var(--pink); font-size: 20.7px; font-weight: 700; }
.setting-row > span:nth-child(2) { display: grid; gap: 4px; min-width: 0; }
.setting-row strong { font-size: 15.2px; }
.setting-row small { overflow-wrap: anywhere; color: var(--muted); font-size: 13.8px; }
.setting-row .status-pill { margin-left: auto; font-size: 9.7px; }
.dev-pill { margin-left: auto; padding: 5px 8px; border: 1px solid var(--pink-line); border-radius: 99px; background: var(--pink-soft); color: #ffb9f6; font-size: 11px; font-weight: 850; letter-spacing: .1em; }
.profile-note { margin-top: 22px; padding: 13px 14px; border: 1px solid var(--line); border-radius: 12px; background: #121215; }
.profile-note strong { font-size: 15.2px; }
.profile-note p { margin: 5px 0 0; color: var(--muted); font-size: 13.8px; line-height: 1.5; }

.noscript-message { margin: 20px; color: var(--text); }

@media (min-width: 700px) {
  .workspace-picker-screen { padding: clamp(32px, 6vh, 64px) 24px 18px; }
  .workspace-picker-screen .sign-in-card > .wordmark { margin-bottom: 34px; }
  .workspace-options { gap: 26px; margin-top: 26px; }
  .workspace-choice { min-height: 86px; padding: 17px 19px; }
  .workspace-choice.is-disabled { min-height: 72px; }
  .environment-ribbon { min-height: 28px; }
  .owner-app { min-height: calc(100vh - 28px); }
  .desktop-sidebar { position: fixed; inset: 28px auto 0 0; display: flex; width: 214px; flex-direction: column; padding: 27px 15px 14px; border-right: 1px solid var(--line); background: #121214; }
  .sidebar-wordmark { display: block; margin: 3px 10px 35px; font-size: 34.5px; }
  .sidebar-venue { display: flex; align-items: center; gap: 10px; min-width: 0; margin: 0 4px 29px; padding: 10px 8px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); }
  .venue-avatar { display: grid; width: 34px; height: 34px; flex: 0 0 34px; place-items: center; border-radius: 10px; background: var(--pink-soft); color: #ffc8f7; font-size: 13.8px; font-weight: 800; }
  .sidebar-venue > span:last-child { display: grid; min-width: 0; gap: 4px; }
  .sidebar-venue strong { overflow: hidden; font-size: 13.8px; text-overflow: ellipsis; white-space: nowrap; }
  .sidebar-venue small { color: var(--muted); font-size: 12.4px; }
  .nav-label { margin: 0 10px 10px; color: var(--quiet); font-size: 12.4px; font-weight: 800; letter-spacing: .15em; }
  .primary-navigation { display: grid; gap: 4px; }
  .primary-navigation button { display: flex; width: 100%; min-height: 43px; align-items: center; gap: 12px; padding: 8px 11px; border: 0; border-radius: 10px; background: transparent; color: #c0bdc5; font-size: 16.6px; font-weight: 650; text-align: left; }
  .primary-navigation button[aria-current="page"] { background: #262026; color: var(--text); }
  .primary-navigation button[aria-current="page"] .nav-icon { color: var(--pink); }
  .nav-icon { display: grid; width: 20px; place-items: center; color: #99959f; }
  .primary-navigation svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
  .sidebar-footnote { margin-top: auto; padding: 13px 8px 7px; border-top: 1px solid var(--line); color: #c2bec7; font-size: 13.8px; line-height: 1.65; }
  .sidebar-footnote span { color: var(--quiet); font-size: 12.4px; }
  .topbar { position: fixed; top: 28px; right: 0; left: 214px; height: 56px; justify-content: flex-end; padding: 0 30px; }
  .mobile-wordmark { display: none; }
  .topbar-context { display: flex; align-items: center; gap: 9px; margin-right: auto; color: #d4d1d9; font-size: 15.2px; }
  .topbar-venue { color: var(--muted); }
  .context-separator { color: var(--quiet); }
  .main-content { width: auto; max-width: 1050px; margin: 0 0 0 214px; padding: 82px 36px 45px; }
  .preview-banner { margin-bottom: 25px; padding: 10px 13px; font-size: 13.8px; }
  .page-heading { margin-bottom: 23px; }
  .page-heading h1 { font-size: 42.8px; }
  .page-subtitle { font-size: 16.6px; }
  .today-pill { display: inline-flex; min-height: 32px; align-items: center; padding: 7px 10px; border: 1px solid var(--line); border-radius: 9px; color: var(--muted); font-size: 12.4px; }
  .summary-grid { grid-template-columns: 1.05fr .95fr; gap: 13px; }
  .summary-card { min-height: 195px; padding: 17px; border-radius: 14px; }
  .next-event-card h2 { font-size: 24.8px; }
  .ticket-count { margin-top: 22px; }
  .ticket-count strong { font-size: 42.8px; }
  .activity-section { margin-top: 30px; }
  .section-heading h2 { font-size: 24.8px; }
  .empty-activity { min-height: 70px; }
  .empty-activity strong { font-size: 15.2px; }
  .empty-activity p { font-size: 13.8px; }
  .home-shortcuts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; margin-top: 12px; }
  .home-shortcuts button { min-height: 70px; }
  .mobile-navigation { display: none; }
  .app-footer { display: block; margin-top: 35px; color: var(--quiet); font-size: 12.4px; text-align: center; }
  .app-footer span { padding: 0 4px; }
  .create-event { min-height: 41px; padding: 9px 13px; font-size: 13.8px; }
  .filter-row { margin-top: 0; }
  .event-row-card { grid-template-columns: 52px minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 16px; }
  .event-date-block { width: 50px; height: 66px; }
  .event-editor form { padding: 24px; }
  .event-editor-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .event-section-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .event-datetime-controls { grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .event-datetime-controls input, .event-datetime-controls select { min-height: 52px; }
  .event-field-wide { grid-column: 1 / -1; }
  .event-tier-row { grid-template-columns: minmax(0, 1fr) 110px 110px; }
  .event-title-line h2 { font-size: 19.3px; }
  .event-row-stats { font-size: 12.4px; }
  .event-more { display: grid; width: 36px; height: 36px; place-items: center; border: 1px solid var(--line); border-radius: 9px; background: var(--surface-raised); color: var(--muted); font-size: 13.8px; letter-spacing: .08em; }
  .event-row-actions { display: none; }
  .sales-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
  .metric-card { min-height: 120px; padding: 15px; }
  .metric-card strong { font-size: 35.9px; }
  .orders-section { margin-top: 30px; }
  .empty-orders { min-height: 220px; }
  .date-range-button { display: inline-flex; align-items: center; gap: 10px; }
  .profile-card { padding: 18px; }
  .settings-group { max-width: 700px; margin-top: 28px; }
  .setting-row { min-height: 68px; }
  .profile-note { max-width: 700px; }
}

@media (min-width: 900px) {
  .event-datetime-controls { grid-template-columns: minmax(125px, .8fr) minmax(0, 1.2fr); align-items: end; }
  .event-editor form { padding: 26px 30px; }
  .event-editor-fields, .event-section-grid { column-gap: 20px; row-gap: 16px; }
}

@media (min-width: 1100px) {
  .desktop-sidebar { width: 230px; padding-right: 18px; padding-left: 18px; }
  .topbar { left: 230px; padding-right: 42px; padding-left: 42px; }
  .main-content { max-width: 1120px; margin-left: 230px; padding-right: 46px; padding-left: 46px; }
  .summary-card { padding: 20px; }
  .next-event-card h2 { font-size: 27.6px; }
}

/* CoverMe app look (shared with the bar and fraternity dashboards). */

button:focus-visible, a:focus-visible, .workspace-choice:not(:disabled):focus-visible { outline: 3px solid var(--pink); outline-offset: 3px; }

/* Dev marker stays visible, just in app colors */
.environment-ribbon { background: var(--pink-soft); color: var(--cm-text); font-weight: 700; letter-spacing: .12em; }
.environment-dot { box-shadow: 0 0 10px var(--pink-glow); }
.environment-caption { color: var(--cm-muted); }

/* Type: iOS large titles, gray section labels */
.wordmark { font-weight: 800; letter-spacing: -.04em; }
.eyebrow { color: var(--quiet); font-size: 13px; font-weight: 600; letter-spacing: .14em; }
.sign-in-card .eyebrow { color: var(--quiet); }
.page-heading { align-items: center; }
.page-heading .eyebrow { display: none; }
.page-heading h1 { font-size: 34px; font-weight: 700; letter-spacing: -.02em; line-height: 1.1; }
.page-subtitle { margin-top: 6px; color: var(--muted); font-size: 15px; }
.sign-in-card h1 { font-weight: 700; letter-spacing: -.03em; }
.intro { font-size: 17px; }
.section-heading h2 { font-size: 22px; font-weight: 700; letter-spacing: -.01em; }

/* Inputs: filled gray fields like the app's forms */
#login-form label, #password-setup-form label { color: var(--muted); font-size: 15px; font-weight: 600; }
#login-form input, #password-setup-form input,
.event-field input, .event-field textarea, .event-field select, .event-tier-row input,
.event-datetime-controls input, .event-datetime-controls select {
  border: 1px solid transparent; border-radius: 14px; background: var(--surface); color: var(--text);
}
#login-form input::placeholder, .event-field input::placeholder, .event-field textarea::placeholder { color: var(--cm-quiet); }
#login-form input:focus, #password-setup-form input:focus,
.event-field input:focus, .event-field textarea:focus, .event-field select:focus, .event-tier-row input:focus,
.event-datetime-controls input:focus, .event-datetime-controls select:focus { border-color: var(--pink-line); outline: none; }

/* Buttons: solid purple pill with dark text + glow, tinted secondary, outline */
.button-primary, .button-secondary { border-radius: var(--radius-control); font-size: 17px; font-weight: 600; }
.button-primary { background: var(--pink); color: var(--on-pink); box-shadow: 0 8px 24px -6px var(--pink-glow); }
.button-secondary { border-color: transparent; background: var(--pink-soft); color: var(--pink); }
.preview-button span { color: var(--pink); }
.text-action { color: var(--pink); font-weight: 600; }
.quiet-action { color: var(--muted); font-weight: 500; }
.auth-actions .quiet-action { color: var(--pink); }
.loading-spinner { border-color: var(--pink-soft); border-top-color: var(--pink); }

/* Round icon buttons (like the + and refresh circles) */
.account-button { width: 44px; height: 44px; flex-basis: 44px; border: 0; background: var(--surface); color: var(--text); font-weight: 600; }
.create-event { min-height: 44px; padding: 10px 16px; border-radius: 999px; }

/* Cards: flat dark gray, big rounded corners, hairline edge */
.summary-card, .metric-card, .profile-card, .event-row-card, .workspace-choice, .workspace-switch-row,
.home-shortcuts button, .empty-activity, .empty-orders, .profile-note, .sidebar-venue {
  border: 1px solid var(--line); border-radius: var(--radius-card); background: var(--surface);
}
.workspace-choice:not(:disabled):hover { border-color: var(--pink-line); background: #232323; }
.workspace-choice-action { color: var(--pink); font-weight: 600; }
.workspace-role { border-color: var(--line-strong); color: var(--muted); }
.workspace-choice.is-disabled { border-color: var(--line); background: #141414; }
.preview-banner { border: 1px solid var(--line); border-radius: var(--radius-control); background: var(--pink-soft); color: var(--cm-muted); }
.info-mark { border-color: #8a5aa0; color: #e0b5f0; font-family: inherit; font-size: 11px; }

/* Purple icon tiles (Specials / Staff / Tickets Sold style) */
.card-icon, .shortcut-icon, .setting-icon, .venue-avatar, .profile-avatar {
  border: 0; border-radius: 12px; background: var(--pink-tile); color: var(--pink);
}
.card-icon { width: 40px; height: 40px; flex-basis: 40px; font-size: 22px; }
.shortcut-icon, .setting-icon { width: 40px; height: 40px; flex-basis: 40px; }
.profile-avatar { border-radius: 50%; color: var(--pink); }
.empty-icon, .empty-orders-icon { border: 0; border-radius: 12px; background: var(--surface-raised); color: var(--muted); }
.row-chevron { color: #8a8a8a; font-size: 26px; }

/* Numbers */
.card-label, .metric-card > span { color: var(--muted); font-size: 15px; }
.ticket-count strong, .metric-card strong { font-weight: 700; letter-spacing: -.02em; }
.metric-card strong { font-size: 36px; }
.ticket-count span { color: var(--muted); }

/* Progress bars like the Sales tier cards */
.progress-track { height: 6px; background: #3d3d40; }
.progress-track span { background: var(--pink); }

/* Status badges: Selling (green) / Inactive (gray), sentence-case like the app */
.status-pill { min-height: 28px; padding: 5px 11px; border: 0; border-radius: 10px; font-size: 14px; font-weight: 600; letter-spacing: 0; }
.status-upcoming { border: 0; background: var(--green-soft); color: var(--green); }
.status-neutral { background: #313132; color: var(--muted); }
.demo-tag, .dev-pill { border: 1px solid var(--pink-line); background: var(--pink-soft); color: var(--pink); letter-spacing: .06em; }

/* Filter chips -> segmented control (Day / Week / Month style) */
.filter-row { gap: 6px; }
.filter-chip { min-height: 40px; padding: 8px 16px; border: 0; background: var(--surface); color: var(--muted); font-weight: 600; }
.filter-chip span { color: inherit; opacity: .7; }
.filter-chip.selected { border: 0; background: var(--pink); color: var(--on-pink); }
.filter-chip.selected span { color: var(--on-pink); }
.date-range-button, #sales-event-filter { border: 1px solid var(--pink-line); border-radius: var(--radius-control); background: var(--surface); color: var(--text); }

/* Event rows like the Events list (thumbnail tile + purple recurrence text) */
.event-date-block { border: 0; border-radius: 12px; background: var(--pink-tile); color: var(--pink); }
.event-title-line h2 { font-size: 19px; font-weight: 600; letter-spacing: -.01em; }
.event-row-content > p { color: var(--muted); font-size: 15px; }
.event-row-stats { color: var(--pink); font-size: 14px; }
.event-row-stats strong { color: var(--pink); }
.dot-separator { color: var(--pink); opacity: .7; }
.event-row-actions { border-top-color: var(--line); }
.event-row-actions button { border-radius: 12px; background: var(--pink); color: var(--on-pink); font-weight: 600; }
.event-row-actions .outline-action { border: 1px solid var(--pink-line); background: transparent; color: var(--pink); }
.event-more { border: 0; border-radius: 50%; background: var(--surface-raised); }

/* Grouped settings list (Account tab style) */
.settings-group > .eyebrow { margin-left: 4px; color: var(--quiet); }
.setting-row { min-height: 72px; padding: 14px 16px; border-color: var(--line); background: var(--surface); }
.setting-row:first-of-type { border-radius: var(--radius-card) var(--radius-card) 0 0; }
.setting-row:last-of-type { border-radius: 0 0 var(--radius-card) var(--radius-card); }
.setting-row:only-of-type { border-radius: var(--radius-card); }
.setting-row + .setting-row { border-top: 1px solid var(--line); }
.setting-row strong { font-size: 17px; font-weight: 600; }
.setting-row small { font-size: 14px; }
.setting-row .status-pill { font-size: 12px; }

/* Event editor -> app's Create/Edit Event sheet */
.event-editor { border: 1px solid var(--line); border-radius: 28px; background: var(--page); }
.event-editor form { gap: 20px; }
.event-editor-heading { margin: -20px -20px 0; padding: 16px 20px; border-bottom: 1px solid var(--line); background: var(--surface); }
.event-editor-heading h2 { font-size: 19px; font-weight: 600; }
.event-editor-heading .eyebrow { display: none; }
.event-editor-close { border: 0; border-radius: 50%; background: var(--surface-raised); color: var(--muted); }
.event-field, .event-datetime-field legend { color: var(--muted); font-size: 15px; font-weight: 600; }
.event-section-title { color: var(--muted); font-size: 17px; font-weight: 600; letter-spacing: 0; text-transform: none; }
.event-form-section, .event-tiers-heading { border-top: 0; }
.event-tier-row { border: 1px solid var(--line); border-radius: var(--radius-card); background: var(--surface); }
.event-tier-row input { background: var(--surface-raised); }
.event-editor-actions { border-top-color: var(--line); background: var(--page); }
.event-editor-actions .quiet-action { padding: 10px 18px; border-radius: 999px; background: var(--surface-raised); color: var(--pink); }
.event-save-button { border-radius: 999px; }

/* Floating pill tab bar (Sales / Stats / Live / Events / Account) */
.main-content { padding-bottom: 130px; }
.mobile-navigation {
  right: 14px; bottom: calc(12px + env(safe-area-inset-bottom)); left: 14px;
  padding: 6px; border: 1px solid var(--line-strong); border-radius: 36px;
  background: rgb(44 44 44 / 92%); box-shadow: 0 10px 30px rgb(0 0 0 / 50%);
}
.mobile-navigation button { min-height: 60px; border-radius: 30px; color: #ffffff; font-size: 13px; font-weight: 500; }
.mobile-navigation button[aria-current="page"] { background: var(--page); color: var(--pink); }
.mobile-navigation button svg { width: 24px; height: 24px; }

.topbar { border-bottom-color: var(--line); background: rgb(12 12 12 / 88%); }

@media (min-width: 700px) {
  .desktop-sidebar { border-right-color: var(--line); background: var(--page); }
  .nav-label { color: var(--quiet); font-weight: 600; }
  .primary-navigation button { min-height: 46px; border-radius: 14px; color: var(--text); font-weight: 500; }
  .primary-navigation button[aria-current="page"] { background: var(--surface); color: var(--pink); }
  .primary-navigation button[aria-current="page"] .nav-icon { color: var(--pink); }
  .nav-icon { color: var(--text); }
  .sidebar-footnote { border-top-color: var(--line); color: var(--muted); }
  .page-heading h1 { font-size: 40px; }
  .today-pill { border: 0; border-radius: 999px; background: var(--surface); }
  .summary-card { border-radius: var(--radius-card); }
  .event-editor-heading { margin: -24px -24px 0; padding: 16px 24px; }
}
@media (min-width: 900px) {
  .event-editor-heading { margin: -26px -30px 0; padding: 18px 30px; }
}

/* Keep screens as clean as the app: no subtitles or developer notes */
.page-subtitle, .page-footnote, .sidebar-footnote, .app-footer, .preview-disclaimer, .sign-in-footer, .sample-record-note { display: none; }
.preview-banner { display: inline-flex; margin-bottom: 18px; padding: 6px 12px; border-radius: 999px; font-size: 13px; }

/* ==== Match the bar dashboard (CoverMe Manager): sidebar, column, icons ==== */
.cm-icon { display: inline-block; width: 1.1em; height: 1.1em; flex: 0 0 auto; vertical-align: -0.18em; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.card-icon .cm-icon, .setting-icon .cm-icon, .shortcut-icon .cm-icon, .empty-icon .cm-icon { width: 20px; height: 20px; }
.text-action .cm-icon { width: 18px; height: 18px; margin-left: 2px; }
.date-range-button .cm-icon { width: 16px; height: 16px; color: var(--muted); }
.create-event .cm-icon { width: 18px; height: 18px; }
.preview-button .cm-icon { width: 18px; height: 18px; }

@media (min-width: 700px) {
  /* Sidebar: same size, logo, rows and highlight as the bar dashboard */
  .desktop-sidebar, body .desktop-sidebar { width: 224px; padding: 26px 15px 14px; }
  .desktop-sidebar .sidebar-wordmark { width: 168px; height: 54px; margin: 2px 6px 26px; }
  .desktop-sidebar .sidebar-venue, .desktop-sidebar .nav-label, .desktop-sidebar .sidebar-footnote { display: none; }
  .desktop-sidebar .primary-navigation { gap: 4px; }
  .desktop-sidebar .primary-navigation button {
    min-height: 46px; gap: 10px; padding: 9px 11px; border-radius: 14px; background: transparent;
    color: var(--cm-text); font-family: var(--cm-font); font-size: 15px; font-weight: 500;
  }
  .desktop-sidebar .primary-navigation button:hover { background: #161616; }
  .desktop-sidebar .primary-navigation button[aria-current="page"] { background: var(--cm-card); color: var(--cm-accent); }
  .desktop-sidebar .primary-navigation .nav-icon { display: grid; width: 20px; place-items: center; color: var(--cm-text); }
  .desktop-sidebar .primary-navigation button[aria-current="page"] .nav-icon { color: var(--cm-accent); }
  .desktop-sidebar .primary-navigation svg { width: 20px; height: 20px; stroke-width: 2; }
  /* No top bar on desktop, like the bar dashboard: the page title says where you are */
  .topbar { display: none; }
  /* One centered column, same width as the bar dashboard */
  .main-content, body .main-content { max-width: none; margin-left: 224px; padding: 40px 32px 60px; }
  .main-content > * { width: 100%; max-width: 760px; margin-left: auto; margin-right: auto; }
}
@media (min-width: 1100px) {
  .desktop-sidebar { width: 224px; padding-left: 15px; padding-right: 15px; }
  .main-content { margin-left: 224px; }
}
/* Phone: leave room so the floating tab bar never covers the last row */
@media (max-width: 699px) {
  .main-content { padding-bottom: calc(120px + env(safe-area-inset-bottom)); }
}
.mobile-navigation svg { stroke-width: 2; }

/* ==== UI polish ==== */
/* Links that do something look like links */
.quiet-action[data-go], .section-heading .quiet-action { color: var(--cm-accent); font-weight: 600; }
/* Profile: sections all the same width; sign-out is a clear red button; no developer wording */
.profile-header-card, .settings-group, .profile-note { max-width: 760px; }
.profile-note { display: grid; gap: 0; padding: 0; border: 0; background: transparent; }
.profile-note > strong, .profile-note > p, .profile-note > span { display: none; }
#close-preview, .profile-note .quiet-action {
  width: 100%; min-height: 50px; border: 1px solid rgb(255 138 138 / 40%); border-radius: 14px; background: transparent;
  color: var(--cm-red); font-size: 16px; font-weight: 600;
}
/* Dropdowns: one clean chevron */
#sales-event-filter, .event-editor select, .event-field select {
  appearance: none; -webkit-appearance: none; padding-right: 40px; cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a3a3a3' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 14px center; background-size: 16px;
}
/* "DEV DATA" tag next to the filters is noise (the preview banner already says it) */
#event-data-tag { display: none; }
/* Create button: solid, never looks disabled */
.create-event:not(:disabled) { opacity: 1; background: var(--cm-accent); color: var(--cm-on-accent); }
@media (min-width: 700px) {
  .main-content > .preview-banner { width: fit-content; max-width: none; margin-right: 0; margin-left: max(0px, calc(50% - 380px)); }
}
#close-preview, .profile-note .quiet-action { display: grid; place-items: center; text-align: center; }

/* ==== New / Edit event sheet ==== */
.event-editor #event-editor-title { font-size: 22px; font-weight: 700; letter-spacing: -.01em; }
/* Dates: tap-to-open CoverMe calendar (shared cm-form-polish.mjs), same as the bar dashboard */
.event-editor label:has(.cm-date-button) { position: relative; }
.event-editor input.cm-date-native { position: absolute; width: 1px !important; height: 1px; min-height: 0 !important; padding: 0 !important; border: 0; opacity: 0; pointer-events: none; }
.cm-date-button {
  display: flex; width: 100%; min-height: 48px; align-items: center; gap: 8px; padding: 0 12px; border: 1px solid transparent; border-radius: 14px;
  background: var(--cm-card); color: var(--cm-text); font: inherit; font-size: 15px; font-weight: 500; text-align: left; cursor: pointer; box-shadow: none; white-space: nowrap;
}
.cm-date-button[aria-expanded="true"] { border-color: var(--cm-accent-line); }
.cm-date-button > span { flex: 1; overflow: hidden; text-overflow: ellipsis; }
.cm-date-button .cm-icon { width: 17px; height: 17px; color: var(--cm-accent); }
.cm-date-button .cm-date-chevron { width: 15px; height: 15px; color: var(--cm-muted); transition: transform .15s ease; }
.cm-date-button[aria-expanded="true"] .cm-date-chevron { transform: rotate(180deg); color: var(--cm-accent); }
.cm-date-picker {
  position: absolute; z-index: 40; top: calc(100% + 8px); left: 0; width: 320px; padding: 14px 14px 12px; color: var(--cm-text);
  border: 1px solid var(--cm-line-strong); border-radius: var(--cm-radius-card); background: var(--cm-card); box-shadow: 0 18px 40px rgb(0 0 0 / 55%);
}
.cm-date-picker > .row { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; }
.cm-date-picker > .row strong { font-size: 16px; font-weight: 600; }
.cm-date-picker > .row button { display: grid; width: 36px; height: 36px; min-height: 0; place-items: center; padding: 0; border: 0; border-radius: 50%; background: var(--cm-raised); color: var(--cm-text); font-size: 20px; box-shadow: none; }
.cm-date-picker > .row button:disabled { opacity: .35; }
.cm-date-picker .sales-calendar-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 2px; }
.cm-date-picker .sales-calendar-grid > span:not(.calendar-empty) { padding: 4px 0 6px; color: var(--cm-quiet); font-size: 12px; font-weight: 600; text-align: center; }
.cm-date-picker .sales-calendar-day { display: grid; height: 40px; min-height: 40px; place-items: center; padding: 0; border: 0; border-radius: 50%; background: transparent; box-shadow: none; color: var(--cm-text); font-size: 15px; font-weight: 500; }
.cm-date-picker .sales-calendar-day:hover { background: var(--cm-raised); }
.cm-date-picker .sales-calendar-day.range-edge { background: var(--cm-accent); color: var(--cm-on-accent); font-weight: 700; }
.cm-date-picker .sales-calendar-day.is-today:not(.range-edge) { color: var(--cm-accent); font-weight: 700; }
.cm-date-picker .sales-calendar-day:disabled { color: var(--cm-line-strong); }
/* Bottom buttons: Cancel and Create side by side, full width, like the bar dashboard */
.event-editor .editor-actions, .event-editor .dialog-actions, .event-editor footer { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px; }
.event-editor :is(.editor-actions, .dialog-actions, footer) > button { min-height: 50px; border-radius: 14px; font-size: 16px; }
.event-editor :is(.editor-actions, .dialog-actions, footer) > .button-secondary, .event-editor :is(.editor-actions, .dialog-actions, footer) > button:not(.button-primary) {
  border: 1px solid var(--cm-accent-line); background: transparent; color: var(--cm-accent);
}
.event-editor .event-editor-actions { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px; }
.event-editor .event-editor-actions > button { width: 100%; min-height: 50px; border-radius: 14px; font-size: 16px; font-weight: 600; }
.event-editor .event-editor-actions > #event-editor-cancel { border: 1px solid var(--cm-accent-line); background: transparent; color: var(--cm-accent); }
.event-editor .event-editor-actions > button { display: grid; place-items: center; text-align: center; }

/* ==== Simplified ticketing (Events first, 3 tabs) ==== */
/* Less text: no small labels above titles */
.page-heading .eyebrow, .settings-group > .eyebrow, .event-tiers-heading .eyebrow { display: none; }
.page-heading { align-items: center; margin-bottom: 22px; }
.page-heading h1 { font-size: 34px; letter-spacing: -.02em; }
.filter-row { margin-bottom: 18px; }
.filter-chip span { display: none; }

/* Event cards: flyer-shaped tile on the left (shows the date until events can have a flyer) */
#event-list, .view-panel[data-panel="events"] { display: grid; gap: 14px; }
.event-row-card {
  display: grid !important; grid-template-columns: 132px minmax(0, 1fr); gap: 18px; align-items: stretch;
  padding: 14px; border: 1px solid var(--cm-line); border-radius: 20px; background: var(--cm-card); cursor: pointer;
}
.event-row-card:hover { border-color: var(--cm-line-strong); }
.event-row-card .event-date-block {
  display: grid; width: auto; height: auto; aspect-ratio: 4 / 5; align-content: end; justify-items: start; gap: 2px; padding: 12px;
  border: 0; border-radius: 14px; color: #fff; text-align: left;
  background: radial-gradient(circle at 30% 22%, rgb(201 81 243 / 55%) 0, transparent 52%), linear-gradient(160deg, #3b1450, #120618);
}
.event-row-card .event-date-block span:first-child { color: #fff; font-size: 13px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.event-row-card .event-date-block strong { color: #fff; font-size: 44px; font-weight: 800; line-height: 1; }
.event-row-card .event-date-block span:last-child { color: rgb(255 255 255 / 75%); font-size: 13px; font-weight: 600; }
.event-row-content { display: flex; min-width: 0; flex-direction: column; padding: 4px 0; }
.event-title-line { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.event-title-line h2 { margin: 0; font-size: 19px; font-weight: 700; line-height: 1.25; }
.event-row-card .status-pill { flex: 0 0 auto; padding: 4px 10px; border-radius: 999px; font-size: 12px; font-weight: 600; letter-spacing: 0; text-transform: none; }
.event-row-card .status-upcoming { background: var(--cm-green-soft); color: var(--cm-green); }
.event-row-card .status-neutral { background: var(--cm-gray-badge); color: var(--cm-muted); }
.event-when { margin: 6px 0 0; color: var(--cm-muted); font-size: 14px; }
.event-sold { margin-top: auto; padding-top: 16px; }
.event-sold-row { display: flex; justify-content: space-between; gap: 10px; margin-bottom: 8px; color: var(--cm-muted); font-size: 14px; }
.event-sold-row b { color: var(--cm-text); font-weight: 700; }
.event-sold-row .price { color: var(--cm-text); font-weight: 600; }
.event-sold-bar { height: 6px; overflow: hidden; border-radius: 999px; background: var(--cm-track); }
.event-sold-bar i { display: block; height: 100%; border-radius: inherit; background: var(--cm-accent); }
.event-row-card .event-more, .event-row-card .event-row-actions, .event-row-card .event-row-stats { display: none !important; }
@media (max-width: 699px) {
  .event-row-card { grid-template-columns: 104px minmax(0, 1fr); gap: 14px; padding: 12px; }
  .event-title-line h2 { font-size: 17px; }
  .event-row-card .event-date-block strong { font-size: 36px; }
}

/* Sales: one filter at the top right */
#sales-event-filter { min-height: 40px; padding: 0 38px 0 14px; border: 0; border-radius: 999px; background-color: var(--cm-card); color: var(--cm-text); font-size: 14px; font-weight: 500; }
.view-panel[data-panel="sales"] .page-heading { display: flex; justify-content: space-between; gap: 12px; }
.sales-metrics { grid-template-columns: minmax(0, 1fr) !important; max-width: 280px; }

/* New event window: name, date & time, tickets, status; the rest under "More options" */
.event-editor .event-editor-heading .eyebrow { display: none; }
.event-editor .event-editor-note:not([data-state]) { display: none; }
.event-editor .event-editor-fields { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; }
.event-editor .event-datetime-field legend { margin-bottom: 8px; color: var(--cm-muted); font-size: 13px; font-weight: 600; }
.event-editor .event-datetime-controls { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 10px; align-items: end; }
.event-editor .event-datetime-controls > label, .event-editor .event-time-controls > label { font-size: 0; gap: 0; }
.event-editor .event-time-controls { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.event-editor .event-time-controls select { min-height: 48px; padding: 0 26px 0 12px; background-position: right 8px center; font-size: 15px; }
.event-editor .event-tiers-heading { display: flex; align-items: center; justify-content: space-between; margin-top: 4px; }
.event-editor .event-tiers-heading h3 { margin: 0; font-size: 17px; font-weight: 700; }
.event-editor .add-tier-button { min-height: 36px; padding: 0 14px; border: 0; border-radius: 999px; background: var(--cm-accent-soft); color: var(--cm-accent); font-size: 14px; font-weight: 600; }
.event-editor .add-tier-button .cm-icon { width: 16px; height: 16px; }
.event-editor .event-status-field { display: grid; gap: 8px; margin-top: 4px; }
.event-more-options { display: grid; border-top: 1px solid var(--cm-line); }
.event-more-options > summary {
  display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 52px; color: var(--cm-text); font-size: 15px; font-weight: 600; list-style: none; cursor: pointer;
}
.event-more-options > summary::-webkit-details-marker { display: none; }
.event-more-options > summary > span { margin-left: auto; color: var(--cm-quiet); font-size: 13px; font-weight: 400; }
.event-more-options > summary::after { content: "›"; color: var(--cm-muted); font-size: 22px; transition: transform .15s ease; }
.event-more-options[open] > summary::after { transform: rotate(90deg); color: var(--cm-accent); }
.event-more-options[open] > summary > span { display: none; }
.event-more-fields { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; padding: 4px 0 8px; }
.event-more-fields .field-help { color: var(--cm-quiet); font-size: 12px; }
.mobile-navigation { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }

/* ==== Event page: details + searchable ticket buyers ==== */
.event-row-card { position: relative; }
.event-card-edit {
  position: absolute; right: 14px; bottom: 44px; display: grid; width: 36px; height: 36px; place-items: center; padding: 0;
  border: 0; border-radius: 50%; background: var(--cm-raised); color: var(--cm-text); cursor: pointer;
}
.event-card-edit:hover { background: var(--cm-accent); }
.event-card-edit .cm-icon { width: 17px; height: 17px; }
.event-row-card:has(.event-card-edit) .event-sold-row { padding-right: 0; }
.event-row-card:has(.event-card-edit) .event-title-line { padding-right: 0; }
.event-back { display: inline-flex; align-items: center; gap: 4px; margin: 0 0 16px -4px; padding: 6px 4px; border: 0; background: none; color: var(--cm-accent); font-size: 15px; font-weight: 600; cursor: pointer; }
.event-back .cm-icon { width: 18px; height: 18px; }
.event-detail-head { display: grid; grid-template-columns: 168px minmax(0, 1fr); gap: 20px; padding: 16px; border: 1px solid var(--cm-line); border-radius: 20px; background: var(--cm-card); }
.event-detail-head .event-date-block {
  display: grid; aspect-ratio: 4 / 5; align-content: end; justify-items: start; gap: 2px; padding: 14px; border-radius: 14px; color: #fff;
  background: radial-gradient(circle at 30% 22%, rgb(201 81 243 / 55%) 0, transparent 52%), linear-gradient(160deg, #3b1450, #120618);
}
.event-detail-head .event-date-block span:first-child { font-size: 14px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.event-detail-head .event-date-block strong { font-size: 54px; font-weight: 800; line-height: 1; }
.event-detail-head .event-date-block span:last-child { color: rgb(255 255 255 / 75%); font-size: 14px; font-weight: 600; }
.event-detail-info { display: flex; min-width: 0; flex-direction: column; gap: 6px; padding: 4px 0; }
.event-detail-info h1 { margin: 0; font-size: 26px; font-weight: 700; line-height: 1.2; letter-spacing: -.01em; }
.event-detail-info .status-pill { flex: 0 0 auto; padding: 4px 10px; border-radius: 999px; font-size: 12px; font-weight: 600; text-transform: none; letter-spacing: 0; }
.event-detail-info .status-upcoming { background: var(--cm-green-soft); color: var(--cm-green); }
.event-detail-info .status-neutral { background: var(--cm-gray-badge); color: var(--cm-muted); }
.event-detail-info .event-sold { margin-top: auto; }
.event-edit-button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; align-self: flex-start; min-height: 42px; margin-top: 14px; padding: 0 18px; border-radius: 999px; font-size: 15px; font-weight: 600; }
.event-edit-button .cm-icon { width: 16px; height: 16px; }
.buyers { margin-top: 26px; }
.buyers-head h2 { margin: 0; font-size: 19px; font-weight: 700; }
.buyers-head h2 span { color: var(--cm-quiet); font-size: 14px; font-weight: 500; }
.buyer-search { position: relative; display: block; margin-bottom: 12px; }
.buyer-search .cm-icon { position: absolute; top: 50%; left: 14px; width: 18px; height: 18px; color: var(--cm-quiet); transform: translateY(-50%); pointer-events: none; }
.buyer-search input { width: 100%; min-height: 48px; padding: 0 14px 0 42px; border: 1px solid transparent; border-radius: 14px; background: var(--cm-card); color: var(--cm-text); font: inherit; font-size: 16px; }
.buyer-search input:focus { border-color: var(--cm-accent-line); outline: none; }
.buyer-list { overflow: hidden; border: 1px solid var(--cm-line); border-radius: 20px; background: var(--cm-card); }
.buyer-row { display: flex; align-items: center; gap: 12px; padding: 13px 16px; border-top: 1px solid var(--cm-line); }
.buyer-row:first-child { border-top: 0; }
.buyer-avatar { display: grid; width: 38px; height: 38px; flex: 0 0 38px; place-items: center; border-radius: 50%; background: var(--cm-accent-tile); color: var(--cm-accent); font-size: 14px; font-weight: 700; }
.buyer-copy { display: grid; flex: 1; min-width: 0; gap: 2px; }
.buyer-copy strong { font-size: 15px; font-weight: 600; }
.buyer-copy small { overflow: hidden; color: var(--cm-muted); font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.buyer-meta { display: grid; justify-items: end; gap: 2px; }
.buyer-meta b { font-size: 15px; font-weight: 600; }
.buyer-meta small { color: var(--cm-quiet); font-size: 12px; white-space: nowrap; }
.buyers-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 14px; margin-bottom: 12px; }
.buyers-head h2 { margin: 0; }
.buyer-actions { display: flex; gap: 8px; }
.buyer-actions[hidden] { display: none; }
.buyers .buyer-action { min-height: 44px; padding: 8px 14px; gap: 8px; font-size: 14px; font-weight: 600; }
.buyer-action .cm-icon { width: 18px; height: 18px; }
.buyer-tags { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 6px; margin-top: 3px; min-width: 0; }
.buyer-tag { white-space: nowrap; }
.buyer-tag.is-optin { background: transparent; color: var(--cm-green); box-shadow: inset 0 0 0 1px rgb(95 211 106 / 45%); }
.buyer-qty { display: none; color: var(--cm-text); font-size: 13px; font-weight: 600; white-space: nowrap; }
.buyer-tag { padding: 2px 8px; border-radius: 99px; background: var(--cm-gray-badge); color: var(--cm-muted); font-size: 12px; font-weight: 600; line-height: 1.5; }
.buyer-tag.is-account { background: transparent; color: var(--cm-accent); box-shadow: inset 0 0 0 1px var(--cm-accent-line); }
.buyer-checkin { flex: 0 0 auto; min-width: 104px; min-height: 44px; padding: 0 14px; border: 0; border-radius: 99px; background: var(--cm-accent); color: var(--cm-on-accent); font: inherit; font-size: 14px; font-weight: 700; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; }
.buyer-checkin:not(.is-in) { background: #a93fd0; }
.buyer-checkin.is-in { background: transparent; color: var(--cm-green); box-shadow: inset 0 0 0 1.5px var(--cm-green); }
.buyer-checkin.is-error { background: #5a1f2a; color: #ffb3c0; }
.buyer-row.is-in .buyer-copy strong { color: var(--cm-muted); }
.buyer-search { position: sticky; top: 8px; z-index: 5; }
.buyer-search input { background: var(--cm-raised); }
.buyer-actions { margin-bottom: 12px; }
.buyer-sr { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.buyer-checkin[aria-busy="true"] { opacity: .6; cursor: wait; }
span.buyer-checkin { cursor: default; }
.buyer-row.is-in .buyer-avatar { background: var(--cm-green-soft); color: var(--cm-green); }
@media (max-width: 560px) {
  .buyer-actions { width: 100%; }
  .buyers .buyer-action { flex: 1; }
  .buyer-row { gap: 10px; padding: 12px 14px; }
  .buyer-meta { display: none; }
  .buyer-qty { display: inline; }
  .buyer-avatar { width: 34px; height: 34px; flex-basis: 34px; font-size: 13px; }
  .buyer-copy strong { font-size: 16px; }
  .buyer-row .buyer-checkin { min-width: 96px; }
}
.buyer-empty { margin: 0; padding: 22px 16px; color: var(--cm-muted); font-size: 14px; text-align: center; }
@media (max-width: 699px) {
  .event-detail-head { grid-template-columns: 112px minmax(0, 1fr); gap: 14px; padding: 12px; }
  .event-detail-head .event-date-block strong { font-size: 38px; }
  .event-detail-info h1 { font-size: 20px; }
  .event-card-edit { right: 12px; bottom: 40px; }
}
.event-detail-head .event-date-block { width: auto; height: auto; min-width: 0; margin: 0; border: 0; text-align: left; }
.event-detail-head .event-date-block > * { margin: 0; }
.event-card-edit { top: 14px; bottom: auto; }
.event-row-card:has(.event-card-edit) .event-title-line { padding-right: 46px; }
@media (max-width: 699px) { .event-card-edit { top: 12px; bottom: auto; } }

/* Upcoming / Past: smaller, like the bar dashboard's segmented switch */
.filter-row { display: inline-flex; gap: 0; padding: 3px; border-radius: 999px; background: var(--cm-card); }
.filter-row .filter-chip { min-height: 32px; padding: 0 16px; border: 0; border-radius: 999px; background: transparent; color: var(--cm-muted); font-size: 14px; font-weight: 600; }
.filter-row .filter-chip.selected { background: var(--cm-accent); color: #fff; }
.view-panel[data-panel="events"] { justify-items: stretch; }
.view-panel[data-panel="events"] > .filter-row { justify-self: start; }
/* Sales: three equal boxes */
.sales-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; max-width: none; }
.sales-metrics .metric-card[hidden] { display: none; }
/* Info rows that aren't buttons don't look like buttons */
.settings-group .setting-row { cursor: default; }
#live-event-empty { padding: 30px 16px; border: 1px solid var(--cm-line); border-radius: 20px; background: var(--cm-card); text-align: center; }
#live-event-empty strong { display: block; font-size: 16px; }
#live-event-empty p { margin: 6px 0 0; color: var(--cm-muted); font-size: 14px; }
.sales-metrics #sales-ticket-caption { display: none; }

/* Sales: money first, then each event */
.sales-metrics { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) !important; }
.sales-metrics .metric-money strong { color: var(--cm-text); }
.sales-metrics .metric-card small { display: block; margin-top: 4px; color: var(--cm-quiet); font-size: 12px; }
.sales-by-event { margin-top: 26px; }
.sales-by-event h2 { margin: 0 0 12px; font-size: 19px; font-weight: 700; }
.sales-event-list { overflow: hidden; border: 1px solid var(--cm-line); border-radius: 20px; background: var(--cm-card); }
.sales-event-row { display: flex; width: 100%; align-items: center; gap: 14px; padding: 12px 16px; border: 0; border-top: 1px solid var(--cm-line); background: transparent; color: var(--cm-text); text-align: left; cursor: pointer; font: inherit; }
.sales-event-row:first-child { border-top: 0; }
.sales-event-row:hover { background: #262626; }
.sales-event-date { display: grid; width: 44px; height: 48px; flex: 0 0 44px; place-content: center; justify-items: center; border-radius: 12px; background: var(--cm-accent-tile); color: var(--cm-accent); line-height: 1; }
.sales-event-date small { font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.sales-event-date b { margin-top: 2px; font-size: 18px; font-weight: 800; }
.sales-event-copy { display: grid; flex: 1; min-width: 0; gap: 2px; }
.sales-event-copy strong { overflow: hidden; font-size: 15px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.sales-event-copy small { color: var(--cm-muted); font-size: 13px; }
.sales-event-money { font-size: 17px; font-weight: 700; font-variant-numeric: tabular-nums; }

/* ==== Event photos ==== */
.event-date-block.has-photo { background-size: cover !important; background-position: center !important; background-repeat: no-repeat !important; }
.event-date-block.has-photo > * { display: none !important; }
.event-photos { display: grid; gap: 10px; }
.event-photos-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.event-photos-head h3 { margin: 0; font-size: 17px; font-weight: 700; }
.event-photos-head small { color: var(--cm-quiet); font-size: 12px; }
.event-photo-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(96px, 1fr)); gap: 10px; }
.event-photo, .event-photo-add { position: relative; aspect-ratio: 4 / 5; border-radius: 14px; overflow: hidden; }
.event-photo-frame { position: absolute; inset: 0; background: var(--cm-card) center / cover no-repeat; }
.event-photo-cover { position: absolute; left: 6px; top: 6px; padding: 3px 8px; border-radius: 999px; background: var(--cm-accent); color: #fff; font-size: 11px; font-weight: 700; }
.event-photo-actions { position: absolute; right: 6px; bottom: 6px; left: 6px; display: flex; justify-content: flex-end; gap: 6px; }
.event-photo-actions button { display: grid; width: 28px; height: 28px; min-height: 0; place-items: center; padding: 0; border: 0; border-radius: 50%; background: rgb(0 0 0 / 70%); color: #fff; cursor: pointer; }
.event-photo-actions button .cm-icon { width: 15px; height: 15px; }
.event-photo-actions [data-photo-left] { margin-right: auto; }
.event-photo-add { display: grid; place-content: center; justify-items: center; gap: 6px; padding: 0; border: 1.5px dashed var(--cm-line-strong); background: var(--cm-card); color: var(--cm-muted); font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; }
.event-photo-add:hover { border-color: var(--cm-accent-line); color: var(--cm-text); }
.event-photo-add .cm-icon { width: 26px; height: 26px; color: var(--cm-accent); }
.event-editor .event-editor-note[data-state="progress"] { display: block; color: var(--cm-muted); }
.cm-date-clear { display: block; width: 100%; margin-top: 8px; min-height: 36px; border: 0; border-radius: 10px; background: var(--cm-raised); color: var(--cm-text); font: inherit; font-size: 14px; font-weight: 600; cursor: pointer; }

/* ---------- Login redesign (Nov 10): centered, one column, logo on a soft glow ---------- */
body { background: var(--cm-page) url("data:image/webp;base64,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") repeat; background-size: 160px 160px; }
.login-v2 { position: relative; isolation: isolate; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: calc(100svh - 30px); padding: 40px 20px; overflow: hidden; }
.login-v2::before { content: ""; position: absolute; left: 50%; top: 8%; width: 720px; height: 560px; transform: translateX(-50%); pointer-events: none; z-index: -1;
  background: radial-gradient(50% 50% at 50% 50%, rgb(201 81 243 / 24%) 0%, rgb(201 81 243 / 10%) 45%, rgb(201 81 243 / 0) 100%); }
.login-v2 .sign-in-card { position: relative; width: min(100%, 380px); display: flex; flex-direction: column; align-items: stretch; text-align: center; }
.login-v2 .sign-in-card > .wordmark { align-self: center; width: 220px; height: 56px; margin: 0 0 32px; background-position: center; }
.login-v2 .sign-in-card h1 { margin: 0 0 6px; font-size: 30px; font-weight: 700; letter-spacing: -.02em; line-height: 1.15; }
.login-v2 .intro { margin: 0 0 28px; font-size: 15px; line-height: 1.5; color: var(--cm-muted); }
.login-v2 #login-form { gap: 8px; text-align: left; }
.login-v2 #login-form label { margin-top: 10px; color: var(--cm-muted); font-size: 14px; font-weight: 600; }
.login-v2 .label-row { display: flex; align-items: center; justify-content: space-between; margin-top: 10px; }
.login-v2 .label-row label { margin-top: 0 !important; }
.login-v2 .label-row .quiet-action { min-height: 32px; padding: 0; color: var(--cm-accent); font-size: 14px; font-weight: 600; }
.login-v2 #login-form input { min-height: 52px; border-radius: 14px; background: var(--cm-card); border: 1px solid var(--cm-line-strong); font-size: 16px; }
.login-v2 .sign-in-button { margin-top: 16px; min-height: 54px; border-radius: 999px; font-size: 17px; font-weight: 700; box-shadow: 0 10px 30px var(--cm-accent-glow); }
.login-v2 .form-note { margin: 12px 0 0; font-size: 14px; line-height: 1.45; }
.login-v2 .form-note:empty { display: none; }
.login-v2 .sign-in-divider { margin: 28px 0 16px; font-size: 13px; }
.login-v2 .invite-button { width: 100%; min-height: 52px; border-radius: 999px; border: 1px solid var(--cm-line-strong); background: var(--cm-card); color: var(--cm-text); font-size: 15px; font-weight: 600; cursor: pointer; }
.login-v2 .invite-button:hover { background: var(--cm-raised); }
.login-v2 .preview-link { align-self: center; margin-top: 12px; min-height: 44px; color: var(--cm-quiet); font-size: 14px; font-weight: 600; text-align: center; }
.login-v2 .preview-link:hover { color: var(--cm-text); }
@media (prefers-reduced-motion: no-preference) {
  .login-v2 .sign-in-card { animation: login-in .6s cubic-bezier(.2,.7,.2,1) both; }
  @keyframes login-in { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
}

/* Tier row: name on its own line, then price, quantity and per-person limit */
.event-tier-row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
