:root{--color-bg: #ffffff;--color-surface: #f5f7fb;--color-surface-2: #eef2f8;--color-surface-raised: #ffffff;--color-surface-hover: var(--color-surface-2);--color-surface-active: var(--color-border);--color-text: #1f2937;--color-text-muted: #5c6672;--color-text-inverse: #ffffff;--color-border: #e1e6ef;--color-border-light: var(--color-border);--color-border-strong: #7d8794;--color-overlay: rgba(11, 18, 32, .56);--color-backdrop: var(--color-overlay);--color-primary: #0062cc;--color-primary-hover: #0057b3;--color-primary-active: #004480;--color-primary-subtle: #e8f1fc;--color-primary-text: #0062cc;--color-on-primary: #ffffff;--color-accent: #d0362b;--color-accent-hover: #b0281e;--color-accent-subtle: #fdecea;--color-accent-text: #b0281e;--color-on-accent: #ffffff;--color-violet: #5b3df5;--color-violet-subtle: #efebfe;--color-violet-text: #5b3df5;--color-sun: #ffb547;--color-on-sun: #1f2937;--color-secondary: #5c6672;--color-secondary-hover: #1f2937;--color-secondary-subtle: #eef2f8;--color-on-secondary: #ffffff;--color-success: #15803d;--color-success-hover: #0f6b32;--color-success-subtle: #edf8f1;--color-success-text: #137a3a;--color-on-success: #ffffff;--color-danger: #b91c1c;--color-danger-hover: #991b1b;--color-danger-subtle: #fdecec;--color-danger-text: #b91c1c;--color-on-danger: #ffffff;--color-warning: #8a5a00;--color-warning-hover: #6f4800;--color-warning-subtle: #fdf3e0;--color-warning-text: #8a5a00;--color-on-warning: #ffffff;--color-info: #0e7490;--color-info-hover: #0a5f75;--color-info-subtle: #e2f3f7;--color-info-text: #0e7490;--color-on-info: #ffffff;--color-focus-ring: #0062cc;--color-focus-ring-halo: rgba(0, 98, 204, .18);--focus-ring-width: 2px;--focus-ring-offset: 2px;--gradient-hero: linear-gradient(120deg, #0047a3 0%, #0062cc 45%, #5b3df5 100%);--gradient-accent: linear-gradient(120deg, #d0362b 0%, #c2366a 50%, #5b3df5 100%);--gradient-sun: linear-gradient(120deg, #ffb547 0%, #ff8a65 100%);--gradient-soft: linear-gradient(135deg, #eef4ff 0%, #f4efff 100%);--gradient-footer: linear-gradient(160deg, #0a2a5c 0%, #0b1220 100%);--gradient-cover-culture: linear-gradient(135deg, #c2366a 0%, #7c3aed 100%);--gradient-cover-sport: linear-gradient(135deg, #c2410c 0%, #d0362b 100%);--gradient-cover-education: linear-gradient(135deg, #0047a3 0%, #0e7490 100%);--gradient-cover-volunteer: linear-gradient(135deg, #0c7a61 0%, #15803d 100%);--gradient-cover-science: linear-gradient(135deg, #5b3df5 0%, #0062cc 100%);--gradient-cover-creative: linear-gradient(135deg, #d0362b 0%, #c2366a 100%);--gradient-cover-patriot: linear-gradient(135deg, #1e3a8a 0%, #b91c1c 100%);--hero-blob-warm: radial-gradient(closest-side, rgba(255, 122, 107, .55), rgba(255, 122, 107, 0));--hero-blob-sun: radial-gradient(closest-side, rgba(255, 181, 71, .35), rgba(255, 181, 71, 0));--hero-blob-violet: radial-gradient(closest-side, rgba(161, 139, 255, .55), rgba(161, 139, 255, 0));--hero-dots-color: rgba(255, 255, 255, .18);--hero-line: rgba(255, 255, 255, .22);--hero-text-muted: rgba(255, 255, 255, .9);--hero-surface: rgba(255, 255, 255, .14);--hero-surface-hover: rgba(255, 255, 255, .24);--media-glass-bg: rgba(255, 255, 255, .92);--media-glass-text: #1f2937;--media-plate-bg: #ffffff;--media-plate-text: #1f2937;--media-plate-accent: #b0281e;--media-fav-on: #d0362b;--media-on-cover: #ffffff;--media-scrim: linear-gradient(180deg, rgba(0, 0, 0, 0) 45%, rgba(0, 0, 0, .45) 100%);--media-glow: radial-gradient(closest-side, rgba(255, 255, 255, .28), rgba(255, 255, 255, 0));--shadow-color: rgba(16, 24, 40, .1);--shadow-sm: 0 1px 2px rgba(16, 24, 40, .06), 0 1px 3px rgba(16, 24, 40, .1);--shadow-md: 0 4px 12px rgba(16, 24, 40, .08), 0 2px 4px rgba(16, 24, 40, .04);--shadow-lg: 0 16px 40px rgba(16, 24, 40, .14), 0 4px 12px rgba(16, 24, 40, .06);--shadow-primary: 0 10px 28px rgba(0, 98, 204, .3);--shadow-accent: 0 10px 28px rgba(208, 54, 43, .28);--shadow-focus: 0 0 0 3px var(--color-focus-ring-halo);--space-0: 0;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 40px;--space-9: 48px;--space-10: 64px;--space-11: 80px;--space-12: 96px;--space-section: 80px;--space-section-sm: 48px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-2xl: 28px;--radius-full: 9999px;--font-sans: "PT Sans", "Segoe UI", -apple-system, BlinkMacSystemFont, sans-serif;--font-display: "PT Serif", "Georgia", "Times New Roman", serif;--font-mono: "JetBrains Mono", ui-monospace, "Consolas", monospace;--font-size-xs: .75rem;--font-size-eyebrow: .8125rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-lead: 1.1875rem;--font-size-xl: 1.375rem;--font-size-2xl: 1.875rem;--font-size-3xl: 2.5rem;--font-size-display: 3.5rem;--line-height-tight: 1.2;--line-height-normal: 1.6;--line-height-relaxed: 1.7;--line-height-display: 1.05;--line-height-heading: 1.12;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--transition-fast: .12s;--transition-base: .2s;--transition-slow: .32s;--ease-standard: cubic-bezier(.2, 0, 0, 1);--container-max-width: 1200px;--container-wide-max-width: 1360px;--layout-gutter: 24px;--layout-sidebar-width: 248px;--layout-nav-height: 68px;--breakpoint-lg: 1100px;--breakpoint-md: 960px;--breakpoint-sm: 640px;--z-dropdown: 100;--z-sticky: 200;--z-modal: 1000;--z-toast: 1100;--background-color: var(--color-bg);--surface-color: var(--color-surface);--card-background: var(--color-surface-raised);--navbar-background: var(--color-bg);--footer-background: var(--color-bg);--input-background: var(--color-surface-raised);--text-color: var(--color-text);--text-secondary: var(--color-text-muted);--text-primary: var(--color-text);--text-color-secondary: var(--color-text-muted);--secondary-text-color: var(--color-text-muted);--background-secondary: var(--color-surface);--hover-background: var(--color-surface-hover);--bg-color: var(--color-bg);--disabled-color: var(--color-text-muted);--primary-color: var(--color-primary);--primary-hover: var(--color-primary-hover);--primary-color-dark: var(--color-primary-hover);--primary-color-light: var(--color-primary-subtle);--primary-hover-color: var(--color-primary-hover);--secondary-color: var(--color-secondary);--secondary-hover: var(--color-secondary-hover);--secondary-hover-color: var(--color-secondary-hover);--secondary-color-dark: var(--color-secondary-hover);--success-color: var(--color-success);--success-hover: var(--color-success-hover);--success-color-dark: var(--color-success-hover);--danger-color: var(--color-danger);--danger-hover: var(--color-danger-hover);--danger-hover-color: var(--color-danger-hover);--danger-color-dark: var(--color-danger-hover);--error-color: var(--color-danger);--danger-color-light: var(--color-danger-subtle);--warning-color: var(--color-warning);--warning-hover: var(--color-warning-hover);--warning-color-dark: var(--color-warning-hover);--info-color: var(--color-info);--info-hover: var(--color-info-hover);--info-color-dark: var(--color-info-hover);--info-color-light: var(--color-info-subtle);--border-color: var(--color-border);--border-color-light: var(--color-border-light);--secondary-button-bg: var(--color-surface-2);--secondary-button-text: var(--color-text);--secondary-button-hover: var(--color-border)}:root[data-theme=dark]{--color-bg: #0b1220;--color-surface: #121b2e;--color-surface-2: #1a2540;--color-surface-raised: #121b2e;--color-surface-hover: #1a2540;--color-surface-active: #26334f;--color-text: #e6edf7;--color-text-muted: #a3b1cc;--color-text-inverse: #0b1220;--color-border: #26334f;--color-border-light: #26334f;--color-border-strong: #6b7d9f;--color-overlay: rgba(3, 6, 12, .72);--color-primary: #6aaeff;--color-primary-hover: #8cc0ff;--color-primary-active: #4f9bf5;--color-primary-subtle: #14294a;--color-primary-text: #6aaeff;--color-on-primary: #0b1220;--color-accent: #ff7a6b;--color-accent-hover: #ff958a;--color-accent-subtle: #3a1c22;--color-accent-text: #ff7a6b;--color-on-accent: #0b1220;--color-violet: #a18bff;--color-violet-subtle: #241d4a;--color-violet-text: #a18bff;--color-sun: #ffc46b;--color-on-sun: #0b1220;--color-secondary: #a3b1cc;--color-secondary-hover: #e6edf7;--color-secondary-subtle: #1a2540;--color-on-secondary: #0b1220;--color-success: #4ade80;--color-success-hover: #74e79d;--color-success-subtle: #0f2a1c;--color-success-text: #4ade80;--color-on-success: #0b1220;--color-danger: #ff8a80;--color-danger-hover: #ffa79f;--color-danger-subtle: #3a1717;--color-danger-text: #ff8a80;--color-on-danger: #0b1220;--color-warning: #ffc46b;--color-warning-hover: #ffd394;--color-warning-subtle: #33270f;--color-warning-text: #ffc46b;--color-on-warning: #0b1220;--color-info: #5fd0e6;--color-info-hover: #86dff0;--color-info-subtle: #0d2a33;--color-info-text: #5fd0e6;--color-on-info: #0b1220;--color-focus-ring: #8cc0ff;--color-focus-ring-halo: rgba(140, 192, 255, .22);--gradient-hero: linear-gradient(120deg, #0a2a5c 0%, #1f4fa8 50%, #4a33c9 100%);--gradient-accent: linear-gradient(120deg, #a8281f 0%, #9c2a56 50%, #4a33c9 100%);--gradient-soft: linear-gradient(135deg, #121b2e 0%, #1a1838 100%);--gradient-footer: linear-gradient(160deg, #08101f 0%, #0b1220 100%);--shadow-color: rgba(0, 0, 0, .4);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 6px 16px rgba(0, 0, 0, .4);--shadow-lg: 0 18px 44px rgba(0, 0, 0, .55);--shadow-primary: 0 10px 30px rgba(106, 174, 255, .22);--shadow-accent: 0 10px 30px rgba(255, 122, 107, .2);color-scheme:dark}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--line-height-normal);transition:background-color var(--transition-slow) var(--ease-standard),color var(--transition-slow) var(--ease-standard)}::selection{background-color:var(--color-primary);color:var(--color-on-primary)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}.ui-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:44px;padding:0 22px;border:1.5px solid transparent;border-radius:var(--radius-full);font-family:var(--font-sans);font-weight:var(--font-weight-bold);font-size:15px;line-height:1;text-decoration:none;white-space:nowrap;cursor:pointer;position:relative;background-color:var(--color-surface-2);color:var(--color-text);transition:background-color var(--transition-base) var(--ease-standard),color var(--transition-base) var(--ease-standard),border-color var(--transition-base) var(--ease-standard),box-shadow var(--transition-base) var(--ease-standard),filter var(--transition-base) var(--ease-standard),transform var(--transition-fast) var(--ease-standard)}.ui-button:focus-visible{border-color:var(--color-focus-ring)}.ui-button:hover:not(:disabled){transform:translateY(-1px)}.ui-button:active:not(:disabled){transform:translateY(0)}.ui-button--primary{background-color:var(--color-primary);color:var(--color-on-primary)}.ui-button--primary:hover:not(:disabled){background-color:var(--color-primary-hover);box-shadow:var(--shadow-primary)}.ui-button--primary:active:not(:disabled){background-color:var(--color-primary-active);box-shadow:none}.ui-button--gradient{background:var(--gradient-hero);color:#fff;box-shadow:var(--shadow-primary)}.ui-button--gradient:hover:not(:disabled){filter:brightness(1.08)}.ui-button--gradient:active:not(:disabled){filter:none;box-shadow:none}.ui-button--accent{background-color:var(--color-accent);color:var(--color-on-accent)}.ui-button--accent:hover:not(:disabled){background-color:var(--color-accent-hover);box-shadow:var(--shadow-accent)}.ui-button--accent:active:not(:disabled){background-color:var(--color-accent);box-shadow:none}.ui-button--secondary{background-color:var(--color-surface-2);color:var(--color-text)}.ui-button--secondary:hover:not(:disabled){background-color:var(--color-surface-active);box-shadow:var(--shadow-md)}.ui-button--secondary:active:not(:disabled){background-color:var(--color-surface-active);box-shadow:none}.ui-button--outline{background-color:transparent;color:var(--color-primary-text);border-color:var(--color-primary)}.ui-button--outline:hover:not(:disabled){background-color:var(--color-primary-subtle);color:var(--color-primary-text)}.ui-button--outline:focus-visible{border-color:var(--color-focus-ring)}.ui-button--ghost{background-color:transparent;color:var(--color-text)}.ui-button--ghost:hover:not(:disabled){background-color:var(--color-surface-2);color:var(--color-text)}.ui-button--danger{background-color:var(--color-danger);color:var(--color-on-danger)}.ui-button--danger:hover:not(:disabled){filter:brightness(1.08)}.ui-button--danger:active:not(:disabled){filter:none}.ui-button--success{background-color:var(--color-success);color:var(--color-on-success)}.ui-button--success:hover:not(:disabled){background-color:var(--color-success-hover);box-shadow:var(--shadow-md)}.ui-button--warning{background-color:var(--color-warning);color:var(--color-on-warning)}.ui-button--warning:hover:not(:disabled){background-color:var(--color-warning-hover);box-shadow:var(--shadow-md)}.ui-button--info{background-color:var(--color-info);color:var(--color-on-info)}.ui-button--info:hover:not(:disabled){background-color:var(--color-info-hover);box-shadow:var(--shadow-md)}.ui-button--white{background-color:#fff;color:#0047a3}.ui-button--white:hover:not(:disabled){background-color:#eef4ff;color:#0047a3}.ui-button--glass{background-color:#ffffff24;color:#fff;border-color:#ffffff73}.ui-button--glass:hover:not(:disabled){background-color:#ffffff3d;color:#fff}.ui-button--small{height:36px;padding:0 var(--space-4);font-size:var(--font-size-sm)}.ui-button--medium{height:44px;padding:0 22px;font-size:15px}.ui-button--large{height:54px;padding:0 30px;font-size:17px}.ui-button--full-width{width:100%}.ui-button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none;filter:none}.ui-button--loading{pointer-events:none}.ui-button--loading>.ui-button__text{color:transparent}.ui-button__spinner{position:absolute;inset:0;margin:auto;width:18px;height:18px;border:2.5px solid transparent;border-top-color:currentColor;border-right-color:currentColor;border-radius:var(--radius-full);animation:ui-button-spin .8s linear infinite;flex-shrink:0}@keyframes ui-button-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ui-button__text{display:inline-flex;align-items:center}.ui-card{display:flex;flex-direction:column;border-radius:var(--radius-xl);overflow:hidden;background-color:var(--color-surface-raised);color:var(--color-text);border:1px solid var(--color-border);transition:box-shadow var(--transition-base) var(--ease-standard),border-color var(--transition-base) var(--ease-standard),transform var(--transition-base) var(--ease-standard)}.ui-card--default{background-color:var(--color-surface-raised)}.ui-card--outlined{background-color:var(--color-surface-raised);border-color:var(--color-border)}.ui-card--flat{background-color:var(--color-surface);border-color:transparent;box-shadow:none;border-radius:var(--radius-xl)}.ui-card--gradient{background:var(--gradient-hero);color:#fff;border-color:transparent;border-radius:var(--radius-2xl);box-shadow:var(--shadow-primary)}.ui-card--soft{background:var(--gradient-soft);border-color:var(--color-border);border-radius:var(--radius-2xl)}.ui-card--shadow-none{box-shadow:none}.ui-card--shadow-small{box-shadow:var(--shadow-sm)}.ui-card--shadow-medium{box-shadow:var(--shadow-md)}.ui-card--shadow-large{box-shadow:var(--shadow-lg)}.ui-card--pad-md .ui-card__content{padding:var(--space-6)}.ui-card--pad-lg .ui-card__content{padding:var(--space-7)}.ui-card--pad-none .ui-card__content{padding:0}.ui-card--interactive{cursor:pointer}.ui-card--interactive:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:transparent}.ui-card--interactive:focus-visible{border-color:var(--color-focus-ring);box-shadow:var(--shadow-md)}.ui-card__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border);font-weight:var(--font-weight-semibold)}.ui-card__content{flex-grow:1}.ui-card__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border)}.ui-input-wrapper{display:flex;flex-direction:column;margin-bottom:var(--space-4);width:100%}.ui-input__label{margin-bottom:6px;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-text)}.ui-input{width:100%;box-sizing:border-box;height:48px;padding:0 var(--space-4);font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text);background-color:var(--color-surface-raised);border:1.5px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast) var(--ease-standard),box-shadow var(--transition-fast) var(--ease-standard),background-color var(--transition-fast) var(--ease-standard)}.ui-input::placeholder{color:var(--color-text-muted);opacity:1}.ui-input:hover:not(:disabled):not(:focus){border-color:var(--color-border-strong)}.ui-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-subtle)}.ui-input:disabled{background-color:var(--color-surface);color:var(--color-text-muted);cursor:not-allowed}.ui-input--small{height:40px;padding:0 var(--space-3);font-size:var(--font-size-sm)}.ui-input--medium{height:48px;padding:0 var(--space-4)}.ui-input--large{height:56px;padding:0 var(--space-4);font-size:17px;border-radius:var(--radius-md)}.ui-input--error,.ui-input.is-invalid,.is-invalid .ui-input{border-color:var(--color-danger)}.ui-input--error:focus,.ui-input.is-invalid:focus,.is-invalid .ui-input:focus{border-color:var(--color-danger);box-shadow:0 0 0 4px var(--color-danger-subtle)}.ui-textarea{height:auto;min-height:120px;padding:12px var(--space-4);resize:vertical;line-height:var(--line-height-normal)}.ui-select{appearance:none;padding-right:44px;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--color-text-muted) 50%),linear-gradient(135deg,var(--color-text-muted) 50%,transparent 50%);background-position:calc(100% - 22px) calc(50% - 3px),calc(100% - 16px) calc(50% - 3px);background-size:6px 6px,6px 6px;background-repeat:no-repeat}.ui-input--full-width{width:100%}.ui-input__helper-text{margin-top:var(--space-1);font-size:13px;line-height:var(--line-height-normal);color:var(--color-text-muted)}.ui-input__error-text{margin-top:var(--space-1);font-size:13px;line-height:var(--line-height-normal);color:var(--color-danger-text);font-weight:var(--font-weight-bold)}.ui-badge{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);line-height:1;letter-spacing:.02em;white-space:nowrap;vertical-align:baseline;border-radius:var(--radius-full);transition:color var(--transition-fast) var(--ease-standard),background-color var(--transition-fast) var(--ease-standard)}.ui-badge--small{height:22px;padding:0 8px;font-size:var(--font-size-xs)}.ui-badge--medium{height:26px;padding:0 10px;font-size:var(--font-size-xs)}.ui-badge--large{height:30px;padding:0 var(--space-3);font-size:13px}.ui-badge--dot:before{content:"";width:7px;height:7px;border-radius:var(--radius-full);background-color:currentColor;flex-shrink:0}.ui-badge--primary{color:var(--color-on-primary);background-color:var(--color-primary)}.ui-badge--secondary{color:var(--color-on-secondary);background-color:var(--color-secondary)}.ui-badge--success{color:var(--color-on-success);background-color:var(--color-success)}.ui-badge--danger{color:var(--color-on-danger);background-color:var(--color-danger)}.ui-badge--warning{color:var(--color-on-warning);background-color:var(--color-warning)}.ui-badge--info{color:var(--color-on-info);background-color:var(--color-info)}.ui-badge--accent{color:var(--color-on-accent);background-color:var(--color-accent)}.ui-badge--violet{color:var(--color-text-inverse);background-color:var(--color-violet)}.ui-badge--glass{color:var(--media-glass-text);background-color:var(--media-glass-bg)}.ui-badge--subtle{background-color:var(--color-primary-subtle);color:var(--color-primary-text)}.ui-badge--subtle.ui-badge--secondary{background-color:var(--color-secondary-subtle);color:var(--color-secondary)}.ui-badge--subtle.ui-badge--success{background-color:var(--color-success-subtle);color:var(--color-success-text)}.ui-badge--subtle.ui-badge--danger{background-color:var(--color-danger-subtle);color:var(--color-danger-text)}.ui-badge--subtle.ui-badge--warning{background-color:var(--color-warning-subtle);color:var(--color-warning-text)}.ui-badge--subtle.ui-badge--info{background-color:var(--color-info-subtle);color:var(--color-info-text)}.ui-badge--subtle.ui-badge--accent{background-color:var(--color-accent-subtle);color:var(--color-accent-text)}.ui-badge--subtle.ui-badge--violet{background-color:var(--color-violet-subtle);color:var(--color-violet-text)}.ui-tabs{display:flex;flex-direction:column}.ui-tabs__header{display:flex;flex-wrap:wrap;align-items:center;align-self:flex-start;gap:var(--space-1);padding:5px;border-radius:var(--radius-full);background-color:var(--color-surface-2)}.ui-tabs__tab{display:inline-flex;align-items:center;gap:var(--space-2);height:38px;padding:0 18px;border:0;border-radius:var(--radius-full);background-color:transparent;color:var(--color-text-muted);font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);line-height:1;white-space:nowrap;cursor:pointer;transition:color var(--transition-fast) var(--ease-standard),background-color var(--transition-fast) var(--ease-standard),box-shadow var(--transition-fast) var(--ease-standard)}.ui-tabs__tab:hover{color:var(--color-text)}.ui-tabs__tab--active,.ui-tabs__tab--active:hover{background-color:var(--color-surface-raised);color:var(--color-primary-text);box-shadow:var(--shadow-sm)}.ui-tabs__content{padding:var(--space-6) 0 0}.ui-tabs--bare .ui-tabs__header{align-self:stretch;gap:28px;padding:0;border-radius:0;background-color:transparent;border-bottom:1px solid var(--color-border)}.ui-tabs--bare .ui-tabs__tab{height:auto;padding:14px 0;border-radius:0;border-bottom:3px solid transparent;background-color:transparent;color:var(--color-text-muted);font-size:15px;margin-bottom:-1px}.ui-tabs--bare .ui-tabs__tab:hover{color:var(--color-text);background-color:transparent}.ui-tabs--bare .ui-tabs__tab--active,.ui-tabs--bare .ui-tabs__tab--active:hover{background-color:transparent;border-bottom-color:var(--color-primary);color:var(--color-primary-text);box-shadow:none}.protected-route{display:flex;justify-content:center;align-items:center;height:100vh;width:100%}.protected-route__content{text-align:center;padding:2rem;border-radius:8px;background-color:#f8f9fa;box-shadow:0 2px 10px #0000001a}.protected-route__title{font-size:1.5rem;margin-bottom:1rem;color:#333}.protected-route__message{font-size:1rem;color:#666;margin-bottom:1.5rem}.protected-route__button{padding:.5rem 1rem;background-color:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem;transition:background-color .2s}.protected-route__button:hover{background-color:#0056b3}:root{--breakpoint-xs: 0;--breakpoint-sm: 576px;--breakpoint-md: 768px;--breakpoint-lg: 992px;--breakpoint-xl: 1200px;--breakpoint-xxl: 1400px}.hidden-xs{display:none!important}@media (min-width: 576px){.hidden-xs{display:initial!important}.hidden-sm{display:none!important}}@media (min-width: 768px){.hidden-sm{display:initial!important}.hidden-md{display:none!important}}@media (min-width: 992px){.hidden-md{display:initial!important}.hidden-lg{display:none!important}}@media (min-width: 1200px){.hidden-lg{display:initial!important}.hidden-xl{display:none!important}}.grid{display:grid}.grid-cols-1{grid-template-columns:1fr}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.grid-gap-1{gap:.25rem}.grid-gap-2{gap:.5rem}.grid-gap-3{gap:1rem}.grid-gap-4{gap:1.5rem}.grid-gap-5{gap:3rem}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.p-0{padding:0}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:1rem;padding-right:1rem}.px-4{padding-left:1.5rem;padding-right:1.5rem}.px-5{padding-left:3rem;padding-right:3rem}.py-0{padding-top:0;padding-bottom:0}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:1rem;padding-bottom:1rem}.py-4{padding-top:1.5rem;padding-bottom:1.5rem}.py-5{padding-top:3rem;padding-bottom:3rem}.m-0{margin:0}.m-1{margin:.25rem}.m-2{margin:.5rem}.m-3{margin:1rem}.m-4{margin:1.5rem}.m-5{margin:3rem}.mx-0{margin-left:0;margin-right:0}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-3{margin-left:1rem;margin-right:1rem}.mx-4{margin-left:1.5rem;margin-right:1.5rem}.mx-5{margin-left:3rem;margin-right:3rem}.my-0{margin-top:0;margin-bottom:0}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-3{margin-top:1rem;margin-bottom:1rem}.my-4{margin-top:1.5rem;margin-bottom:1.5rem}.my-5{margin-top:3rem;margin-bottom:3rem}.w-full{width:100%}.w-auto{width:auto}.h-full{height:100%}.h-auto{height:auto}@media (min-width: 576px){.sm\:grid-cols-1{grid-template-columns:1fr}.sm\:grid-cols-2{grid-template-columns:repeat(2,1fr)}.sm\:grid-cols-3{grid-template-columns:repeat(3,1fr)}.sm\:grid-cols-4{grid-template-columns:repeat(4,1fr)}.sm\:flex-row{flex-direction:row}.sm\:flex-col{flex-direction:column}.sm\:hidden{display:none!important}.sm\:block{display:block!important}.sm\:inline{display:inline!important}.sm\:flex{display:flex!important}.sm\:grid{display:grid!important}.sm\:text-left{text-align:left}.sm\:text-center{text-align:center}.sm\:text-right{text-align:right}.sm\:w-full{width:100%}.sm\:w-auto{width:auto}}@media (min-width: 768px){.md\:grid-cols-1{grid-template-columns:1fr}.md\:grid-cols-2{grid-template-columns:repeat(2,1fr)}.md\:grid-cols-3{grid-template-columns:repeat(3,1fr)}.md\:grid-cols-4{grid-template-columns:repeat(4,1fr)}.md\:flex-row{flex-direction:row}.md\:flex-col{flex-direction:column}.md\:hidden{display:none!important}.md\:block{display:block!important}.md\:inline{display:inline!important}.md\:flex{display:flex!important}.md\:grid{display:grid!important}.md\:text-left{text-align:left}.md\:text-center{text-align:center}.md\:text-right{text-align:right}.md\:w-full{width:100%}.md\:w-auto{width:auto}}@media (min-width: 992px){.lg\:grid-cols-1{grid-template-columns:1fr}.lg\:grid-cols-2{grid-template-columns:repeat(2,1fr)}.lg\:grid-cols-3{grid-template-columns:repeat(3,1fr)}.lg\:grid-cols-4{grid-template-columns:repeat(4,1fr)}.lg\:flex-row{flex-direction:row}.lg\:flex-col{flex-direction:column}.lg\:hidden{display:none!important}.lg\:block{display:block!important}.lg\:inline{display:inline!important}.lg\:flex{display:flex!important}.lg\:grid{display:grid!important}.lg\:text-left{text-align:left}.lg\:text-center{text-align:center}.lg\:text-right{text-align:right}.lg\:w-full{width:100%}.lg\:w-auto{width:auto}}@media (min-width: 1200px){.xl\:grid-cols-1{grid-template-columns:1fr}.xl\:grid-cols-2{grid-template-columns:repeat(2,1fr)}.xl\:grid-cols-3{grid-template-columns:repeat(3,1fr)}.xl\:grid-cols-4{grid-template-columns:repeat(4,1fr)}.xl\:flex-row{flex-direction:row}.xl\:flex-col{flex-direction:column}.xl\:hidden{display:none!important}.xl\:block{display:block!important}.xl\:inline{display:inline!important}.xl\:flex{display:flex!important}.xl\:grid{display:grid!important}.xl\:text-left{text-align:left}.xl\:text-center{text-align:center}.xl\:text-right{text-align:right}.xl\:w-full{width:100%}.xl\:w-auto{width:auto}}body.high-contrast{background-color:#000!important;color:#fff!important}body.high-contrast a{color:#ff0!important}body.high-contrast a:hover,body.high-contrast a:focus{background-color:#ff0!important;color:#000!important}body.high-contrast button,body.high-contrast input,body.high-contrast select,body.high-contrast textarea{border:2px solid #fff!important;background-color:#000!important;color:#fff!important}body.high-contrast .navbar{background-color:#000!important;border-bottom:2px solid #fff!important}body.high-contrast .event-card{border:2px solid #fff!important;background-color:#000!important}body.reduced-motion *,body.reduced-motion *:before,body.reduced-motion *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus-ring);outline-offset:var(--focus-ring-offset)}body.enhanced-focus-outline{--focus-ring-width: 3px;--focus-ring-offset: 3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link:focus{top:0}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{text-decoration:none}.container{max-width:var(--container-max-width);margin:0 auto;padding:0 var(--space-4);display:block}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:1rem}.mt-4{margin-top:1.5rem}.mt-5{margin-top:3rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.mb-5{margin-bottom:3rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:1rem}.p-4{padding:1.5rem}.p-5{padding:3rem}.eyebrow{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-accent-text);font-size:var(--font-size-eyebrow);font-weight:var(--font-weight-bold);letter-spacing:.08em;line-height:var(--line-height-tight);text-transform:uppercase}.section-alt{background-color:var(--color-surface)}.ui-alert{display:flex;align-items:flex-start;gap:14px;padding:16px 18px;border:1px solid transparent;border-radius:var(--radius-lg);background-color:var(--color-info-subtle);color:var(--color-text);font-size:15px;line-height:var(--line-height-normal)}.ui-alert__icon{display:inline-flex;flex-shrink:0;margin-top:1px}.ui-alert__body{flex:1;min-width:0}.ui-alert__title{margin:0 0 2px;font-weight:var(--font-weight-bold)}.ui-alert__text>:first-child{margin-top:1px}.ui-alert__text>:last-child{margin-bottom:0}.ui-alert__close{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-width:24px;min-height:24px;padding:2px;border:0;border-radius:var(--radius-sm);background-color:transparent;color:var(--color-text-muted);font-size:20px;line-height:1;cursor:pointer;transition:color var(--transition-fast) var(--ease-standard)}.ui-alert__close:hover{color:var(--color-text)}.ui-alert--info{background-color:var(--color-info-subtle);border-color:color-mix(in srgb,var(--color-info) 30%,transparent)}.ui-alert--info .ui-alert__icon{color:var(--color-info-text)}.ui-alert--success{background-color:var(--color-success-subtle);border-color:color-mix(in srgb,var(--color-success) 30%,transparent)}.ui-alert--success .ui-alert__icon{color:var(--color-success-text)}.ui-alert--warning{background-color:var(--color-warning-subtle);border-color:color-mix(in srgb,var(--color-warning) 30%,transparent)}.ui-alert--warning .ui-alert__icon{color:var(--color-warning-text)}.ui-alert--danger{background-color:var(--color-danger-subtle);border-color:color-mix(in srgb,var(--color-danger) 30%,transparent)}.ui-alert--danger .ui-alert__icon{color:var(--color-danger-text)}.toast{position:relative;display:flex;align-items:flex-start;width:380px;max-width:100%;padding:14px 16px;border:1px solid transparent;border-radius:var(--radius-lg);background-color:#1f2937;color:#fff;box-shadow:var(--shadow-lg);font-size:15px;line-height:var(--line-height-normal);pointer-events:auto;animation:toast-slide-in .3s ease forwards;--toast-success: #4ade80;--toast-danger: #ff8a80;--toast-warning: #ffc46b;--toast-info: #5fd0e6}.toast:before{content:"";position:absolute;top:0;bottom:0;left:0;width:4px;border-radius:var(--radius-lg) 0 0 var(--radius-lg)}:root[data-theme=dark] .toast{background-color:#26334f;color:#e6edf7;border-color:#3a4a6b}@keyframes toast-slide-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@media (prefers-reduced-motion: reduce){.toast{animation:none}}.toast__content{display:flex;align-items:flex-start;gap:12px;flex:1;min-width:0}.toast__icon{display:inline-flex;flex-shrink:0;margin-top:1px}.toast__message{flex:1;min-width:0;overflow-wrap:anywhere}.toast__close{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;margin-left:auto;min-width:24px;min-height:24px;padding:2px;border:0;border-radius:var(--radius-sm);background:transparent;color:inherit;font-size:20px;line-height:1;opacity:.75;cursor:pointer;transition:opacity var(--transition-fast) var(--ease-standard)}.toast__close:hover{opacity:1}.toast__close:focus-visible{outline-color:currentColor}.toast--success:before{background-color:var(--toast-success)}.toast--success .toast__icon{color:var(--toast-success)}.toast--error:before{background-color:var(--toast-danger)}.toast--error .toast__icon{color:var(--toast-danger)}.toast--warning:before{background-color:var(--toast-warning)}.toast--warning .toast__icon{color:var(--toast-warning)}.toast--info:before{background-color:var(--toast-info)}.toast--info .toast__icon{color:var(--toast-info)}.toast-container{position:fixed;top:calc(var(--navbar-height, 0px) + 20px);right:20px;z-index:10000;display:flex;flex-direction:column;pointer-events:none}.toast-container__region{display:flex;flex-direction:column;gap:10px}.toast-container__region:not(:empty)+.toast-container__region:not(:empty){margin-top:10px}@media (max-width: 768px){.toast-container{right:10px;left:10px;top:calc(var(--navbar-height, 0px) + 10px)}}@media (max-width: 768px){:root:has(.navbar__mobile-menu--open) .toast-container{z-index:999}}:root:has(.notification-bell__dropdown) .toast-container{z-index:999}.skeleton{position:relative;overflow:hidden;background-color:var(--color-surface-2);border-radius:var(--radius-sm)}.skeleton:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,#fff0,#ffffff8c,#fff0);animation:n18-shimmer 1.4s ease-in-out infinite}:root[data-theme=dark] .skeleton:after{background:linear-gradient(90deg,#fff0,#ffffff12,#fff0)}@keyframes n18-shimmer{to{transform:translate(100%)}}.skeleton--text{height:14px;margin-bottom:var(--space-2);border-radius:var(--radius-full)}.skeleton--title{height:22px;border-radius:var(--radius-full)}.skeleton--image{height:200px;border-radius:var(--radius-lg)}.skeleton--card{height:300px;border-radius:var(--radius-lg)}.skeleton--button{height:var(--space-10);width:120px;border-radius:var(--radius-md)}.skeleton--avatar{width:var(--space-10);height:var(--space-10);border-radius:var(--radius-full)}@media (prefers-reduced-motion: reduce){.skeleton:after{animation:none}}.skip-link{position:absolute;top:-40px;left:0;background:#000;color:#fff;padding:8px;text-decoration:none;z-index:1000;transition:top .3s ease}.skip-link:focus{top:0;outline:2px solid #fff;outline-offset:2px}.skip-link:hover{background:#333}.accessibility-toolbar{position:fixed;bottom:20px;right:20px;z-index:1000}.accessibility-toggle{width:50px;height:50px;border-radius:50%;background-color:#06c;color:#fff;border:none;font-size:24px;cursor:pointer;box-shadow:0 2px 10px #0000004d;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.accessibility-toggle:hover,.accessibility-toggle:focus{background-color:#0056b3;transform:scale(1.1);outline:2px solid #0066cc;outline-offset:2px}@media (max-width: 768px){#main-content>:last-child:not(:has(.about-footer)),#main-content .about-footer{padding-bottom:80px}}.accessibility-options{position:absolute;bottom:60px;right:0;background-color:#fff;border:1px solid #ddd;border-radius:8px;padding:20px;box-shadow:0 4px 12px #00000026;min-width:250px;transform:translateY(10px);opacity:0;visibility:hidden;transition:all .3s ease}.accessibility-toolbar.open .accessibility-options{transform:translateY(0);opacity:1;visibility:visible}.accessibility-title{margin-top:0;margin-bottom:15px;font-size:18px;color:#333}.accessibility-option{margin-bottom:15px}.accessibility-option:last-child{margin-bottom:0}.toggle-button{width:100%;padding:10px;background-color:#f5f5f5;border:1px solid #ddd;border-radius:4px;cursor:pointer;text-align:left;transition:all .2s ease}.toggle-button:hover,.toggle-button:focus{background-color:#e9e9e9;outline:2px solid #0066cc;outline-offset:2px}.toggle-button.active{background-color:#06c;color:#fff;border-color:#0056b3}.font-size-controls{display:flex;gap:10px;margin-top:8px}.font-size-controls button{flex:1;padding:8px;background-color:#f5f5f5;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-weight:700;transition:all .2s ease}.font-size-controls button:hover,.font-size-controls button:focus{background-color:#e9e9e9;outline:2px solid #0066cc;outline-offset:2px}.font-size-controls button:disabled{opacity:.5;cursor:not-allowed}.font-size-controls button:first-child{font-size:12px}.font-size-controls button:nth-child(2){font-size:14px}.font-size-controls button:last-child{font-size:18px}.m-tabbar{position:fixed;right:0;bottom:0;left:0;z-index:var(--z-sticky);display:none;grid-template-columns:repeat(5,1fr);height:var(--layout-nav-height);padding:6px 6px 10px;background-color:var(--color-surface-raised);border-top:1px solid var(--color-border);box-shadow:0 -6px 20px #1018280f}.m-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;padding:0;border:0;border-radius:var(--radius-md);background-color:transparent;color:var(--color-text-muted);font-size:11px;font-weight:700;text-decoration:none;cursor:pointer}.m-tab__label{overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}.m-tab:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus-ring);outline-offset:var(--focus-ring-offset)}.m-tab.is-on{color:var(--color-primary-text)}.m-tab.is-on svg{padding:4px 12px;border-radius:999px;background-color:var(--color-primary-subtle);box-sizing:content-box}@media (max-width: 960px){.m-tabbar{display:grid}#main-content:has(.m-tabbar){padding-bottom:calc(var(--layout-nav-height) + 8px)}body:has(.m-tabbar) .accessibility-toolbar{bottom:calc(var(--layout-nav-height) + 20px)}}@media print{.m-tabbar{display:none}}.error-boundary{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:var(--space-5);background-color:var(--color-surface);color:var(--color-text);font-family:var(--font-sans)}.error-boundary__card{max-width:600px;width:100%;padding:var(--space-7);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center}.error-boundary__title{margin:0 0 var(--space-3);font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--color-text)}.error-boundary__message{margin:0 0 var(--space-6);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-muted)}.error-boundary__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-3)}.error-boundary__button{display:inline-block;padding:var(--space-3) var(--space-6);border:2px solid var(--color-primary);border-radius:var(--radius-md);font-family:inherit;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);line-height:var(--line-height-tight);text-decoration:none;cursor:pointer;transition:background-color var(--transition-base) var(--ease-standard),border-color var(--transition-base) var(--ease-standard)}.error-boundary__button:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.error-boundary__button--primary{background-color:var(--color-primary);color:var(--color-on-primary)}.error-boundary__button--primary:hover{background-color:var(--color-primary-hover);border-color:var(--color-primary-hover)}.error-boundary__button--secondary{background-color:transparent;color:var(--color-primary)}.error-boundary__button--secondary:hover{background-color:var(--color-primary-subtle)}.error-boundary__details{margin-top:var(--space-6);text-align:left;font-size:var(--font-size-sm)}.error-boundary__details pre{max-height:200px;overflow:auto;padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-mono);white-space:pre-wrap}.loading-indicator{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px}.loading-indicator--small{padding:10px}.loading-indicator--medium{padding:20px}.loading-indicator--large{padding:40px}.loading-indicator__message{margin-top:15px;font-size:1rem;color:#666;text-align:center}.loading-spinner{position:relative;width:40px;height:40px}.loading-spinner__ring{position:absolute;top:0;left:0;width:100%;height:100%;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin 1s linear infinite}.loading-dots{display:flex;gap:5px}.loading-dots__dot{width:8px;height:8px;background-color:#007bff;border-radius:50%;animation:bounce 1.5s infinite ease-in-out both}.loading-dots__dot:nth-child(1){animation-delay:-.32s}.loading-dots__dot:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.loading-bar{width:100%;height:4px;background-color:#f3f3f3;border-radius:2px;overflow:hidden}.loading-bar__fill{height:100%;background-color:#007bff;width:0%;animation:fill 2s ease-in-out infinite}@keyframes fill{0%{width:0%}50%{width:100%}to{width:0%}}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;color:#64748b}.loading--fullscreen{position:fixed;inset:0;background:#fffc;z-index:1000}.loading__spinner{position:relative;width:40px;height:40px;margin-bottom:1rem}.loading__spinner--small{width:20px;height:20px}.loading__spinner--large{width:60px;height:60px}.loading__spinner div{position:absolute;width:100%;height:100%;border:4px solid #3b82f6;border-radius:50%;border-top-color:transparent;animation:spin 1s linear infinite}.loading__spinner--small div{border-width:2px}.loading__spinner--large div{border-width:6px}.loading__spinner div:nth-child(1){animation-delay:-.45s}.loading__spinner div:nth-child(2){animation-delay:-.3s}.loading__spinner div:nth-child(3){animation-delay:-.15s}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading__message{margin:0;font-size:1rem;text-align:center}
