:root{--color-bg-primary:#0a0a0a;--color-bg-secondary:#1a1a1a;--color-text-primary:#ffffff;--color-text-secondary:#a0a0a0;--color-border:#333333;--color-badge-bg:#333333;--color-accent-primary:#00F2FE;--color-accent-secondary:#FF2A54;--color-danger:#FF2A54;--color-warning:#FFB020;--font-main:"Noto Sans",sans-serif}[data-theme=light]{--color-bg-primary:#ffffff;--color-bg-secondary:#f4f4f4;--color-text-primary:#000000;--color-text-secondary:#5a5a5a;--color-border:#cccccc;--color-badge-bg:#e0e0e0}body.high-contrast{--color-accent-primary:#ffffff!important;--color-accent-secondary:#ffffff!important}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--color-bg-primary);color:var(--color-text-primary);font-family:var(--font-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.btn-primary{background-color:var(--color-accent-primary);color:#000000;font-weight:700;text-transform:uppercase;padding:.75rem 1.5rem;border:none;border-radius:4px;cursor:pointer;font-size:1rem;transition:background-color .2s ease,transform .1s ease}.btn-primary:hover{filter:brightness(.9);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-special{background-color:var(--color-accent-secondary);color:#ffffff;font-weight:700;padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-size:.875rem;transition:transform .1s ease}.btn-special:hover{transform:translateY(-1px)}.btn-secondary{background-color:transparent;color:var(--color-text-primary);border:1px solid var(--color-accent-primary);font-weight:700;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s ease;display:inline-block;text-align:center}.btn-secondary:hover{background-color:rgba(0,242,254,.1);transform:translateY(-1px)}.btn-secondary:active{transform:translateY(0)}.app-container{display:flex;height:100vh;overflow:hidden}.sidebar{width:250px;background-color:var(--color-bg-secondary);border-right:1px solid #333;padding:2rem 1rem;display:flex;flex-direction:column;gap:1rem;transition:width .3s ease,padding .3s ease;z-index:50}.sidebar.collapsed{width:80px;padding:2rem .5rem;align-items:center}.sidebar.no-transition,.sidebar.no-transition *{transition:none!important}.sidebar.collapsed .event-badge-dates,.sidebar.collapsed .event-badge-location,.sidebar.collapsed .event-badge-name,.sidebar.collapsed .sidebar-footer-text,.sidebar.collapsed .sidebar-text{display:none!important}.content-area{flex:1 1;padding:2rem;overflow-y:auto}.input-field{background-color:var(--color-bg-secondary);color:var(--color-text-primary);border:1px solid #333;padding:.75rem 1rem;border-radius:4px;font-size:1rem;font-family:var(--font-main);width:100%;transition:border-color .2s ease}.input-field:focus{outline:none;border-color:var(--color-accent-primary)}select.input-field{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="%23a0a0a0" viewBox="0 0 24 24"><path d="M7 10l5 5 5-5z"/></svg>');background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem;cursor:pointer}.heading-large,h1,h2,h3,h4,h5,h6{font-family:var(--font-main)}.heading-large{font-size:2.5rem;font-weight:800;margin-bottom:1rem}.heading-medium{font-family:var(--font-main);font-size:1.5rem;font-weight:700;margin-bottom:.75rem}.text-underlined{display:inline-block;background-image:linear-gradient(to top,var(--color-accent-primary) 35%,transparent 35%);background-repeat:no-repeat;background-position:bottom;background-size:100% 100%}.dl-page-header{display:flex;align-items:center;justify-content:space-between;padding:0;min-height:72px;margin-bottom:2rem;border-bottom:1px solid #333;position:sticky;top:0;z-index:10}.dl-page-header:before{content:"";position:absolute;top:-2rem;left:-2rem;right:-2rem;bottom:0;background-color:var(--color-bg-primary);z-index:-1}.dl-page-header-left{display:flex;align-items:center;gap:.75rem;flex:1 1}.sidebar-toggle-btn{background:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;padding:.25rem;border-radius:4px;transition:color .2s,background-color .2s}.sidebar-toggle-btn:hover{color:var(--color-text-primary);background-color:var(--color-bg-secondary)}.dl-page-header-title{font-size:1rem;font-weight:500;margin:0}.dl-page-header-separator{color:var(--color-text-secondary);font-size:1rem}.dl-page-header-metric{color:var(--color-text-secondary);font-size:.875rem}.dl-page-header-middle{display:flex;align-items:center;justify-content:center;gap:1rem}.dl-page-header-tab{color:var(--color-text-secondary);text-decoration:none;font-size:.875rem;padding:.5rem .75rem;border-radius:4px;transition:color .2s,background-color .2s}.dl-page-header-tab.active,.dl-page-header-tab:hover{color:var(--color-text-primary);background-color:var(--color-bg-secondary)}.dl-page-header-tab.active{font-weight:500}.dl-page-header-right{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;flex:1 1}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.7);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--color-bg-secondary);border:1px solid #333;border-radius:8px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 25px rgba(0,0,0,.5);display:flex;flex-direction:column}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #333}.modal-header h2{margin:0}.modal-close{background:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;padding:.25rem;border-radius:4px;transition:color .2s,background-color .2s}.modal-close:hover{color:var(--color-text-primary);background-color:rgba(255,255,255,.1)}.modal-body{padding:1.5rem}.flyout-container{position:relative;display:inline-block}.flyout-trigger{background:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;padding:.5rem;border-radius:4px;transition:color .2s,background-color .2s}.flyout-trigger:hover{color:var(--color-text-primary);background-color:var(--color-bg-secondary)}.flyout-menu{position:absolute;top:100%;right:0;margin-top:.25rem;background:var(--color-bg-secondary);border:1px solid #333;border-radius:4px;min-width:180px;box-shadow:0 4px 12px rgba(0,0,0,.4);z-index:100;display:flex;flex-direction:column;padding:.25rem 0}.flyout-item{background:transparent;border:none;color:var(--color-text-primary);text-align:left;padding:.75rem 1rem;cursor:pointer;font-size:.875rem;transition:background-color .2s}.flyout-item:hover:not(:disabled){background:rgba(255,255,255,.05)}.flyout-item:disabled{color:var(--color-text-secondary);cursor:not-allowed}.event-badge{display:flex;justify-content:space-between;align-items:stretch;background:linear-gradient(90deg,#161a1d,#1a2227);border:1px solid #333;border-radius:8px;overflow:hidden;margin-bottom:2rem;min-height:120px}.event-badge-left{display:flex;align-items:center;padding:2rem;gap:1.5rem;flex:1 1;position:relative;z-index:2}.event-badge-icon{width:64px;height:64px;border-radius:50%;border:2px solid;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.2);flex-shrink:0}.event-badge-details{display:flex;flex-direction:column;gap:.25rem}.event-badge-name{font-weight:700;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.event-badge-dates{font-size:2rem;font-weight:700;color:var(--color-text-primary);line-height:1.2}.event-badge-location{display:flex;align-items:center;color:var(--color-text-primary);font-size:.875rem;margin-top:.25rem}.event-badge-illustration{width:40%;position:relative;overflow:hidden;display:flex;align-items:flex-end;justify-content:flex-end}.not-found-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:2rem;background-color:var(--color-bg-primary);text-align:center}@media (max-width:600px){.event-badge{flex-direction:column;min-height:auto}.event-badge-illustration{width:100%!important;height:80px}.event-badge-left{padding:1.5rem!important}.content-area{padding:1rem!important}.dl-page-header{flex-wrap:wrap;gap:.75rem;min-height:auto;padding-bottom:.75rem}.dl-page-header-left{flex:1 1 100%;justify-content:flex-start}.dl-page-header-right{flex:1 1 100%;justify-content:stretch}.dl-page-header-right>*{width:100%}.dl-page-header-right .btn-primary,.dl-page-header-right .btn-secondary{flex:1 1;justify-content:center}.modal-content{max-width:calc(100vw - 1.5rem)!important;margin:.75rem}.scan-item-card,.scan-list-selection-buttons{flex-direction:column!important}.scan-item-card{align-items:flex-start!important;gap:.5rem!important}.scan-item-meta{text-align:left!important;display:flex;justify-content:space-between;width:100%}}.print-only{display:none!important}@media print{body>*{display:none!important}#global-print-mount{display:block!important;position:static;margin:0;padding:0;overflow:visible}body,html{background:white!important;color:black!important;margin:0!important;padding:0!important;width:auto!important;height:auto!important;overflow:visible!important}@page{margin:0}}.high-five-hand{transform-origin:bottom center;transition:transform .1s ease}.high-five-hand.animating{animation:slap .2s ease-out}@keyframes slap{0%{transform:scale(1) rotate(0deg)}30%{transform:scale(1.3) rotate(-15deg)}60%{transform:scale(.9) rotate(5deg)}to{transform:scale(1) rotate(0deg)}}.cookie-rain-container{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:9998;overflow:hidden}.cookie-rain-item{position:absolute;cursor:pointer;pointer-events:auto;-webkit-user-select:none;user-select:none;border-radius:50%;box-shadow:0 4px 8px rgba(0,0,0,.3);transition:transform .1s ease,opacity .15s ease}.cookie-rain-item:hover{transform:scale(1.1)}.cookie-rain-item.golden{filter:hue-rotate(45deg) brightness(1.5) drop-shadow(0 0 15px gold)!important;border:2px solid gold}.easteregg-score-display{position:fixed;top:1.5rem;right:1.5rem;background:rgba(0,0,0,.85);border:2px solid var(--color-accent-primary);border-radius:12px;padding:1rem 1.5rem;color:white;z-index:10000;font-family:monospace;box-shadow:0 0 20px rgba(0,242,254,.4);pointer-events:none;animation:pulse-score 2s infinite alternate}@keyframes pulse-score{0%{transform:scale(1);box-shadow:0 0 15px rgba(0,242,254,.3)}to{transform:scale(1.05);box-shadow:0 0 25px rgba(0,242,254,.6)}}