html{--mat-sys-background: #fff8f8;--mat-sys-error: #ba1a1a;--mat-sys-error-container: #ffdad6;--mat-sys-inverse-on-surface: #faeeef;--mat-sys-inverse-primary: #ffb1c5;--mat-sys-inverse-surface: #352f30;--mat-sys-on-background: #201a1b;--mat-sys-on-error: #ffffff;--mat-sys-on-error-container: #93000a;--mat-sys-on-primary: #ffffff;--mat-sys-on-primary-container: #8f0045;--mat-sys-on-primary-fixed: #3f001b;--mat-sys-on-primary-fixed-variant: #8f0045;--mat-sys-on-secondary: #ffffff;--mat-sys-on-secondary-container: #5b3f46;--mat-sys-on-secondary-fixed: #2b151b;--mat-sys-on-secondary-fixed-variant: #5b3f46;--mat-sys-on-surface: #201a1b;--mat-sys-on-surface-variant: #514346;--mat-sys-on-tertiary: #ffffff;--mat-sys-on-tertiary-container: #930100;--mat-sys-on-tertiary-fixed: #410000;--mat-sys-on-tertiary-fixed-variant: #930100;--mat-sys-outline: #847376;--mat-sys-outline-variant: #d6c2c5;--mat-sys-primary: #ba005c;--mat-sys-primary-container: #ffd9e1;--mat-sys-primary-fixed: #ffd9e1;--mat-sys-primary-fixed-dim: #ffb1c5;--mat-sys-scrim: #000000;--mat-sys-secondary: #74565d;--mat-sys-secondary-container: #ffd9e1;--mat-sys-secondary-fixed: #ffd9e1;--mat-sys-secondary-fixed-dim: #e3bdc5;--mat-sys-shadow: #000000;--mat-sys-surface: #fff8f8;--mat-sys-surface-bright: #fff8f8;--mat-sys-surface-container: #f7ebec;--mat-sys-surface-container-high: #f1e5e6;--mat-sys-surface-container-highest: #ece0e1;--mat-sys-surface-container-low: #fdf1f2;--mat-sys-surface-container-lowest: #ffffff;--mat-sys-surface-dim: #e3d7d8;--mat-sys-surface-tint: #ba005c;--mat-sys-surface-variant: #f3dde1;--mat-sys-tertiary: #c00100;--mat-sys-tertiary-container: #ffdad4;--mat-sys-tertiary-fixed: #ffdad4;--mat-sys-tertiary-fixed-dim: #ffb4a8;--mat-sys-neutral-variant20: #3a2d30;--mat-sys-neutral10: #201a1b;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem Roboto;--mat-sys-body-large-font: Roboto;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Roboto;--mat-sys-body-medium-font: Roboto;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Roboto;--mat-sys-body-small-font: Roboto;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Roboto;--mat-sys-display-large-font: Roboto;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Roboto;--mat-sys-display-medium-font: Roboto;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem Roboto;--mat-sys-display-small-font: Roboto;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem Roboto;--mat-sys-headline-large-font: Roboto;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem Roboto;--mat-sys-headline-medium-font: Roboto;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem Roboto;--mat-sys-headline-small-font: Roboto;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem Roboto;--mat-sys-label-large-font: Roboto;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Roboto;--mat-sys-label-medium-font: Roboto;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Roboto;--mat-sys-label-small-font: Roboto;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem Roboto;--mat-sys-title-large-font: Roboto;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem Roboto;--mat-sys-title-medium-font: Roboto;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Roboto;--mat-sys-title-small-font: Roboto;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12}@charset "UTF-8";:root{--el-brand: #f5a9b8;--el-brand-soft: #fbd9e0;--el-brand-surface: #fdf0f4;--el-gold: #ffd700;--el-gold-hover: #f2c500;--el-primary: #c2185b;--el-primary-hover: #ad1457;--el-primary-soft: #fdf0f4;--el-on-primary: #ffffff;--el-text: #27272a;--el-text-secondary: #5b6472;--el-text-subtle: #6b7280;--el-ink-on-brand: #3a1220;--el-bg: #faf7f8;--el-surface: #ffffff;--el-border: #e8e2e5;--el-border-strong: #d4cdd1;--el-success: #2e7d32;--el-success-bg: #e8f5e9;--el-error: #c62828;--el-error-bg: #fdeaea;--el-warning: #b45309;--el-warning-bg: #fff4e0;--el-info: #1565c0;--el-info-bg: #e7f0fb;--el-radius-sm: 8px;--el-radius: 12px;--el-radius-lg: 16px;--el-radius-pill: 999px;--el-shadow-sm: 0 1px 3px rgba(58, 18, 32, .08);--el-shadow: 0 2px 12px rgba(58, 18, 32, .08);--el-shadow-lg: 0 8px 28px rgba(58, 18, 32, .14);--el-transition: .2s cubic-bezier(.2, 0, 0, 1);--el-font-heading: "Nunito", "Nunito Sans", "Roboto", sans-serif;--el-font-body: "Nunito Sans", "Roboto", sans-serif;--eventlama-primary: var(--el-primary);--eventlama-dark: var(--el-text);--eventlama-accent: var(--el-gold);--eventlama-light: var(--el-brand-surface);--eventlama-success: var(--el-success);--eventlama-error: var(--el-error);--eventlama-warning: var(--el-warning);--eventlama-info: var(--el-info);--spacing-page: 1rem;--spacing-section: 1.75rem;--spacing-card: 1rem;--font-size-h1: 1.6rem;--font-size-h2: 1.25rem}@media(min-width:768px){:root{--spacing-page: 1.5rem;--spacing-section: 2.25rem;--spacing-card: 1.5rem;--font-size-h1: 1.9rem;--font-size-h2: 1.4rem}}@media(min-width:1200px){:root{--spacing-page: 2rem;--spacing-section: 2.75rem;--spacing-card: 2rem;--font-size-h1: 2.15rem;--font-size-h2: 1.5rem}}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;font-family:var(--el-font-body);font-size:16px;line-height:1.5;color:var(--el-text);background-color:var(--el-bg);-webkit-font-smoothing:antialiased}app-root{display:flex;flex-direction:column;min-height:100vh}h1,h2,h3,h4{font-family:var(--el-font-heading);font-weight:800;letter-spacing:-.01em;line-height:1.25;color:var(--el-text);text-wrap:balance}h1{font-size:var(--font-size-h1)}h2{font-size:var(--font-size-h2);font-weight:700}h3{font-weight:700}.mat-mdc-card-title{font-family:var(--el-font-heading)!important;font-weight:700!important}::selection{background:var(--el-brand-soft);color:var(--el-ink-on-brand)}:focus-visible{outline:3px solid var(--el-primary);outline-offset:2px;border-radius:4px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}a{color:var(--el-primary)}a:hover{color:var(--el-primary-hover)}.mat-sidenav-content{display:flex!important;flex-direction:column;flex:1}app-footer{margin-top:auto}.container{width:100%;max-width:1200px;margin:0 auto;padding:var(--spacing-page);flex:1}.event-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-card);margin-bottom:var(--spacing-section)}@media(min-width:768px){.event-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}.mat-mdc-card{border-radius:var(--el-radius)!important;box-shadow:var(--el-shadow-sm)!important;border:1px solid var(--el-border);transition:box-shadow var(--el-transition),transform var(--el-transition)}.event-card{cursor:pointer;overflow:hidden}.event-card:hover{box-shadow:var(--el-shadow-lg)!important;transform:translateY(-3px)}.event-card:active{transform:translateY(-1px)}.mat-toolbar,.mat-toolbar.mat-primary{background:linear-gradient(120deg,var(--el-brand) 0%,#ef9cae 100%);color:var(--el-ink-on-brand);box-shadow:var(--el-shadow-sm)}.mat-mdc-button,.mat-mdc-raised-button,.mat-mdc-unelevated-button,.mat-mdc-outlined-button{text-transform:none;letter-spacing:.1px;font-weight:700;font-family:var(--el-font-body);border-radius:10px!important;cursor:pointer}.mat-mdc-button,.mat-mdc-raised-button,.mat-mdc-unelevated-button,.mat-mdc-outlined-button,.mat-mdc-icon-button{min-height:44px;min-width:44px}.mat-mdc-raised-button.mat-primary,.mat-mdc-unelevated-button.mat-primary{background-color:var(--el-primary)!important;color:var(--el-on-primary)!important}.mat-mdc-raised-button.mat-primary:hover:not([disabled]),.mat-mdc-unelevated-button.mat-primary:hover:not([disabled]){background-color:var(--el-primary-hover)!important}.mat-mdc-raised-button.mat-accent,.mat-mdc-unelevated-button.mat-accent,.mat-mdc-fab.mat-accent,.mat-mdc-mini-fab.mat-accent{background-color:var(--el-gold)!important;color:var(--el-ink-on-brand)!important}.mat-mdc-raised-button.mat-accent:hover:not([disabled]),.mat-mdc-unelevated-button.mat-accent:hover:not([disabled]),.mat-mdc-fab.mat-accent:hover:not([disabled]),.mat-mdc-mini-fab.mat-accent:hover:not([disabled]){background-color:var(--el-gold-hover)!important}.mat-mdc-button.mat-primary,.mat-mdc-outlined-button.mat-primary{color:var(--el-primary)!important}.mat-mdc-button.mat-warn,.mat-mdc-outlined-button.mat-warn{color:var(--el-error)!important}.btn-primary{background-color:var(--el-primary)!important;color:var(--el-on-primary)!important}.btn-primary:hover{background-color:var(--el-primary-hover)!important}.btn-accent{background-color:var(--el-gold)!important;color:var(--el-ink-on-brand)!important}.btn-accent:hover{background-color:var(--el-gold-hover)!important}.mat-mdc-form-field{width:100%;margin-bottom:1rem}.status-chip{padding:.35rem .85rem;border-radius:var(--el-radius-pill);font-size:.78rem;font-weight:700;display:inline-flex;align-items:center;gap:.35rem}.status-chip.success{background-color:var(--el-success-bg);color:var(--el-success)}.status-chip.pending{background-color:var(--el-warning-bg);color:var(--el-warning)}.status-chip.cancelled{background-color:var(--el-error-bg);color:var(--el-error)}.status-chip.used{background-color:var(--el-info-bg);color:var(--el-info)}.mat-mdc-chip.registered,.mat-mdc-chip.success{background-color:var(--el-success-bg)!important;color:var(--el-success)!important}.mat-mdc-chip.cancelled,.mat-mdc-chip.rejected-chip{background-color:var(--el-error-bg)!important;color:var(--el-error)!important}.mat-mdc-chip.completed,.mat-mdc-chip.used{background-color:var(--el-info-bg)!important;color:var(--el-info)!important}.mat-mdc-chip.expired,.mat-mdc-chip.pending-chip{background-color:var(--el-warning-bg)!important;color:var(--el-warning)!important}.mat-mdc-chip.registered-chip{background-color:var(--el-success)!important;color:#fff!important}.mat-mdc-chip.approval-chip{background-color:var(--el-brand-surface)!important;color:#8a2c53!important}.form-container{width:100%;max-width:520px;margin:var(--spacing-section) auto;padding:0 var(--spacing-page)}.empty-state{text-align:center;padding:3.5rem 1rem;color:var(--el-text-secondary)}.empty-state mat-icon{font-size:3.5rem;width:3.5rem;height:3.5rem;margin:0 auto 1rem;color:var(--el-brand)}.empty-state p{font-size:1.05rem;margin-bottom:1.5rem}.capacity-bar{height:8px;background-color:var(--el-border);border-radius:var(--el-radius-pill);overflow:hidden;margin-bottom:.5rem}.capacity-fill{height:100%;background:linear-gradient(90deg,var(--el-brand) 0%,var(--el-primary) 100%);border-radius:var(--el-radius-pill);transition:width .4s ease}.capacity-fill.almost-full{background:linear-gradient(90deg,#f0a860 0%,var(--el-warning) 100%)}.capacity-fill.full{background:var(--el-error)}.qr-code-container{display:flex;justify-content:center;align-items:center;padding:2rem;background:var(--el-surface);border-radius:var(--el-radius);margin:2rem 0}.qr-code-container qrcode{max-width:300px;width:100%}.validation-result{padding:2rem;border-radius:var(--el-radius);margin:1.5rem 0;text-align:center}.validation-result.success{background-color:var(--el-success-bg);border-left:4px solid var(--el-success);border-radius:0 var(--el-radius) var(--el-radius) 0}.validation-result.error{background-color:var(--el-error-bg);border-left:4px solid var(--el-error);border-radius:0 var(--el-radius) var(--el-radius) 0}.validation-result mat-icon{font-size:3rem;width:3rem;height:3rem;margin:0 auto 1rem}.validation-result mat-icon.success{color:var(--el-success)}.validation-result mat-icon.error{color:var(--el-error)}.validation-result h2{margin:1rem 0;font-size:1.5rem}.validation-result p{margin:.5rem 0;color:var(--el-text-secondary)}.camera-container{position:relative;width:100%;max-width:500px;margin:0 auto}.camera-container video{width:100%;border-radius:var(--el-radius);background:#000}.camera-container canvas{display:none}.scan-history{margin-top:2rem}.scan-history h3{margin-bottom:1rem}.scan-history .history-item{padding:1rem;margin-bottom:.5rem;background:var(--el-surface);border-left:4px solid var(--el-brand);border-radius:0 var(--el-radius-sm) var(--el-radius-sm) 0;display:flex;justify-content:space-between;align-items:center}.scan-history .history-item .time{font-size:.85rem;color:var(--el-text-subtle)}.error-message{color:var(--el-error);font-size:.9rem;margin:0 0 1rem;padding:.75rem 1rem;background-color:var(--el-error-bg);border-radius:var(--el-radius-sm);display:flex;align-items:center;justify-content:center;gap:.5rem;text-align:center}.success-message{color:var(--el-success);font-size:.9rem;margin:0 0 1rem;padding:.75rem 1rem;background-color:var(--el-success-bg);border-radius:var(--el-radius-sm);text-align:center}.divider{height:1px;background-color:var(--el-border);margin:1.5rem 0}.text-center{text-align:center}.text-muted{color:var(--el-text-secondary)}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.flex-center{display:flex;justify-content:center;align-items:center}.flex-between{display:flex;justify-content:space-between;align-items:center}.w-full{width:100%}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--el-border-strong);border-radius:var(--el-radius-pill);border:2px solid var(--el-bg)}::-webkit-scrollbar-thumb:hover{background:var(--el-brand)}.md-content h1,.md-content h2,.md-content h3,.md-content h4{margin:1rem 0 .5rem;line-height:1.3}.md-content h1{font-size:1.4rem}.md-content h2{font-size:1.25rem}.md-content h3,.md-content h4{font-size:1.1rem}.md-content p{margin:0 0 .75rem}.md-content ul,.md-content ol{margin:0 0 .75rem;padding-left:1.5rem}.md-content ul li,.md-content ol li{margin-bottom:.25rem}.md-content a{color:var(--el-primary);font-weight:600}.md-content blockquote{margin:0 0 .75rem;padding:.25rem 1rem;border-left:3px solid var(--el-primary);background:var(--el-brand-surface);border-radius:0 var(--el-radius) var(--el-radius) 0}.md-content code{background:var(--el-brand-surface);padding:.1rem .35rem;border-radius:4px;font-size:.9em}.md-content pre{background:var(--el-brand-surface);padding:.75rem 1rem;border-radius:var(--el-radius);overflow-x:auto;margin:0 0 .75rem}.md-content pre code{background:none;padding:0}.md-content hr{border:none;border-top:1px solid var(--el-border);margin:1rem 0}.md-content img{max-width:100%;border-radius:var(--el-radius)}.md-content table{border-collapse:collapse;margin:0 0 .75rem}.md-content table th,.md-content table td{border:1px solid var(--el-border);padding:.35rem .6rem}.md-content table th{background:var(--el-brand-surface)}
