:root{color-scheme:only light;--bg: #f2f2f7;--surface: #ffffff;--surface-raised: #ffffff;--surface-soft: #f2f2f7;--ink: #1c1c1e;--muted: #636366;--line: #e5e5ea;--line-strong: #c7c7cc;--accent: #007aff;--accent-strong: #0066d6;--accent-soft: #e8f2ff;--cyan: #32ade6;--success: #248a3d;--success-soft: #e9f6ec;--working: #875c00;--working-soft: #fff5d6;--danger: #c9342b;--danger-soft: #fff0ee;--shadow: 0 12px 36px #0000000d;--shadow-soft: 0 2px 12px #00000006;--radius: 20px;--safe-bottom: env(safe-area-inset-bottom, 0px);--nav-bottom-gap: calc(12px + var(--safe-bottom));font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,system-ui,sans-serif}:root[data-theme=dark]{color-scheme:dark;--bg: #000000;--surface: #1c1c1e;--surface-raised: #2c2c2e;--surface-soft: #2c2c2e;--ink: #f5f5f7;--muted: #aeaeb2;--line: #38383a;--line-strong: #545458;--accent: #0a84ff;--accent-strong: #409cff;--accent-soft: #102a45;--cyan: #64d2ff;--success: #30d158;--success-soft: #12341b;--working: #ffd60a;--working-soft: #392f10;--danger: #ff6961;--danger-soft: #3a1715;--shadow: 0 12px 36px #0005;--shadow-soft: 0 2px 12px #0002}*{box-sizing:border-box}html{min-height:100%;background:var(--bg);touch-action:pan-x pan-y}body{min-height:100%;margin:0;color:var(--ink);background:var(--bg);touch-action:pan-x pan-y;transition:color .18s ease,background-color .18s ease}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 38%,transparent);outline-offset:2px}.icon-sprite{display:none}.app-shell{width:min(100%,1180px);min-height:100vh;margin:0 auto;padding:14px 18px calc(98px + var(--safe-bottom))}.topbar{position:sticky;top:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px;padding:calc(8px + env(safe-area-inset-top,0px)) 4px 10px;background:linear-gradient(180deg,color-mix(in srgb,var(--bg) 96%,transparent) 78%,transparent);backdrop-filter:blur(14px)}.brand-title,.topbar-actions{display:flex;align-items:center}.brand-title{gap:11px;min-width:0}.topbar-actions{gap:8px}.brand-mark{position:relative;display:grid;width:43px;height:43px;flex:0 0 auto;place-items:center;overflow:hidden;border:1px solid var(--line);border-radius:12px;color:#fff;background:linear-gradient(145deg,#1c3471,#5476f2);box-shadow:var(--shadow-soft)}.brand-mark-fallback{font-size:.67rem;font-weight:900;letter-spacing:-.04em}.brand-mark img{position:absolute;inset:0;width:43px;height:43px;object-fit:cover}.eyebrow{margin:0 0 2px;color:var(--accent);font-size:.68rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{margin-bottom:0;color:var(--ink);font-size:clamp(1.45rem,1.25rem + .8vw,2rem);line-height:1.05;letter-spacing:-.035em}h2{margin-bottom:12px;color:var(--ink);font-size:clamp(1.55rem,1.3rem + 1vw,2.25rem);line-height:1.08;letter-spacing:-.035em}h3{margin-bottom:6px;color:var(--ink);font-size:1rem;line-height:1.2}p{color:var(--muted);line-height:1.5}.profile-chip,.theme-toggle,.icon-button{display:grid;place-items:center;width:42px;height:42px;flex:0 0 auto;border:1px solid var(--line);border-radius:50%;color:var(--ink);background:var(--surface-raised);box-shadow:var(--shadow-soft)}.profile-chip{color:#fff;border-color:transparent;background:linear-gradient(145deg,var(--accent),#7b89ff)}.profile-chip span{font-weight:900}.theme-toggle svg,.profile-chip svg,.icon-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.settings-toggle svg{width:21px;height:21px;stroke-width:1.8}.theme-toggle .moon-icon,:root[data-theme=dark] .theme-toggle .sun-icon{display:none}:root[data-theme=dark] .theme-toggle .moon-icon{display:block}#app{outline:none}.view{display:grid;gap:16px;animation:fade-in .18s ease-out}@keyframes fade-in{0%{opacity:0;transform:translateY(4px)}}.events-home{display:block;animation:none}.event-explorer{display:grid;grid-template-columns:minmax(330px,40%) 1fr;height:clamp(440px,calc(100dvh - 104px),720px);min-height:0;overflow:hidden;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow)}.event-planner{position:relative;z-index:3;min-width:0;min-height:0;overflow-y:auto;padding:24px 20px 96px;border-right:1px solid var(--line);background:var(--surface);overscroll-behavior:contain}.event-sheet-handle{display:none}#event-planner-content{min-width:0}.event-intro .section-kicker{margin-bottom:5px}.event-intro h2{margin-bottom:8px}.event-intro-summary{margin-bottom:10px;font-size:.82rem}.event-intro-location{display:flex;align-items:center;gap:7px;margin-bottom:9px;color:var(--muted);font-size:.76rem;font-weight:750}.event-intro-location svg{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:2.1}.event-data-status{display:inline-flex;align-items:center;gap:7px;margin-bottom:18px;color:var(--muted);font-size:.69rem}.event-data-status span{width:7px;height:7px;flex:none;border-radius:50%;background:var(--success);box-shadow:0 0 0 4px color-mix(in srgb,var(--success) 13%,transparent)}.event-data-status strong{color:var(--ink);font-weight:800}.section-kicker{margin:0 0 6px;color:var(--accent);font-size:.72rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.event-tabs-sticky{position:sticky;z-index:5;top:0;margin:0 -4px;padding:6px 4px;background:var(--surface)}.event-tabs{display:grid;grid-template-columns:1fr 1fr .8fr;gap:4px;padding:4px;border:1px solid var(--line);border-radius:13px;background:var(--surface-soft)}.event-tab-count{display:inline-grid;min-width:20px;height:20px;padding:0 5px;place-items:center;border-radius:999px;background:var(--surface-soft);font-size:.65rem}.event-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:43px;border:0;border-radius:9px;color:var(--muted);background:transparent;font-weight:850}.event-tabs button[aria-selected=true]{color:var(--ink);background:var(--surface-raised);box-shadow:var(--shadow-soft)}.event-tabs svg,.event-chevron,.calendar-heading svg,.event-detail-location svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}.event-mode-panel{margin-top:14px}.event-mode-panel[hidden]{display:none}.event-list{display:grid;gap:9px}.event-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:13px;background:var(--surface-raised);transition:transform .16s ease,border-color .16s ease,background .16s ease}.event-card:hover{transform:translateY(-1px)}.event-card.selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 10px 26px color-mix(in srgb,var(--accent) 14%,transparent)}.past-event-card{opacity:.88}.event-past-label{position:absolute;top:50%;right:12px;padding:6px 9px;border-radius:999px;color:var(--muted);background:var(--surface-soft);font-size:.63rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase;transform:translateY(-50%)}.event-card-select{width:100%;display:grid;grid-template-columns:52px minmax(0,1fr) 18px;gap:11px;align-items:center;min-height:78px;padding:10px 58px 10px 10px;border:0;color:inherit;background:transparent;text-align:left}.date-block{width:52px;min-height:56px;display:grid;align-content:center;justify-items:center;border-radius:10px;color:var(--accent);background:color-mix(in srgb,var(--accent-soft) 84%,var(--surface))}.date-block span{font-size:.64rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.date-block strong{font-size:1.4rem;line-height:1}.event-card-copy{min-width:0}.event-card-copy>strong{display:block;overflow:hidden;margin-bottom:7px;color:var(--ink);font-size:.89rem;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.event-card-copy>span{display:flex;align-items:center;gap:6px;overflow:hidden;color:var(--muted);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.event-card-copy i{width:3px;height:3px;flex:none;border-radius:50%;background:currentColor}.event-chevron{color:var(--muted)}.event-rsvp-mini{position:absolute;top:50%;right:8px;min-width:45px;min-height:34px;padding:0 7px;border:1px solid var(--line-strong);border-radius:8px;color:var(--accent);background:var(--surface-raised);font-size:.66rem;font-weight:900;transform:translateY(-50%)}.event-rsvp-mini.going{color:var(--success);border-color:color-mix(in srgb,var(--success) 32%,var(--line));background:var(--success-soft)}.calendar-heading{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;gap:8px;margin-bottom:12px}.calendar-heading>div{text-align:center}.calendar-heading strong{display:block;font-size:.92rem}.calendar-heading span{display:block;margin-top:3px;color:var(--muted);font-size:.72rem}.calendar-heading button{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:var(--surface-raised)}.calendar-heading button:disabled{opacity:.35;cursor:default}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar-weekdays{margin-bottom:5px}.calendar-weekdays span{color:var(--muted);font-size:.62rem;font-weight:850;text-align:center;text-transform:uppercase}.calendar-day{position:relative;min-height:64px;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:7px;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:var(--surface-raised);font-size:.74rem;text-align:left}button.calendar-day{color:var(--ink);font-weight:850}.calendar-day.outside{opacity:.42;background:var(--surface-soft)}.calendar-day-number{font-weight:850}.calendar-day-label{display:-webkit-box;overflow:hidden;color:var(--accent);font-size:.59rem;font-weight:800;line-height:1.16;-webkit-box-orient:vertical;-webkit-line-clamp:2}:root[data-theme=light] .calendar-day.has-event:not(.selected){background:#eaf3ff;border-color:#c5defb}.calendar-day.has-event i{position:absolute;right:7px;top:9px;width:5px;height:5px;border-radius:50%;background:var(--accent)}.calendar-day.has-event.selected{color:#fff;border-color:var(--accent);background:var(--accent)}.calendar-day.has-event.selected .calendar-day-label{color:#fff}.calendar-day.has-event.selected i{background:#c9f8ff}.calendar-agenda-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:18px}.calendar-agenda-heading strong{font-size:.82rem}.calendar-agenda-heading span{color:var(--muted);font-size:.68rem}.calendar-agenda{display:grid;gap:7px;margin-top:12px}.calendar-agenda-event{display:grid;grid-template-columns:42px minmax(0,1fr) 18px;align-items:center;gap:10px;width:100%;padding:9px;border:1px solid var(--line);border-radius:11px;color:var(--ink);background:var(--surface-raised);text-align:left}.calendar-agenda-event.selected{border-color:var(--accent);background:var(--accent-soft)}.calendar-agenda-date{min-height:44px;display:grid;place-content:center;place-items:center;border-radius:8px;color:var(--accent);background:var(--accent-soft)}.calendar-agenda-date small{font-size:.54rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.calendar-agenda-date strong{font-size:1.08rem;line-height:1}.calendar-agenda-copy{min-width:0}.calendar-agenda-copy>strong{display:block;margin-bottom:4px;font-size:.75rem}.calendar-agenda-copy>span{display:block;overflow:hidden;color:var(--muted);font-size:.63rem;text-overflow:ellipsis;white-space:nowrap}.calendar-empty{margin:12px 0 0;padding:16px;border:1px dashed var(--line-strong);border-radius:10px;text-align:center;font-size:.82rem}.event-map-shell{position:relative;min-width:0;min-height:0;overflow:hidden;background:#dfe8e5}#event-map{position:absolute;inset:0;z-index:1}.map-status{position:absolute;z-index:500;pointer-events:none;top:16px;left:16px;display:flex;align-items:center;gap:8px;min-height:38px;padding:0 12px;border:1px solid var(--line);border-radius:11px;color:var(--ink);background:color-mix(in srgb,var(--surface-raised) 94%,transparent);box-shadow:var(--shadow-soft);font-size:.72rem;font-weight:850;backdrop-filter:blur(12px)}.map-status>span{width:8px;height:8px;border-radius:50%;background:var(--success);box-shadow:0 0 0 4px color-mix(in srgb,var(--success) 15%,transparent)}.event-map-message{position:absolute;z-index:510;top:66px;left:16px;right:16px;padding:10px;border-radius:10px;color:var(--ink);background:var(--surface-raised);font-size:.75rem}.event-details{position:absolute;z-index:500;left:16px;right:16px;bottom:16px}.event-detail-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:end;padding:17px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--surface-raised) 96%,transparent);box-shadow:var(--shadow);backdrop-filter:blur(16px)}.event-detail-copy>p:first-child{margin:0 0 5px;color:var(--accent);font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.event-detail-copy h3{margin:0;font-size:clamp(1.15rem,1rem + .7vw,1.55rem);letter-spacing:-.025em}.event-detail-location{display:flex;align-items:center;gap:6px;margin-top:7px;color:var(--muted);font-size:.76rem}.event-detail-location svg{width:15px;height:15px;flex:none}.event-detail-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.event-detail-meta span{padding:5px 8px;border-radius:999px;color:var(--muted);background:var(--surface-soft);font-size:.66rem;font-weight:750}.event-detail-focus{margin:9px 0 0;font-size:.78rem}.event-detail-actions{display:flex;gap:8px}.event-detail-past-label{min-height:43px;display:inline-grid;padding:0 14px;place-items:center;border-radius:10px;color:var(--muted);background:var(--surface-soft);font-size:.72rem;font-weight:900;text-transform:uppercase}.primary-button,.secondary-button,.chip-button,.danger-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;gap:8px;border-radius:10px;border:1px solid transparent;padding:0 14px;font-weight:850;text-decoration:none}.primary-button{color:#fff;background:var(--accent);box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 25%,transparent)}.primary-button.going{color:var(--success);border-color:color-mix(in srgb,var(--success) 30%,var(--line));background:var(--success-soft);box-shadow:none}.primary-button.is-working,.secondary-button.is-working{color:var(--working);border-color:color-mix(in srgb,var(--working) 45%,var(--line));background:var(--working-soft);box-shadow:0 8px 24px color-mix(in srgb,var(--working) 18%,transparent);opacity:1;cursor:wait}.primary-button.is-confirmed,.secondary-button.is-confirmed{color:var(--success);border-color:color-mix(in srgb,var(--success) 40%,var(--line));background:var(--success-soft);box-shadow:0 8px 24px color-mix(in srgb,var(--success) 18%,transparent)}.secondary-button,.chip-button{color:var(--ink);border-color:var(--line);background:var(--surface-raised)}.danger-button{color:#fff;background:var(--danger)}.primary-button svg,.secondary-button svg,.chip-button svg,.danger-button svg,.nav-item svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.event-marker-shell{background:transparent;border:0}.event-map-pin{width:38px;height:38px;display:grid;place-items:center;border:3px solid #ffffff;border-radius:50% 50% 50% 8px;color:#fff;background:#344f9f;box-shadow:0 8px 20px #0b1c4052;transform:rotate(-45deg);transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.event-map-pin>span{transform:rotate(45deg);font-size:.7rem;font-weight:900}.event-map-pin.active{background:var(--accent);box-shadow:0 8px 20px #0b1c4052;transform:rotate(-45deg)}.leaflet-control-zoom a{color:var(--ink)!important;border-color:var(--line)!important;background:var(--surface-raised)!important}.leaflet-control-attribution{color:var(--muted)!important;background:color-mix(in srgb,var(--surface-raised) 85%,transparent)!important}:root[data-theme=dark] .leaflet-tile-pane{filter:brightness(.64) saturate(.72) contrast(1.12)}.section,.metric-card,.officer-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-soft)}.section{padding:20px}.section-header{display:flex;align-items:start;justify-content:space-between;gap:14px;margin-bottom:14px}.section-header p{margin-bottom:0}.metric-grid,.portal-grid,.task-list{display:grid;gap:12px}.leaderboard{display:grid;margin:0;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);list-style:none}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.metric-card{min-height:92px;padding:15px}.metric-card strong{display:block;color:var(--accent);font-size:clamp(1.4rem,1rem + 2vw,2rem);line-height:1}.metric-card span{display:block;margin-top:8px;color:var(--muted);font-size:.86rem}.officer-gate{max-width:620px;margin:60px auto 0;gap:14px}.profile-login,.checkin-gate,.checkin-hero{width:min(100%,680px);margin:28px auto 0}.profile-login{display:grid;gap:4px}.auth-mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;margin-bottom:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft)}.auth-mode-tabs button{min-height:44px;border:0;border-radius:10px;color:var(--muted);background:transparent;font-weight:900}.auth-mode-tabs button[aria-selected=true]{color:var(--ink);background:var(--surface-raised);box-shadow:var(--shadow-soft)}.email-auth-form{display:grid;gap:12px}.email-auth-form .form-row{margin:0}.email-auth-submit{width:100%;margin-top:2px}body.signup-modal-open{overflow:hidden}.signup-modal-backdrop{position:fixed;inset:0;z-index:3000;display:grid;place-items:center;padding:max(14px,env(safe-area-inset-top)) 14px max(14px,env(safe-area-inset-bottom));background:#070c1994;backdrop-filter:blur(7px);animation:signup-backdrop-in .18s ease both}.signup-modal{position:relative;width:min(100%,620px);max-height:min(860px,calc(100dvh - 28px - env(safe-area-inset-top) - env(safe-area-inset-bottom)));overflow-y:auto;overscroll-behavior:contain;padding:22px;border:1px solid var(--line);border-radius:24px;color:var(--ink);background:var(--surface-raised);box-shadow:0 28px 90px #070c195c;animation:signup-modal-in .24s cubic-bezier(.2,.9,.25,1) both}.signup-modal-close{position:sticky;top:0;z-index:2;display:grid;width:42px;height:42px;margin:0 0 -42px auto;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--ink);background:var(--surface-raised);box-shadow:var(--shadow-soft);font-size:1.75rem;line-height:1}.signup-modal-close:disabled{opacity:.45;cursor:wait}.signup-modal-heading{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:14px;padding-right:48px;margin-bottom:22px}.signup-modal-heading h2{margin:2px 0 5px;font-size:clamp(1.55rem,5vw,2rem)}.signup-modal-heading p:last-child{margin:0;color:var(--muted)}.auth-prompt-modal{width:min(100%,510px);overflow:hidden}.auth-prompt-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.auth-prompt-actions .primary-button,.auth-prompt-actions .secondary-button{min-height:50px}@keyframes signup-backdrop-in{0%{opacity:0}}@keyframes signup-modal-in{0%{opacity:0;transform:translateY(18px) scale(.985)}}.signup-progress{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:2px 0 20px}.signup-progress-step{display:grid;justify-items:center;gap:7px;color:var(--muted);font-size:.72rem;text-align:center}.signup-progress-step:before{content:"";width:100%;height:4px;border-radius:99px;background:var(--line)}.signup-progress-step span{display:grid;width:28px;height:28px;margin-top:-1px;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--surface-soft);font-weight:900}.signup-progress-step.active,.signup-progress-step.complete{color:var(--accent)}.signup-progress-step.active:before,.signup-progress-step.complete:before{background:var(--accent)}.signup-progress-step.active span,.signup-progress-step.complete span{border-color:var(--accent);background:var(--accent-soft)}.signup-step{animation:auth-step-in .22s ease both}@keyframes auth-step-in{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.signup-step-copy{margin-bottom:4px}.signup-step-copy h3{margin:2px 0 5px;font-size:clamp(1.35rem,4vw,1.75rem)}.signup-step-copy p:last-child{margin:0;color:var(--muted)}.signup-actions{display:grid;grid-template-columns:minmax(96px,.36fr) 1fr;gap:10px;margin-top:4px}.signup-summary{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft);color:var(--muted);font-size:.82rem}.signup-summary strong{color:var(--accent)}.signup-passkey-addon{display:grid;grid-template-columns:auto 28px 1fr;align-items:center;gap:11px;min-height:68px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft);cursor:pointer}.signup-passkey-addon.selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 14%,transparent)}.signup-passkey-addon.unavailable{opacity:.48;cursor:not-allowed}.signup-passkey-addon input{width:18px;min-height:18px;height:18px;padding:0;accent-color:var(--accent)}.signup-passkey-addon svg{width:25px;height:25px;color:var(--accent)}.signup-passkey-addon span{display:grid;gap:3px}.signup-passkey-addon small{color:var(--muted);font-size:.72rem}.password-match-status{color:var(--muted);font-size:.74rem;font-weight:750}.password-match-status.matches{color:var(--success)}.text-button{justify-self:center;border:0;color:var(--accent);background:transparent;font-weight:850}.text-button:hover{text-decoration:underline}.ufid-create-field small{color:var(--muted);font-size:.72rem;line-height:1.45}.auth-divider{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin:18px 0;color:var(--muted);font-size:.72rem;font-weight:850;text-transform:uppercase}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:var(--line)}@media(max-width:520px){.signup-modal-backdrop{place-items:end center;padding:8px 8px max(8px,env(safe-area-inset-bottom))}.signup-modal{width:100%;max-height:calc(100dvh - max(16px,env(safe-area-inset-top)));padding:18px;border-radius:24px 24px 18px 18px}.signup-modal-heading{grid-template-columns:1fr;gap:8px;padding-right:48px}.signup-modal-heading .checkin-icon{width:48px;height:48px}}.settings-view{width:min(100%,760px);margin-inline:auto;padding-bottom:104px}.settings-hero{display:flex;align-items:center;justify-content:space-between;gap:16px}.settings-hero p:last-child{margin-bottom:0}.version-history{display:grid;gap:10px}.version-row{display:grid;grid-template-columns:minmax(104px,auto) 1fr;gap:14px;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft)}.version-number{color:var(--accent);font-weight:900}.version-row p{margin:0}.advanced-settings{padding:0;overflow:hidden}.advanced-settings summary{padding:18px;cursor:pointer;color:var(--muted);font-weight:900}.advanced-settings[open] summary{border-bottom:1px solid var(--line)}.advanced-settings-content{padding:18px}.advanced-settings-content p{max-width:620px}.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}.auth-brand{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:16px;margin-bottom:18px}.auth-brand .checkin-icon{margin-bottom:0}.auth-brand p:last-child{margin-bottom:0}.auth-provider-list{display:grid;gap:10px}.auth-provider-button{width:100%;min-height:52px;display:grid;grid-template-columns:28px 1fr 28px;align-items:center;padding:0 16px;border:1px solid var(--line-strong);border-radius:12px;color:var(--ink);background:var(--surface-raised);font-weight:850;box-shadow:var(--shadow-soft)}.auth-provider-button span:nth-child(2){grid-column:2}.auth-provider-button:hover:not(:disabled){border-color:var(--accent);transform:translateY(-1px)}.auth-provider-button:disabled,.primary-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.55}.provider-mark{grid-column:1;display:grid;place-items:center;width:27px;height:27px;border-radius:50%;color:#fff;background:conic-gradient(from -40deg,#4285f4,#34a853,#fbbc05,#ea4335,#4285f4);font-size:.88rem;font-weight:950}.apple-mark{color:#fff;background:#111;font-family:-apple-system,BlinkMacSystemFont,sans-serif;font-size:1.15rem}.auth-provider-button.passkey svg{grid-column:1;width:24px;height:24px;fill:none;stroke:var(--accent);stroke-width:2.2}.auth-working,.auth-loading{display:grid;justify-items:center;text-align:center}.auth-working{grid-template-columns:auto auto;justify-content:center;align-items:center;gap:9px;margin:15px 0 0;color:var(--muted);font-size:.78rem;font-weight:800}.auth-loading{width:min(100%,620px);margin:40px auto 0;padding-block:46px}.auth-loading h2{margin:14px 0 7px}.auth-loading p{margin-bottom:0}.auth-spinner{width:20px;height:20px;border:3px solid var(--line-strong);border-top-color:var(--accent);border-radius:50%;animation:auth-spin .7s linear infinite}@keyframes auth-spin{to{transform:rotate(360deg)}}.auth-feedback:empty{display:none}.auth-feedback p{margin:12px 0 0}.form-success{color:var(--success);font-size:.78rem;font-weight:800}.auth-privacy{margin:16px 0 0;color:var(--muted);font-size:.72rem;line-height:1.5;text-align:center}.auth-recovery-hint{margin:10px 0 0;color:var(--muted);font-size:.74rem;line-height:1.5;text-align:center}.auth-recovery-hint strong{color:var(--text)}.action-feedback{position:fixed;left:50%;bottom:calc(90px + var(--safe-bottom));z-index:5000;display:flex;align-items:center;gap:10px;width:max-content;max-width:min(calc(100vw - 28px),520px);min-height:48px;padding:10px 16px;border:1px solid transparent;border-radius:999px;box-shadow:0 16px 42px #070c193d;font-size:.82rem;font-weight:850;opacity:0;pointer-events:none;transform:translate(-50%,14px);transition:opacity .18s ease,transform .22s cubic-bezier(.2,.9,.25,1),background-color .18s ease}.action-feedback.visible{opacity:1;transform:translate(-50%)}.action-feedback.working{color:var(--working);border-color:color-mix(in srgb,var(--working) 35%,var(--line));background:var(--working-soft)}.action-feedback.success{color:var(--success);border-color:color-mix(in srgb,var(--success) 35%,var(--line));background:var(--success-soft)}.action-feedback.error{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 35%,var(--line));background:var(--danger-soft)}.action-feedback.working .auth-spinner{width:18px;height:18px;border-color:color-mix(in srgb,var(--working) 28%,transparent);border-top-color:var(--working)}.action-feedback-icon{display:grid;width:21px;height:21px;flex:0 0 auto;place-items:center;border:2px solid currentColor;border-radius:50%;font-size:.72rem}.passkey-card .section-header{align-items:center}.passkey-count{flex:0 0 auto;padding:7px 10px;border-radius:999px;color:var(--accent);background:var(--accent-soft);font-size:.7rem;font-weight:900}.member-roster{display:grid;gap:10px}.member-role-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,180px) auto;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--surface-soft)}.member-identity{min-width:0;display:grid;gap:3px}.member-identity strong,.member-identity span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-identity span{color:var(--muted);font-size:.72rem}.member-role-row select{min-height:42px}.checkin-gate{display:grid;justify-items:center;padding-block:44px;text-align:center}.checkin-gate p{max-width:480px}.checkin-icon{width:66px;height:66px;display:grid;place-items:center;margin-bottom:18px;border-radius:20px;color:var(--accent);background:var(--accent-soft)}.checkin-icon svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:2.2}.checkin-status{width:fit-content;display:inline-flex;align-items:center;gap:8px;margin-bottom:22px;padding:8px 11px;border-radius:999px;color:var(--muted);background:var(--surface-soft);font-size:.72rem;font-weight:900;text-transform:uppercase}.checkin-status span{width:8px;height:8px;border-radius:50%;background:currentColor}.checkin-status.live{color:var(--success);background:var(--success-soft)}.checkin-meta{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:14px}.checkin-meta span{padding:7px 9px;border-radius:8px;color:var(--ink);background:var(--surface-soft);font-size:.74rem;font-weight:800}.checkin-button{min-width:190px;margin-top:8px}.checkin-button:disabled{cursor:default;opacity:1}.checkin-confirmation{margin:12px 0 0;color:var(--success);font-size:.78rem;font-weight:800}.checkin-location-note{display:flex;align-items:flex-start;gap:8px;padding:11px 12px;border:1px solid var(--line);border-radius:12px;color:var(--muted);background:var(--surface-soft);font-size:.76rem}.checkin-location-note svg{width:17px;height:17px;flex:0 0 auto;fill:none;stroke:var(--accent);stroke-width:2}.identity-card{width:min(100%,680px);margin:0 auto;display:flex;align-items:center;gap:12px}.identity-card p{margin:3px 0 0;font-size:.78rem}.role-badge{width:fit-content;display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;color:var(--accent);background:var(--accent-soft);font-size:.65rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.role-badge.officer{color:#8a4b00;background:#fff0d5}:root[data-theme=dark] .role-badge.officer{color:#ffc978;background:#402b10}.profile-role-line{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.profile-role-line h2{margin-bottom:0}.checkin-admin-grid{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;align-items:end;gap:10px}.checkin-admin-grid .form-row{margin-bottom:0}.form-error{margin:-4px 0 12px;color:var(--danger);font-size:.78rem;font-weight:800}.form-row{display:grid;gap:8px;margin-bottom:14px}label{color:var(--ink);font-size:.86rem;font-weight:850}input,select,textarea{width:100%;min-height:46px;border:1px solid var(--line);border-radius:10px;padding:10px 12px;color:var(--ink);background:var(--surface-raised)}textarea{min-height:96px;resize:vertical}@media(hover:none)and (pointer:coarse){input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{font-size:max(16px,1em)}}.portal-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.officer-card{min-height:112px;padding:14px}.officer-card strong{display:block;color:var(--accent);font-size:1.6rem}.officer-card p{margin:7px 0 0}.budget-section-header{align-items:center}.budget-sheet-link{flex:0 0 auto;text-decoration:none}.officer-resources{overflow:hidden}.officer-resource-header{align-items:start}.officer-resource-header .role-badge{flex:0 0 auto}.officer-resource-featured{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}.officer-resource-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;min-width:0;padding:13px;border:1px solid var(--line);border-radius:12px;color:inherit;background:var(--surface-raised);text-decoration:none;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.officer-resource-card:hover,.officer-resource-card:focus-visible{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));box-shadow:0 8px 22px color-mix(in srgb,var(--accent) 12%,transparent);transform:translateY(-1px)}.officer-resource-card.featured{background:color-mix(in srgb,var(--accent) 6%,var(--surface-raised))}.officer-resource-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;color:var(--accent);background:var(--accent-soft)}.officer-resource-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8}.officer-resource-copy{min-width:0;display:grid;gap:2px}.officer-resource-copy strong{overflow:hidden;color:var(--ink);text-overflow:ellipsis;white-space:nowrap}.officer-resource-copy small{color:var(--accent);font-size:.68rem;font-weight:850}.officer-resource-copy p{margin:3px 0 0;font-size:.74rem;line-height:1.35}.officer-resource-open{color:var(--muted);font-size:1rem;font-weight:900}.officer-resource-browser{margin-top:14px;border:1px solid var(--line);border-radius:13px;background:var(--surface-soft)}.officer-resource-browser>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;color:var(--ink);cursor:pointer;font-weight:900;list-style:none}.officer-resource-browser>summary::-webkit-details-marker{display:none}.officer-resource-browser>summary:after{content:"+";color:var(--accent);font-size:1.2rem}.officer-resource-browser[open]>summary:after{content:"−"}.officer-resource-browser>summary small{margin-left:auto;color:var(--muted);font-size:.72rem;font-weight:750}.officer-resource-groups{display:grid;gap:18px;padding:0 14px 14px}.officer-resource-group h3{margin:0 0 8px;color:var(--muted);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.officer-resource-group>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.budget-list-title{margin:0 0 10px}.budget-event-list{display:grid;gap:10px}.budget-event-card{overflow:hidden;border:1px solid var(--line);border-radius:13px;background:var(--surface-raised)}.budget-event-card summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;cursor:pointer;list-style:none}.budget-event-card summary::-webkit-details-marker{display:none}.budget-event-card summary>span:first-child{display:grid;gap:3px;min-width:0}.budget-event-card summary strong{color:var(--ink)}.budget-event-card summary small{color:var(--muted);font-weight:750}.budget-event-total{color:var(--accent);font-weight:900;white-space:nowrap}.budget-event-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 14px 12px}.budget-event-breakdown>span{display:grid;gap:3px;padding:10px;border-radius:10px;background:var(--surface-soft)}.budget-event-breakdown small{color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.budget-event-breakdown strong{color:var(--ink)}.budget-event-breakdown .over-budget{color:var(--danger)}.budget-funding-source{margin:-2px 14px 12px;color:var(--accent);font-size:.76rem;font-weight:850}.budget-purchase-list{display:grid;border-top:1px solid var(--line)}.budget-purchase-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px}.budget-purchase-list article+article{border-top:1px solid var(--line)}.budget-purchase-list p{margin:3px 0 0;font-size:.76rem}.budget-purchase-cost{display:grid;justify-items:end;gap:3px}.budget-purchase-cost span{color:var(--muted);font-size:.72rem;font-weight:800}.budget-empty{margin:0;padding:0 14px 14px}.task-item{display:flex;align-items:start;justify-content:space-between;gap:12px;padding:13px;border-radius:11px;background:var(--surface-soft)}.task-item p{margin-bottom:0}.task-status{flex:0 0 auto;color:var(--success);font-weight:900}.leader-row{border-bottom:1px solid var(--line);background:transparent}.leader-row:last-child{border-bottom:0}.leader-open{display:grid;width:100%;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;border:0;border-radius:12px;color:inherit;background:transparent;font:inherit;text-align:left;cursor:pointer;transition:background .16s ease}.leader-open.is-static{cursor:default}button.leader-open:hover,button.leader-open:focus-visible{background:var(--surface-soft)}.leader-row.current-user .leader-open{background:color-mix(in srgb,var(--accent) 8%,transparent);box-shadow:inset 3px 0 0 var(--accent)}.leader-identity{display:grid;gap:2px;min-width:0}.leader-identity strong{overflow:hidden;color:var(--ink);text-overflow:ellipsis;white-space:nowrap}.leader-meta{color:var(--muted);font-size:.76rem}.leader-identity small{color:var(--accent);font-size:.7rem;font-weight:850}.leader-points{display:inline-flex;align-items:baseline;gap:3px;padding:6px 10px;border-radius:999px;color:var(--success);background:color-mix(in srgb,var(--success) 12%,var(--surface));white-space:nowrap}.leader-points span{font-size:.7rem;letter-spacing:.06em}.leaderboard-refresh{flex:0 0 auto}.leader-rank{justify-self:start;min-width:32px;color:var(--muted);font-size:1rem;font-weight:900;font-variant-numeric:tabular-nums;text-align:right}.leader-row.current-user .leader-rank{color:var(--accent)}.avatar{display:grid;place-items:center;border-radius:50%;font-weight:900}.avatar{width:56px;height:56px;color:#fff;background:linear-gradient(135deg,var(--accent),var(--cyan));font-size:1.35rem}.profile-summary{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center}.profile-overview{padding-block:18px}.settings-account-summary{display:grid;gap:14px}.account-username-editor{display:grid;gap:10px;padding-top:14px;border-top:1px solid var(--line)}.account-username-editor .form-row{margin:0}.account-username-editor .secondary-button{justify-self:start}.username-input{display:grid;grid-template-columns:auto 1fr;align-items:center;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--surface-raised)}.username-input>span{padding-left:12px;color:var(--muted);font-weight:900}.username-input input{min-width:0;border:0;background:transparent}.username-input:focus-within{outline:3px solid color-mix(in srgb,var(--accent) 38%,transparent);outline-offset:2px}.username-input input:focus-visible{outline:0}.settings-switch-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft);cursor:pointer}.settings-switch-row span{display:grid;gap:4px}.settings-switch-row strong{color:var(--ink);font-size:.88rem}.settings-switch-row small{color:var(--muted);line-height:1.45}.settings-switch-row input{width:46px;height:26px;flex:0 0 auto;accent-color:var(--accent);cursor:pointer}.settings-group{padding:0;overflow:hidden}.settings-group>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px;cursor:pointer;list-style:none}.settings-group>summary::-webkit-details-marker{display:none}.settings-group>summary:after{content:"+";color:var(--accent);font-size:1.35rem;font-weight:850}.settings-group[open]>summary:after{content:"−"}.settings-group>summary>span{min-width:0}.settings-group>summary .section-kicker{margin:0 0 3px}.settings-group>summary strong{color:var(--ink);font-size:1rem}.settings-group>summary h2{margin:0;font-size:1rem}.settings-group>summary small{margin-left:auto;color:var(--muted);font-weight:800}.settings-group-content{display:grid;gap:14px;padding:0 18px 18px;border-top:1px solid var(--line)}.settings-group-content>p{margin:14px 0 0}.officer-operations{display:grid;gap:16px}.officer-operations-header{align-items:start}.attendance-sync-pill{align-items:center;background:color-mix(in srgb,var(--success) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--success) 35%,var(--border));border-radius:999px;color:var(--success);display:inline-flex;font-size:.7rem;font-weight:800;line-height:1;padding:.5rem .65rem;white-space:nowrap}.attendance-sync-pill.state-retrying,.attendance-sync-pill.state-catching-up{background:color-mix(in srgb,#f2b84b 14%,var(--surface));border-color:color-mix(in srgb,#f2b84b 42%,var(--border));color:#a56b00}.officer-event-group{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--surface-soft)}.officer-event-group>summary{display:flex;align-items:center;justify-content:space-between;min-height:58px;padding:13px 16px;cursor:pointer;list-style:none}.officer-event-group>summary::-webkit-details-marker{display:none}.officer-event-group>summary:after{content:"+";margin-left:12px;color:var(--accent);font-size:1.25rem;font-weight:900}.officer-event-group[open]>summary:after{content:"−"}.officer-event-group>summary>span{display:flex;align-items:baseline;gap:9px;min-width:0}.officer-event-group>summary strong{color:var(--ink)}.officer-event-group>summary small{color:var(--muted);font-size:.7rem;font-weight:750}.officer-event-group[open]>summary{border-bottom:1px solid var(--line)}.officer-event-group-body{display:grid;gap:10px;padding:10px}.completed-events-group{background:color-mix(in srgb,var(--surface-soft) 70%,var(--surface-raised))}.officer-show-more{min-height:42px;border:0;border-radius:11px;color:var(--accent);background:var(--accent-soft);font-weight:900}.officer-event-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start}.officer-event-footer .officer-add-event{min-width:0}.officer-event-footer .budget-sheet-link{min-height:50px}.officer-budget-card{display:grid;gap:13px}.officer-budget-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.officer-budget-heading h2{margin:2px 0 0;font-size:1.05rem}.officer-budget-heading>span{padding:6px 9px;border-radius:999px;color:var(--success);background:var(--success-soft);font-size:.64rem;font-weight:900}.officer-budget-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.officer-budget-metrics article,.officer-budget-metrics button{display:grid;gap:3px;min-width:0;min-height:82px;padding:12px;border:1px solid var(--line);border-radius:13px;color:var(--ink);background:var(--surface-soft);text-align:left}.officer-budget-metrics strong{overflow:hidden;font-size:clamp(1rem,3vw,1.3rem);text-overflow:ellipsis;white-space:nowrap}.officer-budget-metrics span{align-self:end;color:var(--muted);font-size:.68rem;font-weight:800}.officer-budget-metrics button{border-color:color-mix(in srgb,var(--success) 28%,var(--line));background:color-mix(in srgb,var(--success-soft) 60%,var(--surface-raised));cursor:pointer}.officer-budget-metrics button:hover{border-color:var(--success)}.officer-budget-metrics button small{color:var(--success);font-size:.62rem;font-weight:850}.budget-breakdown-modal{width:min(100%,410px);overflow:hidden}.budget-breakdown-modal h2{margin:3px 52px 18px 0}.budget-breakdown-rows{display:grid;gap:8px}.budget-breakdown-rows>span{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px;border-radius:12px;background:var(--surface-soft)}.budget-breakdown-rows small{color:var(--muted);font-weight:750}.budget-breakdown-rows strong{color:var(--ink)}.budget-breakdown-total{border-top:1px solid var(--line)}.budget-breakdown-available{color:var(--success);background:var(--success-soft)!important}.budget-breakdown-available strong{color:var(--success)}.officer-add-event,.officer-event-card,.officer-event-subsection{overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--surface-raised)}.officer-add-event>summary,.officer-event-subsection>summary{display:flex;align-items:center;gap:10px;padding:14px;color:var(--ink);cursor:pointer;list-style:none;font-weight:850}.officer-add-event>summary::-webkit-details-marker,.officer-event-card>summary::-webkit-details-marker,.officer-event-subsection>summary::-webkit-details-marker{display:none}.officer-add-event>summary>span{display:inline-flex;align-items:center;gap:8px}.officer-add-event>summary svg{width:18px;height:18px}.officer-add-event>summary small,.officer-event-subsection>summary small{margin-left:auto;color:var(--muted);font-size:.74rem}.officer-add-event[open]>summary,.officer-event-subsection[open]>summary{border-bottom:1px solid var(--line)}.officer-add-event .officer-event-form{padding:14px}.officer-event-list{display:grid;gap:10px}.officer-event-card>summary{display:grid;grid-template-columns:54px minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:76px;padding:10px 14px;cursor:pointer;list-style:none}.officer-event-card[open]>summary{border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--accent) 5%,var(--surface-raised))}.officer-event-date{display:grid;justify-items:center;padding:7px;border-radius:12px;background:var(--surface-soft);color:var(--accent)}.officer-event-date small{font-size:.64rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.officer-event-date strong{font-size:1.25rem;line-height:1}.officer-event-summary{display:grid;gap:4px;min-width:0}.officer-event-summary strong{overflow:hidden;color:var(--ink);text-overflow:ellipsis;white-space:nowrap}.officer-event-summary small{overflow:hidden;color:var(--muted);font-size:.74rem;text-overflow:ellipsis;white-space:nowrap}.officer-event-money{display:grid;justify-items:end;gap:2px;color:var(--accent);font-weight:900;white-space:nowrap}.officer-event-money small{color:var(--muted);font-size:.62rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.officer-event-money strong{color:var(--accent);font-size:.95rem}.event-status-pill{padding:6px 9px;border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:.68rem;font-weight:900;white-space:nowrap}.event-status-pill.status-confirmed,.event-status-pill.status-completed{background:color-mix(in srgb,var(--success) 15%,var(--surface-raised));color:var(--success)}.event-status-pill.status-room-pending,.event-status-pill.status-planning{background:color-mix(in srgb,var(--warning) 15%,var(--surface-raised));color:#8a5700}.event-status-pill.status-cancelled{background:color-mix(in srgb,var(--danger) 12%,var(--surface-raised));color:var(--danger)}.officer-event-body{display:grid;gap:12px;padding:14px}.officer-event-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.officer-event-stats>span{display:grid;gap:3px;padding:10px;border-radius:12px;background:var(--surface-soft)}.officer-event-stats small{color:var(--muted);font-size:.65rem;font-weight:850;text-transform:uppercase}.officer-event-stats strong{color:var(--ink)}.officer-event-quick-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.officer-event-quick-facts span{color:var(--muted);font-size:.76rem}.officer-event-quick-facts strong{margin-right:6px;color:var(--ink)}.officer-event-actions{display:flex;gap:8px}.officer-event-actions>*{flex:1}.budget-item-actions{display:flex;flex-wrap:wrap;gap:8px}.budget-item-actions>*{flex:1 1 auto}.budget-item-remove{flex:0 1 auto}.budget-add-line{overflow:hidden;border:1px dashed var(--line);border-radius:14px;background:var(--surface)}.budget-add-line>summary{display:flex;align-items:center;gap:8px;padding:12px 14px;color:var(--accent);font-weight:850;cursor:pointer;list-style:none}.budget-add-line>summary::-webkit-details-marker{display:none}.budget-add-line>summary>span{display:inline-flex;align-items:center;gap:8px}.budget-add-line>summary svg{width:17px;height:17px}.budget-add-line[open]>summary{border-bottom:1px dashed var(--line)}.budget-add-line .event-budget-item-form{padding:14px}.leaderboard-show-more{width:100%;margin-top:10px}.leaderboard-modal{display:grid;grid-template-rows:auto auto auto minmax(0,1fr);gap:8px;width:min(560px,100%);max-height:min(76dvh,720px);padding:24px;text-align:left}.leaderboard-modal h2{margin:0}.leaderboard-modal-meta{margin:0 0 6px;color:var(--muted);font-size:.8rem}.leaderboard-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.leaderboard-scroll .leaderboard{border-radius:14px}.member-profile-modal{display:grid;gap:14px;max-width:520px;padding:24px;text-align:left}.member-profile-modal h2{margin:0}.member-profile-modal h3{margin:0 0 8px;font-size:.82rem;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.member-profile-role{margin:0;color:var(--muted)}.member-profile-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.member-profile-metrics article{display:grid;gap:3px;padding:12px;border-radius:14px;background:var(--surface-soft);text-align:center}.member-profile-metrics strong{font-size:1.35rem;color:var(--ink)}.member-profile-metrics span{color:var(--muted);font-size:.7rem;font-weight:850;text-transform:uppercase}.member-profile-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.member-profile-lists ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}.member-profile-lists li{display:grid;gap:2px;padding:9px 11px;border-radius:12px;background:var(--surface-soft)}.member-profile-lists li strong{font-size:.84rem;color:var(--ink)}.member-profile-lists li small{color:var(--muted);font-size:.7rem}.member-profile-lists .empty-state{margin:0;font-size:.8rem}.member-profile-manage{display:grid;gap:10px;padding-top:14px;border-top:1px solid var(--line)}.member-profile-role-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.member-profile-role-row span{color:var(--ink);font-weight:800}.member-profile-role-row select{flex:0 1 190px}.member-profile-actions{display:flex;flex-wrap:wrap;gap:9px}.member-profile-actions>button{flex:1 1 auto}.member-profile-note{margin:0;color:var(--muted);font-size:.76rem}.field-hint{display:block;margin-top:5px;color:var(--muted);font-size:.74rem}.settings-account-summary .section-header{margin-bottom:12px}.leadership-seat.is-pending{border-left:3px solid var(--warning, #d98324)}.leadership-seat-status{padding:5px 10px;border-radius:999px;font-size:.7rem;font-weight:900;text-transform:uppercase;white-space:nowrap}.leadership-seat-status.active{color:var(--success);background:color-mix(in srgb,var(--success) 14%,var(--surface))}.leadership-seat-status.pending{color:#8a5700;background:color-mix(in srgb,var(--warning, #d98324) 18%,var(--surface))}.install-card .install-steps{display:grid;gap:8px;margin:0;padding-left:20px;color:var(--muted)}.install-card .install-steps strong{color:var(--ink)}.install-card.is-installed .section-header{margin-bottom:0}.confirm-modal{display:grid;gap:12px;max-width:420px;padding:22px;text-align:left}.confirm-modal h2{margin:0}.confirm-modal p{margin:0;color:var(--muted)}.confirm-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:6px}.confirm-actions>button{flex:0 1 auto}.officer-event-form{display:grid;gap:14px}.officer-event-subsection .officer-event-form,.event-budget-editor,.event-rsvp-roster{padding:14px}.officer-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.officer-form-wide{grid-column:1 / -1}.officer-event-form .form-row,.event-budget-item-form .form-row{margin:0}.event-rsvp-roster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.event-rsvp-roster>span{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px;border-radius:10px;background:var(--surface-soft)}.event-rsvp-roster strong{color:var(--ink);font-size:.78rem}.event-rsvp-roster small{color:var(--muted);font-size:.68rem;font-weight:800}.event-budget-editor{display:grid;gap:10px}.event-budget-item-form{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft)}.budget-item-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.budget-item-heading strong{color:var(--ink)}.budget-item-heading span{color:var(--accent);font-size:.75rem;font-weight:850}.budget-edit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.budget-item-name{grid-column:span 2}.budget-item-notes{grid-column:span 3}.event-budget-item-form textarea{min-height:68px}.progress{overflow:hidden;height:11px;border-radius:999px;background:var(--surface-soft)}.progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--cyan))}.empty-state{padding:18px;border:1px dashed var(--line-strong);border-radius:10px;text-align:center}.bottom-nav{position:fixed;left:50%;bottom:18px;z-index:1100;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:min(calc(100% - 24px),440px);padding:7px;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--surface-raised) 94%,transparent);box-shadow:var(--shadow);transform:translate(-50%);backdrop-filter:blur(18px)}.nav-item{display:grid;place-items:center;min-width:0;min-height:56px;border:0;border-radius:12px;color:var(--muted);background:transparent;font-size:.72rem;font-weight:850}.nav-item svg{width:24px;height:24px;margin-bottom:2px}.nav-item.active{color:var(--accent);background:var(--accent-soft)}@media(max-width:820px){.event-explorer{grid-template-columns:minmax(300px,44%) 1fr}.event-detail-card{grid-template-columns:1fr;gap:12px}.event-detail-actions{display:grid;grid-template-columns:1fr 1fr}.event-detail-meta span:nth-child(2),.event-detail-focus{display:none}.metric-grid,.portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px),(max-height:500px)and (pointer:coarse){html.events-screen-active,body.events-screen-active{overscroll-behavior:none}.app-shell{padding:8px 10px calc(90px + var(--safe-bottom))}.app-shell:has(.events-home){display:flex;flex-direction:column;height:100dvh;min-height:0;padding-bottom:0;overflow:hidden}.app-shell:has(.events-home)>.topbar{flex-shrink:0}.app-shell:has(.events-home)>#app{display:flex;flex:1;min-height:0}.events-home{display:flex;flex:1;min-width:0;min-height:0}.topbar{min-height:62px;padding-inline:2px}.brand-mark,.brand-mark img{width:39px;height:39px}.eyebrow{font-size:.58rem}h1{font-size:1.3rem}.theme-toggle,.profile-chip{width:39px;height:39px}.topbar-actions{gap:5px}.version-row{grid-template-columns:1fr;gap:5px}.profile-login,.checkin-gate,.checkin-hero{margin-top:10px}.settings-group>summary{padding:15px}.settings-group-content{padding:0 15px 15px}.officer-operations{gap:12px}.officer-event-card>summary{grid-template-columns:48px minmax(0,1fr) auto;grid-template-rows:auto auto;gap:5px 9px;padding:9px 10px}.officer-event-card>summary .officer-event-date{grid-column:1;grid-row:1 / span 2}.officer-event-card>summary .officer-event-summary{grid-column:2;grid-row:1 / span 2}.officer-event-card>summary .officer-event-money{display:flex;grid-column:3;grid-row:2;align-items:baseline;justify-content:flex-end;gap:5px}.event-status-pill{grid-column:3;grid-row:1;max-width:92px;overflow:hidden;text-overflow:ellipsis}.officer-event-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.officer-event-quick-facts{grid-template-columns:1fr}.officer-event-actions{display:grid}.officer-form-grid,.event-rsvp-roster{grid-template-columns:1fr}.budget-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-item-name,.budget-item-notes{grid-column:1 / -1}.officer-add-event>summary small,.officer-event-subsection>summary small{max-width:48%;text-align:right}.checkin-gate{padding-block:34px}.checkin-admin-grid{grid-template-columns:1fr}.auth-brand{grid-template-columns:1fr;justify-items:center;text-align:center}.member-role-row{grid-template-columns:1fr}.member-role-row .secondary-button{width:100%}.budget-section-header{align-items:stretch}.budget-sheet-link{width:100%}.officer-resource-header{align-items:stretch}.officer-resource-featured,.officer-resource-group>div{grid-template-columns:1fr}.officer-resource-card{min-height:76px}.officer-resource-browser>summary{align-items:flex-start}.officer-resource-browser>summary small{display:none}.budget-event-breakdown{grid-template-columns:1fr}.events-home>.event-explorer{position:relative;display:block;flex:1;height:100%;min-height:0;overflow:hidden;border-radius:16px 16px 0 0;border-bottom:0}.event-map-shell{position:absolute;inset:0;min-height:0;border-radius:16px 16px 0 0}.event-map-shell .leaflet-bottom{bottom:0}.event-explorer>.event-map-credit{position:absolute;z-index:500;right:2px;bottom:0;margin:0;padding:0 3px;font:10px/12px -apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;white-space:nowrap;border-radius:3px 0 0;pointer-events:auto}.event-map-credit a{color:var(--accent-strong)}.event-planner{position:absolute;z-index:600;right:0;bottom:0;left:0;height:53%;overflow:hidden;max-height:calc(100% - 8px);padding:0 14px calc(24px + var(--safe-bottom));border:1px solid var(--line);border-radius:22px 22px 0 0;border-bottom:0;scroll-padding-block:104px 24px;box-shadow:0 -14px 36px #07102438;overscroll-behavior:contain;will-change:height;transition:height var(--event-snap-duration, .32s) cubic-bezier(.2,.9,.25,1),border-color .18s ease,box-shadow .24s ease}.event-explorer:after{content:"";position:absolute;z-index:605;inset:auto 0 0;height:calc(var(--event-dock-clearance, calc(96px + var(--safe-bottom))) + 48px);background:linear-gradient(to bottom,transparent,color-mix(in srgb,var(--bg) 86%,transparent) 48%,var(--bg) 78%);pointer-events:none;opacity:var(--event-preview-fade, 1);transition:opacity .2s ease}.event-explorer[data-sheet-mode=closed]:after,.event-explorer[data-sheet-mode=high]:after{opacity:var(--event-preview-fade, 0)}.event-explorer:has(.event-sheet-dragging):after{transition:none}.event-planner.event-sheet-dragging,.event-planner.event-sheet-held{transition:none}body:has(.events-home) .bottom-nav{transform:translate(-50%);opacity:1;visibility:visible;transition:transform .38s cubic-bezier(.22,.8,.25,1),opacity .26s ease,visibility 0s}body:has(.events-home .event-explorer[data-dock-hidden=true]) .bottom-nav{transform:translate(-50%,calc(100% + var(--nav-bottom-gap) + 18px));opacity:0;visibility:hidden;pointer-events:none;transition:transform .38s cubic-bezier(.4,0,.65,1),opacity .26s ease,visibility 0s .38s}.event-planner[data-sheet-mode=low],.event-planner[data-sheet-mode=medium]{touch-action:none}.event-planner[data-sheet-mode=high]{overflow-y:auto;overscroll-behavior-y:contain;touch-action:none}.event-planner[data-sheet-mode=closed]{overflow:hidden;padding-bottom:0;border-width:0;border-color:transparent;box-shadow:none;pointer-events:none}#event-planner-content{transition:opacity .15s ease}.event-planner[data-sheet-mode=closed] #event-planner-content,.event-planner[data-sheet-mode=closed] .event-sheet-handle{opacity:0}.event-sheet-handle{position:sticky;top:0;z-index:4;width:calc(100% + 28px);height:34px;margin:0 -14px;padding:5px 0 2px;display:grid;place-items:center;gap:2px;border:0;color:var(--muted);background:var(--surface);cursor:grab;touch-action:none}.event-sheet-handle:active{cursor:grabbing}.event-sheet-dragging .event-sheet-handle small{transition:none}.event-sheet-handle>span{width:64px;height:5px;border-radius:999px;background:var(--line-strong)}.event-sheet-handle small{opacity:var(--event-hint-opacity, 1);transition:opacity .18s ease;font-size:.53rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.event-intro{padding-top:8px;touch-action:none}.event-intro .section-kicker{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-intro h2{display:-webkit-box;overflow:hidden;margin-bottom:7px;font-size:clamp(1.35rem,6vw,1.75rem);-webkit-box-orient:vertical;-webkit-line-clamp:2}.event-intro-summary{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.event-planner[data-sheet-mode=low] .event-intro-summary,.event-planner[data-sheet-mode=low] .event-data-status{display:none}.event-planner[data-sheet-mode=low]{--event-tabs-progress: 0}.event-planner[data-sheet-mode=low] .event-tabs-sticky{visibility:hidden;pointer-events:none}.event-tabs-sticky{top:34px;margin:0 -14px;padding:calc(6px * var(--event-tabs-progress, 1)) 14px;max-height:calc(84px * var(--event-tabs-progress, 1));overflow:hidden;opacity:var(--event-tabs-progress, 1);visibility:visible;transition:max-height .3s ease,padding .3s ease,opacity .24s ease,visibility .24s}.event-planner.event-sheet-dragging .event-tabs-sticky{visibility:visible;pointer-events:none;transition:none}.event-planner[data-sheet-mode=low] .event-intro h2{display:block;text-overflow:ellipsis;white-space:nowrap}.event-planner[data-sheet-mode=medium] .event-intro-summary{display:none}.event-planner[data-sheet-mode=medium] .event-data-status{margin-bottom:10px}.event-planner[data-sheet-mode=high] #event-planner-content{padding-bottom:20px}.calendar-grid{gap:4px}.calendar-day{min-height:44px;justify-content:flex-start;align-items:center;padding:6px 2px}.calendar-day-label{display:none}.calendar-day.has-event i{top:auto;right:50%;bottom:5px;transform:translate(50%)}.calendar-agenda{padding-bottom:16px}.event-details{display:none}.event-detail-card{padding:14px;border-radius:14px}.event-detail-meta,.event-detail-focus{display:none}.event-explorer :is(.map-status,.leaflet-control-zoom){opacity:var(--event-map-controls-opacity, 1);visibility:visible;transition:opacity .18s ease,visibility 0s .18s}.event-explorer[data-map-controls-hidden=true] :is(.map-status,.leaflet-control-zoom){visibility:hidden;pointer-events:none}.event-explorer:has(.event-sheet-dragging) :is(.map-status,.leaflet-control-zoom){transition:none}.map-status{top:10px;left:10px}.leaflet-control-zoom{margin-top:10px!important;margin-right:10px!important}.section-header{display:grid}.officer-gate{margin-top:20px}.bottom-nav{bottom:0;width:100%;padding-bottom:calc(7px + var(--safe-bottom));border-right:0;border-bottom:0;border-left:0;border-radius:18px 18px 0 0}}@media(min-width:681px){.app-shell{padding-bottom:18px}.view[data-screen=profile]{padding-bottom:calc(80px + var(--safe-bottom))}.topbar{position:relative}.bottom-nav{left:max(18px,calc(50% - 572px));width:min(calc(40vw - 32px),420px);transform:none}}@media(min-width:681px)and (max-width:820px){.bottom-nav{width:calc(44vw - 32px)}}@media(max-width:430px){.officer-event-footer{grid-template-columns:1fr}.officer-event-footer .budget-sheet-link{width:100%}.officer-budget-metrics article,.officer-budget-metrics button{min-height:76px;padding:10px 8px}.officer-budget-metrics strong{font-size:.96rem}.officer-budget-metrics span{font-size:.61rem}.event-card-select{padding-right:53px}.event-card-copy>strong{font-size:.82rem}.event-card-copy>span{font-size:.66rem}.calendar-weekdays span{font-size:.55rem}.calendar-grid{gap:4px}.metric-grid,.portal-grid{grid-template-columns:1fr}.event-detail-copy h3{font-size:1.15rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.bottom-nav{--nav-index: 1;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;left:50vw;bottom:var(--nav-bottom-gap);width:min(calc(100vw - 32px),400px);padding:6px 6px 16px;gap:0;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #ffffffa3;border-radius:999px;transform:translate(-50%);isolation:isolate;background:#f9f9f9b8;box-shadow:0 8px 28px #0002,inset 0 1px 1px #ffffffe6,inset 0 -1px 1px #ffffff70;backdrop-filter:blur(28px) saturate(150%);-webkit-backdrop-filter:blur(28px) saturate(150%)}.nav-item{position:relative;z-index:1;min-height:52px;padding:5px 2px;border:0;border-radius:999px;font-size:11px;font-weight:600;gap:2px;color:#545458;touch-action:none;user-select:none;-webkit-user-select:none;background:transparent}.nav-item.active{color:var(--accent-strong);background:transparent}.nav-item svg{width:23px;height:23px;stroke-width:2}.nav-item:active{transform:scale(.94)}.nav-glass-lens{position:absolute;pointer-events:none;z-index:0;left:6px;top:6px;width:calc((100% - 12px)/4);height:52px;border-radius:999px;transform:translate(calc(var(--nav-index) * 100%));background:linear-gradient(160deg,#e9e9ed,#dcdce2);border:1px solid #c8c8d0;box-shadow:inset 0 1px 2px #ffffffb3,0 1px 4px #0000000a;transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .18s}.bottom-nav.is-dragging .nav-glass-lens{transition:none}.bottom-nav[data-settings=true] .nav-glass-lens{opacity:0}.nav-slider{position:absolute;left:32%;bottom:2px;width:36%;height:14px;min-height:0;border:0;box-shadow:none;margin:0;padding:0;cursor:ew-resize;appearance:none;-webkit-appearance:none;background:transparent;touch-action:none}.nav-slider::-webkit-slider-runnable-track{height:3px;border-radius:999px;background:#3c3c431a}.nav-slider::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:28px;height:4px;border-radius:999px;background:#63636680;margin-top:-.5px}.nav-slider::-moz-range-track{height:3px;border-radius:999px;background:#3c3c431a}.nav-slider::-moz-range-thumb{width:28px;height:4px;border:0;border-radius:999px;background:#63636680}:root[data-theme=dark] .bottom-nav{background:#242426c7;border-color:#ffffff36;box-shadow:0 8px 28px #0006,inset 0 1px 1px #ffffff4d}:root[data-theme=dark] .nav-item{color:#c7c7cc}:root[data-theme=dark] .nav-item.active{color:#64b4ff}:root[data-theme=dark] .nav-glass-lens{background:linear-gradient(155deg,#505055,#424247);border-color:#ffffff30;box-shadow:inset 0 1px 1px #ffffff26,0 2px 8px #0002}:root[data-theme=dark] .nav-slider::-webkit-slider-runnable-track{background:#ffffff1a}:root[data-theme=dark] .nav-slider::-webkit-slider-thumb{background:#aeaeb280}.app-shell:has(.hackathon-landing){width:min(100%,1440px)}.hackathon-landing{--hack-purple: #a9d5ff;--hack-orange: #a9d5ff;padding-bottom:110px}.hackathon-landing h2,.hackathon-landing h3,.hackathon-landing p{margin:0}.hackathon-landing h2,.hack-footer>p{font-family:Georgia,Times New Roman,serif;font-weight:400;letter-spacing:-.055em}.hackathon-landing em{font-weight:400}.hack-hero{position:relative;overflow:hidden;color:#f5f5f7;border-radius:26px;padding:50px 6% 26px;background:radial-gradient(ellipse at 90% 110%,#234463 0,transparent 68%),#101318}.hack-eyebrow{display:flex;align-items:center;gap:10px;font-size:.76rem;letter-spacing:.055em;color:#c7c7cc}.hack-live-dot{width:7px;height:7px;border-radius:50%;background:var(--hack-orange);box-shadow:0 0 18px #ffb68c80}.hack-hero h2{color:#f5f5f7;margin:44px 0;font-size:clamp(3.3rem,7.7vw,7.8rem);line-height:.99;max-width:1040px}.hack-hero h2 em{color:var(--hack-purple)}.hack-period{color:var(--hack-orange)}.hack-hero-bottom{display:flex;align-items:end;justify-content:space-between;gap:24px}.hack-hero-bottom p{font-size:clamp(1.05rem,2.3vw,1.7rem);line-height:1.5;color:#d1d1d6;letter-spacing:-.025em}.hack-outline-link{flex-shrink:0;display:flex;align-items:center;gap:30px;text-decoration:none;color:#fff7ee;padding:16px 22px;border:1px solid #e7d7ff70;border-radius:40px;font-size:.85rem;background:#fff1}.hack-outline-link:hover{background:#fff2}.hack-hero-footnote{display:flex;justify-content:space-between;gap:12px;margin-top:52px;padding-top:18px;border-top:1px solid #fff3;color:#aeaeb2;font-size:.58rem;letter-spacing:.14em}.hack-intro{display:grid;grid-template-columns:1fr 1fr;gap:64px;padding:100px 6% 90px;scroll-margin-top:110px}.hack-kicker{font-size:.64rem;letter-spacing:.14em;font-weight:650;color:var(--muted)}.hack-intro h2,.hack-experience h2,.hack-faq h2{font-size:clamp(2.6rem,5vw,4.5rem);line-height:1.05;margin-top:23px}.hack-intro-copy{padding-top:26px}.hack-intro-copy>p:first-child{font-size:1.15rem;line-height:1.7;letter-spacing:-.025em}.hack-detail{margin-top:24px!important;color:var(--muted);font-size:.76rem}.hack-cta{display:inline-flex;justify-content:space-between;align-items:center;gap:32px;min-height:54px;padding:16px 24px;margin-top:24px;border-radius:40px;border:1px solid transparent;background:var(--ink);color:var(--surface);font-size:.88rem;font-weight:600;transition:transform .18s,box-shadow .18s}.hack-cta:hover{transform:translateY(-2px);box-shadow:0 6px 20px #1112}.hack-cta:disabled{cursor:wait;opacity:.6;transform:none}.hack-cta span{font-size:1.15rem}.hack-small{font-size:.73rem;color:var(--muted);line-height:1.6;margin-top:16px!important;max-width:330px}.hack-word-strip{overflow:hidden;white-space:nowrap;padding:24px 0;text-align:center;color:var(--ink);font-size:clamp(.8rem,2.1vw,1.5rem);font-weight:450;letter-spacing:.08em;border-block:1px solid var(--line-strong)}.hack-word-strip span{padding:0 22px;color:var(--accent-strong)}.hack-experience{padding:90px 6%}.hack-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:50px}.hack-pillars article{border-top:1px solid var(--line-strong);padding-top:22px}.hack-pillars article>span{font-size:.65rem;color:var(--muted);letter-spacing:.1em}.hack-pillars h3{margin-top:32px;font-size:1.35rem;letter-spacing:-.04em}.hack-pillars p{margin-top:15px;font-size:.9rem;color:var(--muted);line-height:1.7}.hack-faq{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;padding:60px 6% 90px}.hack-questions details{padding:24px 0;border-bottom:1px solid var(--line-strong)}.hack-questions summary{cursor:pointer;font-size:.98rem;font-weight:550}.hack-questions details p{margin-top:18px;color:var(--muted);line-height:1.7;font-size:.88rem}.hack-footer{padding:64px 6% 28px;color:#152e46;background:#e8f2ff;border-radius:26px}.hack-footer>p{color:#152e46;font-size:clamp(3rem,6vw,5.8rem);line-height:1.05}.hack-footer .hack-cta{background:#152e46;color:#f5f5f7}.hack-footer>div{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:60px;padding-top:20px;border-top:1px solid #152e4640;font-size:.6rem;letter-spacing:.07em}.hack-interest-status{margin-top:15px!important;line-height:1.6;font-size:.85rem;color:var(--success)}.hack-interest-error{color:var(--danger)}.hack-cancel{display:block;border:0;border-bottom:1px solid currentColor;padding:4px 0;margin-top:10px;font-size:.75rem;color:var(--muted);background:none}@media(max-width:680px){.app-shell:has(.hackathon-landing){padding-inline:10px}.hack-hero{padding:32px 23px 22px;border-radius:22px}.hack-eyebrow{font-size:.65rem;line-height:1.5}.hack-hero h2{margin:46px 0 32px;font-size:clamp(3.1rem,11.8vw,5rem);line-height:1.06}.hack-hero-bottom{align-items:start;flex-direction:column;gap:24px}.hack-outline-link{padding:13px 19px;font-size:.76rem}.hack-hero-footnote{margin-top:34px;font-size:.49rem;letter-spacing:.08em}.hack-intro{grid-template-columns:1fr;gap:12px;padding:62px 22px}.hack-intro-copy>p:first-child{font-size:1.05rem}.hack-word-strip{font-size:.66rem;padding:20px 0;letter-spacing:.01em}.hack-word-strip span{padding:0 7px}.hack-experience{padding:60px 22px}.hack-pillars{grid-template-columns:1fr;gap:30px;margin-top:38px}.hack-pillars h3{margin-top:16px}.hack-faq{grid-template-columns:1fr;padding:20px 22px 65px;gap:25px}.hack-footer{padding:45px 24px 25px}.hackathon-landing{padding-bottom:100px}}@media(prefers-reduced-motion:reduce){.nav-glass-lens,.hack-cta{transition:none}}@media(prefers-reduced-transparency:reduce){.bottom-nav{background:var(--surface-raised);backdrop-filter:none;-webkit-backdrop-filter:none}}@media(min-width:681px){.event-explorer{height:min(720px,calc(100dvh - 190px - var(--safe-bottom)))}}.hack-hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center;margin-top:30px}.hack-hero h2{font-size:clamp(3rem,5.5vw,5.5rem);margin:0 0 24px;line-height:1.04}.hack-origin{color:#d1d1d6;max-width:350px;font-size:1rem;line-height:1.6}.hack-hero .hack-outline-link{display:inline-flex;margin-top:25px}.hack-hero-shot{margin:0;overflow:hidden;border-radius:22px;background:#ffffff0c}.hack-hero-shot img{display:block;width:100%;height:auto;aspect-ratio:1.05;object-fit:cover;object-position:52% 50%}.hack-hero-shot figcaption{color:#d1d1d6;font-size:.7rem;padding:15px 18px}.hack-hero-footnote{margin-top:30px}.hack-photo-story{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:34px 0 0}.hack-photo-story figure{margin:0;overflow:hidden;border-radius:22px;background:var(--surface-raised);border:1px solid var(--line)}.hack-photo-story img{display:block;width:100%;height:auto;object-fit:cover;aspect-ratio:4 / 3}.hack-photo-story figcaption{padding:25px 28px}.hack-photo-story figcaption span{display:block;font-size:.6rem;letter-spacing:.1em;color:var(--muted)}.hack-photo-main{background:#101318!important;color:#f5f5f7}.hack-photo-main img{aspect-ratio:1.75;object-position:center 36%}.hack-photo-main figcaption span{color:#aeaeb2}.hack-photo-main figcaption strong{display:block;margin-top:15px;font:400 clamp(2rem,3.4vw,3.3rem)/1.05 Georgia,serif;letter-spacing:-.045em}.hack-photo-card h3{font:400 clamp(1.6rem,2.5vw,2.4rem)/1.1 Georgia,serif;letter-spacing:-.04em;margin-top:14px}.hack-photo-card p{color:var(--muted);font-size:.85rem;line-height:1.55;margin-top:10px}.hack-circuit-note{display:flex;flex-direction:column;justify-content:center;padding:38px;border-radius:22px;background:#e8f2ff;color:#152e46}.hack-circuit-note .hack-kicker{color:#425c78}.hack-circuit-note h3{margin:24px 0;font:400 clamp(2rem,3.3vw,3.2rem)/1.12 Georgia,serif;letter-spacing:-.04em}.hack-circuit-equation{border-block:1px solid #152e462b;padding:20px 0;margin-bottom:22px;font:400 2rem Georgia,serif;color:#225b98}.hack-circuit-note>p:not(.hack-kicker){color:#304c67;font-size:.95rem;line-height:1.8}.hack-circuit-note small{color:#425c78;font-size:.65rem;line-height:1.5;margin-top:28px}.hack-intro{padding-block:75px;align-items:center}.hack-intro h2{font-size:clamp(2.5rem,4.8vw,4.2rem)}.hack-intro-copy{padding-top:0}.hack-faq{padding-top:15px;padding-bottom:65px}:root[data-theme=dark] .hack-circuit-note{background:#1b2b3d;color:#e3efff}:root[data-theme=dark] .hack-circuit-note .hack-kicker,:root[data-theme=dark] .hack-circuit-note>p:not(.hack-kicker),:root[data-theme=dark] .hack-circuit-note small{color:#bbcee4}:root[data-theme=dark] .hack-circuit-equation{color:#a9d5ff;border-color:#a9d5ff35}@media(max-width:680px){.hack-hero-grid{grid-template-columns:1fr;gap:28px;margin-top:28px}.hack-hero h2{font-size:clamp(2.7rem,11vw,4.5rem)}.hack-origin{font-size:.9rem}.hack-hero-shot img{aspect-ratio:1.35}.hack-hero-shot figcaption{font-size:.65rem;padding:12px 14px}.hack-photo-story{grid-template-columns:1fr;gap:14px;padding-top:20px}.hack-photo-story figcaption{padding:23px}.hack-circuit-note{padding:28px}.hack-circuit-note h3{font-size:2.3rem}.hack-intro{padding-block:55px;gap:28px}.hack-faq{padding-bottom:45px}.hack-footer>p{font-size:clamp(2.5rem,10vw,4rem)}}.header-settings{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex-shrink:0;min-height:44px;padding:10px 14px;border:0;border-radius:999px;color:var(--accent-strong);background:var(--surface);font-weight:600;font-size:.85rem}.header-settings[hidden]{display:none}.header-settings svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8}.eyebrow{color:var(--muted);font-weight:600;letter-spacing:.07em}.topbar{background:color-mix(in srgb,var(--bg) 93%,transparent)}.settings-hero{background:transparent;border:0;padding-inline:0;box-shadow:none}.settings-hero h2{font-size:1.4rem}.settings-view .section,.profile-login,.profile-overview,.leaderboard-section{box-shadow:none}.appearance-settings h2{font-size:1.1rem;letter-spacing:-.02em}.appearance-settings p{font-size:.85rem}.appearance-options{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;margin:18px 0 0;padding:4px;border:0;border-radius:14px;background:var(--surface-soft)}.appearance-options label{position:relative;cursor:pointer}.appearance-options input{position:absolute;opacity:0;width:100%;height:100%;min-height:0;margin:0;cursor:pointer}.appearance-options span{display:grid;place-items:center;min-height:44px;border-radius:11px;color:var(--muted);font-weight:600}.appearance-options input:checked+span{background:var(--surface);color:var(--ink);box-shadow:0 2px 5px #00000014}.appearance-options input:focus-visible+span{outline:3px solid var(--accent);outline-offset:1px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.primary-button,.secondary-button,.danger-button,.auth-provider-button,.hack-cta{min-height:48px;border-radius:999px;font-weight:600;box-shadow:none}.primary-button,.hack-cta,.hack-footer .hack-cta{background:#0071e3;border-color:transparent;color:#fff}.primary-button.going,.primary-button.is-confirmed{background:var(--success-soft);color:var(--success)}.secondary-button,.auth-provider-button{color:var(--accent-strong);border-color:transparent;background:var(--accent-soft)}.text-button{min-height:44px;font-weight:600}button:active,.hack-outline-link:active{filter:brightness(.9)}.hack-cta:disabled{cursor:default;opacity:1;background:var(--surface-soft);color:var(--muted)}.hack-footer .hack-cta:disabled{color:#545458;background:#ffffffb3}.hack-outline-link{background:#ffffff0d;border-color:#ffffff4d;color:#f5f5f7}.hack-cta:hover{transform:none;box-shadow:none;filter:brightness(.94)}.hack-footer,.hack-photo-note{background:var(--accent-soft);color:var(--ink)}.hack-footer>p,.hack-photo-note p{color:var(--ink)}.hack-footer>div{border-color:var(--line-strong)}.profile-login{width:min(100%,480px);margin-inline:auto;padding:28px}.profile-login .auth-brand{display:block;margin-bottom:14px}.profile-login .auth-brand .checkin-icon{display:none}.profile-login h2{font-size:1.75rem}.auth-mode-tabs{background:var(--surface-soft);border:0}.auth-mode-tabs button{min-height:44px;font-weight:600}.auth-mode-tabs button[aria-selected=true]{background:var(--surface);color:var(--ink);box-shadow:0 2px 6px #00000010}.auth-privacy{font-size:.75rem;line-height:1.5}.avatar{border-radius:50%;background:var(--accent-soft);color:var(--accent-strong)}.leaflet-container#event-map{touch-action:none}.leaflet-control-zoom a{width:44px;height:44px;line-height:44px}@media(max-width:380px){.header-settings{padding-inline:10px}.header-settings svg{display:none}.brand-title{gap:8px}.eyebrow{font-size:.55rem}.profile-login{padding:20px}}@media(prefers-contrast:more){:root{--muted: #3a3a3c;--line: #86868b;--accent-strong: #004fba}:root[data-theme=dark]{--muted: #e5e5ea;--line: #98989d;--accent-strong: #8ecaff}.bottom-nav{background:var(--surface);border-color:var(--ink);backdrop-filter:none}.nav-item{color:var(--ink)}.nav-glass-lens{border-color:var(--accent-strong)}}@media(prefers-reduced-transparency:reduce){.bottom-nav,:root[data-theme=dark] .bottom-nav{background:var(--surface);backdrop-filter:none;-webkit-backdrop-filter:none}}.settings-contact{display:flex;align-items:center;justify-content:space-between;gap:12px;text-decoration:none;font-size:.9rem;color:var(--ink)}.settings-contact span:last-child{color:var(--accent-strong);font-size:.8rem}.settings-group-content .install-card{border:0;padding:18px 0 0;margin:0;box-shadow:none;background:transparent}.settings-view .section-kicker{color:var(--muted);font-weight:600;letter-spacing:.06em}@media(max-height:500px)and (pointer:coarse){.event-sheet-handle{height:24px}.event-sheet-handle small{display:none}.event-tabs-sticky{position:static}.event-planner{scroll-padding-top:32px}}.auth-screen{padding-block:12px 24px;border-radius:40px;background:radial-gradient(ellipse at 50% 12%,var(--accent-soft),transparent 68%)}.auth-glass{--auth-fill: #ffffffb8;--auth-edge: #ffffffed;--auth-highlight: #ffffffd9;--auth-shadow: #17243b1a;--auth-field: #ffffffc7;--auth-control: #ffffff73;background:linear-gradient(145deg,#ffffff38,transparent 60%),var(--auth-fill);border:1px solid var(--auth-edge);border-radius:32px;box-shadow:inset 0 1px 0 var(--auth-highlight),inset 0 -1px #ffffff24,0 18px 48px var(--auth-shadow);backdrop-filter:blur(28px) saturate(150%);-webkit-backdrop-filter:blur(28px) saturate(150%)}:root[data-theme=dark] .auth-glass{--auth-fill: #24262bdc;--auth-edge: #ffffff29;--auth-highlight: #ffffff24;--auth-shadow: #00000059;--auth-field: #15171bbd;--auth-control: #ffffff0f;background:linear-gradient(145deg,#ffffff0d,transparent 60%),var(--auth-fill)}.profile-login.auth-glass{width:min(100%,440px);margin-inline:auto;padding:28px}.profile-login .auth-brand{margin-bottom:22px;text-align:left}.profile-login .auth-brand h2{font-size:28px;letter-spacing:-.7px}.auth-glass .email-auth-form{gap:17px}.auth-glass .form-row label{font-weight:600;font-size:.85rem}.auth-glass .form-row input{min-height:52px;padding:14px 16px;font-size:16px;border-radius:18px;color:var(--ink);background:var(--auth-field);border:1px solid color-mix(in srgb,var(--line-strong) 55%,transparent);box-shadow:inset 0 1px 2px #00000004}.auth-glass .form-row input:focus{border-color:var(--accent);outline:3px solid color-mix(in srgb,var(--accent) 18%,transparent);outline-offset:2px}.auth-glass .primary-button{min-height:52px;border-radius:999px;background:linear-gradient(180deg,#2581ed,#0064d2);border:1px solid #ffffff33;color:#fff;box-shadow:inset 0 1px #ffffff42,0 5px 14px #0064d221}.auth-glass .secondary-button,.auth-glass .auth-provider-button{min-height:50px;border-radius:999px;background:var(--auth-control);color:var(--accent-strong);border:1px solid color-mix(in srgb,var(--line-strong) 65%,transparent);box-shadow:inset 0 1px 0 var(--auth-highlight)}.auth-glass .auth-provider-button:hover:not(:disabled){transform:none}.auth-glass .signup-modal-close{width:44px;height:44px;margin-bottom:-44px;background:var(--auth-control);border-color:var(--auth-edge);box-shadow:inset 0 1px 0 var(--auth-highlight);font-weight:400}.auth-glass .auth-recovery-hint{margin:-5px 0 0;font-size:.75rem;line-height:1.5}.auth-glass .auth-divider{margin-block:18px}.auth-create-link{display:flex;align-items:center;justify-content:center;gap:5px;flex-wrap:wrap}.auth-privacy .text-button{display:inline;width:auto;min-height:44px;padding:8px 4px}#signup-modal-backdrop,#auth-prompt-backdrop{background:#10182847;backdrop-filter:blur(12px) saturate(90%);-webkit-backdrop-filter:blur(12px) saturate(90%)}#signup-modal-backdrop .signup-modal{width:min(440px,calc(100vw - 24px));padding:26px;border-radius:32px}#signup-modal-backdrop .signup-modal-heading .checkin-icon{display:none}#signup-modal-backdrop .signup-modal-heading{grid-template-columns:1fr;padding-right:40px}#signup-modal-backdrop .signup-modal-heading h2{font-size:25px;letter-spacing:-.6px}.signup-step{gap:17px}.signup-inline-error{color:var(--danger);font-size:14px;margin:0}.signup-inline-error:empty,.password-match-status:empty{display:none}@media(max-width:440px){.auth-screen{padding-block:0 16px}.profile-login.auth-glass,#signup-modal-backdrop .signup-modal{padding:23px 20px;border-radius:28px}}@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){.auth-glass,:root[data-theme=dark] .auth-glass{background:var(--surface);border-color:var(--line-strong);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;--auth-field: var(--surface-soft);--auth-control: var(--surface-soft)}.auth-screen{background:none}#signup-modal-backdrop,#auth-prompt-backdrop{backdrop-filter:none;-webkit-backdrop-filter:none;background:#0009}}@media(prefers-contrast:more){.auth-glass .primary-button{background:#005bbf;box-shadow:none}.auth-glass .form-row input,.auth-glass .secondary-button,.auth-glass .auth-provider-button{border-color:var(--ink)}}.event-map-shell,.event-map-shell *{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}#event-map img{-webkit-user-drag:none}#event-map .leaflet-tile-pane{pointer-events:none}.hack-hero-shot img{aspect-ratio:1.4}.hack-photo-main img{aspect-ratio:1.58;object-position:center}.hack-workshop-photo img{object-position:center 35%}.hack-hero-grid{position:relative;z-index:1}.hack-state-mark{position:absolute;right:-12px;top:-30px;color:#a9d5ff;opacity:.045;font:400 300px/1 Georgia,serif;pointer-events:none}.hack-hero h2{font-size:clamp(3.5rem,6.7vw,6.6rem)}.hack-photo-story{display:block;padding:0 4%}.hack-chapter{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:7%;padding-block:70px;position:relative}.hack-chapter:before{content:"";position:absolute;top:0;left:45%;height:32px;border-left:1px solid var(--line-strong)}.hack-chapter:after{content:"";position:absolute;top:31px;left:calc(45% - 3px);width:5px;height:5px;border:1px solid var(--accent-strong);border-radius:50%}.hack-chapter-copy h2,.hack-growth-photo h2{font-size:clamp(2.5rem,4.6vw,4.4rem);line-height:1.04;margin:18px 0 23px}.hack-chapter-copy>p:not(.hack-kicker){font-size:.94rem;line-height:1.7;color:var(--muted);max-width:370px}.hack-chapter-copy small{display:block;color:var(--muted);font-size:.65rem;line-height:1.6}.hack-photo-story .hack-chapter-photo{background:transparent;border:0;border-radius:0}.hack-chapter-photo img{aspect-ratio:1.12;border-radius:22px;object-position:center 34%}.hack-photo-story .hack-chapter-photo figcaption{padding:14px 2px 0;color:var(--muted);font-size:.65rem;letter-spacing:.03em}.hack-gate-study{margin:26px 0 16px;max-width:330px;color:var(--accent-strong)}.hack-gate-study>div{display:flex;align-items:center;gap:0;margin:14px 0;font:400 1.3rem Georgia,serif}.hack-gate-study span{min-width:46px}.hack-gate-study span:last-child{text-align:right}.hack-gate-study i{flex:1;border-top:1px solid currentColor;opacity:.45}.hack-gate-study b{display:grid;place-items:center;width:36px;height:36px;border:1px solid currentColor;border-radius:7px;font:400 1rem ui-monospace,monospace;background:var(--surface-raised)}.hack-sensing{grid-template-columns:1.1fr .9fr;border-top:1px solid var(--line)}.hack-sensing .hack-chapter-photo img{aspect-ratio:1.25;object-position:center}.hack-defect{display:flex;gap:12px;align-items:center;color:var(--accent-strong);margin:30px 0 18px}.hack-defect span{width:10px;height:10px;border-radius:50%;background:currentColor;opacity:.45}.hack-defect .hack-vacancy{background:transparent;border:1px dashed currentColor;opacity:1}.hack-defect b{font:400 .75rem ui-monospace,monospace;letter-spacing:.1em;margin-left:10px}.hack-photo-story .hack-growth-photo{border:0;background:#101318;color:#f5f5f7;margin-top:10px}.hack-growth-photo img{aspect-ratio:1.9;object-position:center 40%}.hack-photo-story .hack-growth-photo figcaption{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:30px;padding:34px 40px}.hack-growth-photo .hack-kicker{color:#a9d5ff}.hack-growth-photo h2{color:#f5f5f7;font-size:clamp(2.2rem,3.5vw,3.2rem);margin-bottom:0}.hack-growth-photo figcaption>p{color:#c7c7cc;font-size:.9rem;line-height:1.75}.hack-intro{padding-block:80px 50px;gap:7%}.hack-intro-copy .hack-detail{font-size:.84rem;line-height:1.8}.hack-molecule{width:190px;color:var(--accent-strong);margin-top:25px;opacity:.7}.hack-molecule svg{display:block;width:100%;height:auto}.hack-faq{padding-bottom:45px}.hack-faq h2{font-size:clamp(2rem,3.7vw,3.2rem)}.hack-story-footer{border-top:1px solid var(--line-strong);margin-inline:6%;padding:30px 0;display:flex;align-items:center;gap:22px}.hack-footer-logo{flex:0 0 104px;overflow:hidden;border-radius:10px;background:#000}.hack-footer-logo img{display:block;width:100%;height:auto}.hack-story-footer>p{font:400 1.8rem/1.1 Georgia,serif;letter-spacing:-.04em}.hack-story-footer small{margin-left:auto;color:var(--muted);font-size:.56rem;line-height:1.8;letter-spacing:.07em}@media(max-width:680px){.hack-hero h2{font-size:clamp(3.1rem,12vw,4.6rem)}.hack-photo-story{padding-inline:12px}.hack-chapter,.hack-sensing{grid-template-columns:1fr;gap:25px;padding-block:48px 34px}.hack-chapter:before{left:18px;height:23px}.hack-chapter:after{left:15px;top:22px}.hack-chapter-copy{padding-inline:10px}.hack-chapter-copy h2{font-size:2.8rem;margin-bottom:18px}.hack-chapter-copy>p:not(.hack-kicker){font-size:.88rem}.hack-chapter-photo img{aspect-ratio:1.22}.hack-sensing .hack-chapter-copy{grid-row:1}.hack-sensing .hack-chapter-photo{grid-row:2}.hack-sensing .hack-chapter-photo img{aspect-ratio:1.3}.hack-growth-photo img{aspect-ratio:1.4}.hack-photo-story .hack-growth-photo figcaption{grid-template-columns:1fr;gap:20px;padding:27px 24px}.hack-growth-photo h2{font-size:2.4rem}.hack-growth-photo figcaption>p{font-size:.85rem}.hack-intro{padding-block:52px 38px;gap:20px}.hack-intro h2{font-size:clamp(2.4rem,9.5vw,3.8rem)}.hack-molecule{width:145px;margin-top:18px}.hack-story-footer{gap:15px;flex-wrap:wrap;padding-bottom:25px}.hack-story-footer>p{font-size:1.65rem}.hack-story-footer small{width:100%;margin-left:0}}.workshop-story{padding-inline:4%}.workshop-opening{padding:45px 0 12px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.workshop-opening>p:last-child{font-size:.88rem;line-height:1.7;color:var(--muted)}.workshop-opening em{font-style:normal;color:var(--ink)}.workshop-chapter{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:start;padding-block:54px}.workshop-copy{min-width:0}.workshop-copy h2,.workshop-outlook h2{font-size:clamp(2.5rem,4.7vw,4.6rem);line-height:1.03;margin:19px 0 24px}.workshop-copy>p:not(.hack-kicker){font-size:.91rem;line-height:1.7;color:var(--muted);max-width:420px}.workshop-copy>.workshop-question{margin-top:16px;color:var(--ink);font-weight:550}.workshop-story .workshop-photo{background:transparent;border:0;border-radius:0}.workshop-story .workshop-photo img{border-radius:24px;aspect-ratio:.92;object-position:center}.workshop-story .workshop-photo figcaption{color:var(--muted);padding:13px 2px;font-size:.66rem;line-height:1.5}.resonance-note{max-width:330px;color:var(--accent-strong);margin:28px 0 20px}.resonance-note svg{display:block;width:100%;height:76px;overflow:visible}.resonance-note path{fill:none;stroke:currentColor;stroke-width:1.7}.resonance-note .resonance-axis{opacity:.25;stroke-width:1}.resonance-note circle{fill:currentColor}.resonance-note>div{display:flex;justify-content:space-between;gap:10px;font:.66rem/1.5 ui-monospace,monospace}.resonance-note strong{font-weight:500}.workshop-depth{border-top:1px solid var(--line-strong);margin-top:14px;color:var(--ink)}.workshop-depth summary{min-height:50px;display:flex;gap:20px;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;font-size:.77rem;line-height:1.45;font-weight:550;padding:10px 0}.workshop-depth summary::-webkit-details-marker{display:none}.workshop-depth summary>span{font:300 1.3rem/1 system-ui,sans-serif;color:var(--accent-strong);flex-shrink:0}.workshop-depth[open] summary>span{transform:rotate(45deg)}.workshop-depth summary:focus-visible,.workshop-action:focus-visible{outline:3px solid var(--accent-strong);outline-offset:4px;border-radius:8px}.workshop-detail-body{padding:2px 0 18px}.workshop-detail-body>p{font-size:.81rem;line-height:1.8;margin:0 0 15px;color:var(--muted)}.workshop-detail-body .workshop-challenge{padding-left:14px;border-left:2px solid var(--accent-strong)}.workshop-math{font-family:ui-monospace,monospace;font-size:.8em;overflow-wrap:anywhere}.workshop-detail-body>.workshop-math{color:var(--accent-strong);font-size:.81rem;padding:12px 0}.workshop-detail-body a{color:var(--accent-strong);font-size:.78rem;line-height:1.6;display:inline-block;padding-block:8px;text-underline-offset:4px}.workshop-detail-body small{display:block;font-size:.63rem;color:var(--muted);line-height:1.7;margin-top:14px}.workshop-phase{border-top:1px solid var(--line)}.phase-experiment{border:1px solid var(--line);background:var(--surface-raised);padding:clamp(22px,3vw,36px);border-radius:26px}.experiment-heading{display:flex;justify-content:space-between;gap:16px;color:var(--muted);font-size:.58rem;letter-spacing:.1em}.phase-experiment .phase-instruction{margin:24px 0 20px;font:400 1.3rem/1.25 Georgia,serif;letter-spacing:-.025em}.phase-track{display:flex;align-items:center;color:var(--accent-strong);font:400 1.55rem/1 Georgia,serif;gap:0}.phase-input,.phase-result{min-width:46px}.phase-result{text-align:right}.phase-wire{flex:1;border-top:1px solid currentColor;opacity:.4}.phase-gate{display:grid;place-items:center;border:1px solid currentColor;width:38px;height:38px;border-radius:8px;font:400 1rem ui-monospace,monospace}.phase-probabilities{margin:14px 0 28px}.phase-probabilities>div{display:flex;align-items:center;gap:10px;margin:6px 0;font:400 .64rem ui-monospace,monospace}.phase-probabilities i{display:block;height:5px;background:var(--line);border-radius:8px;overflow:hidden;flex:1}.phase-probabilities b{display:block;height:100%;border-radius:8px;background:var(--accent-strong);transition:width .35s ease}.phase-probabilities strong{width:35px;text-align:right;font-weight:400}.workshop-action{width:100%;min-height:46px;border-radius:999px;color:#fff;background:#0064d2;border:1px solid #ffffff30;font-size:.85rem;cursor:pointer}.phase-experiment .experiment-result{margin:18px 0 14px;min-height:43px;font-size:.8rem;line-height:1.55}.phase-experiment>small{color:var(--muted);font-size:.61rem;line-height:1.5;display:block}.workshop-search{border-radius:26px;overflow:hidden;background:#101318;color:#f5f5f7;--ink: #f5f5f7;--muted: #c7c7cc;--accent-strong: #a9d5ff;--line: #ffffff20;--line-strong: #ffffff30}.workshop-story .workshop-search-photo{border:0;border-radius:0;background:transparent;position:relative}.workshop-search-photo img{aspect-ratio:2.1;object-position:center 45%}.workshop-story .workshop-search-photo figcaption{position:absolute;bottom:0;left:0;right:0;padding:60px 32px 20px;background:linear-gradient(transparent,#0009);color:#fff;font-size:.7rem;letter-spacing:.06em}.workshop-search-body{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding:38px}.workshop-search-body .hack-kicker{color:#a9d5ff}.workshop-search-body h2{color:#f5f5f7;font-size:clamp(2.4rem,4.2vw,4rem)}.workshop-search-notes{min-width:0}.search-facts{margin:0 0 22px;display:flex;gap:20px;justify-content:space-between}.search-facts dt{font:400 clamp(1.6rem,3vw,2.5rem)/1.2 Georgia,serif;letter-spacing:-.04em}.search-facts dd{font-size:.59rem;color:#c7c7cc;margin:6px 0 0;line-height:1.6}.grover-experiment{padding:18px 0}.grover-experiment label{display:block;font-size:.76rem;margin-bottom:18px}.grover-readout{display:flex;flex-direction:column;gap:5px;margin-bottom:12px}.grover-readout output{font:400 2.3rem/1 Georgia,serif;color:#a9d5ff;font-variant-numeric:tabular-nums}.grover-readout span,.grover-scale{font-size:.64rem;color:#c7c7cc}#grover-rounds{width:100%;height:44px;margin:0;accent-color:#a9d5ff;cursor:ew-resize}.grover-scale{display:flex;justify-content:space-between;gap:10px}.grover-experiment #grover-explanation{font-size:.74rem;line-height:1.65;margin-top:14px;min-height:40px}.oracle-outcomes{display:flex;gap:25px;margin:18px 0}.oracle-outcomes>div{display:flex;flex-direction:column;gap:7px}.oracle-outcomes b{font:400 1.2rem ui-monospace,monospace;color:#a9d5ff}.oracle-outcomes span{font-size:.7rem}.workshop-outlook{margin-top:44px;display:grid;grid-template-columns:.85fr 1.15fr;gap:7%;align-items:center;padding-block:8px 0}.workshop-story .workshop-outlook figure{border:0;background:transparent;border-radius:0}.workshop-outlook img{border-radius:20px;aspect-ratio:1.25}.workshop-story .workshop-outlook figcaption{font-size:.63rem;padding:12px 2px;color:var(--muted)}.workshop-outlook h2{font-size:clamp(2.2rem,3.5vw,3.3rem);margin-block:15px 20px}.workshop-outlook p:not(.hack-kicker){font-size:.84rem;color:var(--muted);line-height:1.7}.workshop-outlook .workshop-outlook-link{color:var(--accent-strong);font-size:.69rem;margin-top:18px}@media(max-width:680px){.workshop-story{padding-inline:12px}.workshop-opening{display:block;padding:30px 10px 22px}.workshop-opening>p:last-child{margin-top:15px;font-size:.81rem}.workshop-chapter{grid-template-columns:1fr;padding-block:32px;gap:24px}.workshop-copy{padding-inline:10px}.workshop-copy h2{font-size:clamp(2.6rem,10vw,3.4rem);margin-block:16px 20px}.workshop-copy>p:not(.hack-kicker){font-size:.86rem}.workshop-story .workshop-photo img{aspect-ratio:1.15}.workshop-depth summary{font-size:.76rem}.workshop-detail-body>p{font-size:.8rem}.workshop-search-body{grid-template-columns:1fr;gap:30px;padding:27px 22px}.workshop-search-body .workshop-copy{padding-inline:0}.workshop-search-body h2{font-size:2.65rem}.workshop-story .workshop-search-photo img{aspect-ratio:1.35}.workshop-story .workshop-search-photo figcaption{padding:50px 24px 18px}.search-facts dt{font-size:2.1rem}.search-facts dd{font-size:.6rem}.workshop-outlook{grid-template-columns:1fr;gap:18px;margin-top:30px}.workshop-outlook>div{padding-inline:10px}.workshop-outlook h2{font-size:2.5rem}}@media(prefers-reduced-motion:reduce){.phase-probabilities b{transition:none}}.resonance-note .resonance-scale{font-size:.57rem;color:var(--muted);margin:0 0 9px}.hack-reader{color:#f5f5f7;font-weight:550}.story-focus-tile{transform-origin:center}.story-focus-tile.workshop-search{box-shadow:0 calc(var(--tile-focus, 0) * 8px) calc(var(--tile-focus, 0) * 22px) rgb(0 0 0 / calc(var(--tile-focus, 0) * .1))}@media(pointer:coarse)and (max-width:900px)and (prefers-reduced-motion:no-preference){.story-focus-tile :is(figure img,.resonance-note svg,.hack-molecule,.grover-field canvas){scale:calc(1 + var(--tile-focus, 0) * .008);translate:0 calc(var(--tile-focus, 0) * -2px);transform-origin:center}}@media(pointer:coarse)and (max-width:680px){.story-focus-tile:is(.workshop-phase,.hack-build-card){box-shadow:0 calc(var(--tile-focus, 0) * 8px) calc(var(--tile-focus, 0) * 22px) rgb(0 0 0 / calc(var(--tile-focus, 0) * .1))}}@media(hover:hover)and (pointer:fine)and (prefers-reduced-motion:no-preference){.story-focus-tile{scale:1;translate:0 0;transition:scale .22s ease-out,translate .22s ease-out,box-shadow .22s ease-out}.story-focus-tile:hover{scale:1.008;translate:0 -2px}.story-focus-tile.workshop-search:hover,.story-focus-tile:hover .phase-experiment{box-shadow:0 8px 22px #0000001a}.story-focus-tile .phase-experiment{transition:box-shadow .22s ease-out}}@media(prefers-reduced-motion:reduce){.story-focus-tile{scale:none;translate:none;box-shadow:none}}.story-photo-bubble{transform-origin:center;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.story-photo-bubble img{-webkit-user-drag:none}.story-photo-bubble.photo-is-pressed{outline:2px solid color-mix(in srgb,var(--accent-strong) 35%,transparent);outline-offset:3px}.grover-field{margin:16px 0 8px}.grover-field canvas{display:block;width:100%;height:auto;aspect-ratio:8 / 3;background:#090e17;border:1px solid #a9d5ff24;border-radius:16px}.grover-field>span{display:block;margin-top:9px;font-size:.7rem;line-height:1.5;color:#c7c7cc}@media(max-width:680px){.hack-hero{padding:23px 20px 16px}.hack-hero-grid{grid-template-columns:1fr;margin-top:15px;gap:19px}.hack-hero h2{margin:0 0 13px;font-size:clamp(2.8rem,11vw,3.9rem)}.hack-origin{font-size:.94rem;line-height:1.45;max-width:none}.hack-hero .hack-outline-link{margin-top:16px;min-height:44px;font-size:.84rem;padding:10px 17px}.hack-hero-shot figcaption{padding:9px 13px;font-size:.75rem}.hack-hero-footnote{margin-top:15px;padding-top:12px;font-size:.64rem;letter-spacing:.035em}.hack-hero-footnote>span:first-child{max-width:175px}.hack-hero-footnote>span:last-child{white-space:nowrap;align-self:center}.workshop-story{padding-inline:12px}.workshop-opening{display:none}.workshop-chapter{grid-template-columns:1fr;gap:12px;padding-block:26px}.workshop-copy{padding-inline:8px}.workshop-copy h2{font-size:clamp(2.1rem,8.7vw,2.6rem);margin:12px 0 14px}.workshop-copy>p:not(.hack-kicker){font-size:.94rem;line-height:1.5}.workshop-copy>.workshop-question{margin-top:10px}.workshop-story .hack-kicker{font-size:.69rem;letter-spacing:.095em;line-height:1.5}.resonance-note{margin:17px 0 0;max-width:none}.resonance-note svg{height:54px}.resonance-note>div{font-size:.72rem}.resonance-note .resonance-scale{font-size:.67rem;margin-bottom:6px}.workshop-story .workshop-photo img{aspect-ratio:1.5;object-position:center 40%;border-radius:20px}.workshop-story .workshop-photo figcaption{font-size:.75rem;padding:8px 8px 0}.workshop-chapter>.workshop-depth{margin:0 8px}.workshop-depth summary{font-size:.84rem;min-height:46px;padding-block:9px;gap:12px}.workshop-detail-body>p{font-size:.94rem;line-height:1.6}.workshop-detail-body small{font-size:.75rem}.workshop-detail-body a{font-size:.84rem;min-height:44px}.workshop-detail-body>.workshop-math{font-size:.84rem}.workshop-phase{background:var(--surface-raised);border:1px solid var(--line);border-radius:23px;padding:20px 16px 8px;margin-bottom:24px;gap:12px}.workshop-phase .workshop-copy{padding:0}.workshop-phase .workshop-question{display:none}.workshop-phase>.workshop-depth{margin:0}.phase-experiment{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px 18px;padding:4px 0 12px;border:0;border-radius:0;background:transparent}.experiment-heading{display:none}.phase-experiment .phase-instruction{grid-column:1 / -1;grid-row:1;font-size:1.15rem;margin:0 0 4px}.phase-track[data-phase-track=plus]{grid-column:1;grid-row:2}.phase-track[data-phase-track=minus]{grid-column:2;grid-row:2}.phase-probabilities[data-phase-bars=plus]{grid-column:1;grid-row:3}.phase-probabilities[data-phase-bars=minus]{grid-column:2;grid-row:3}.phase-track{font-size:1.3rem}.phase-input,.phase-result{min-width:28px}.phase-gate{width:28px;height:30px;font-size:.87rem;border-radius:6px}.phase-probabilities{margin:0 0 3px}.phase-probabilities>div{font-size:.72rem;gap:5px;margin:7px 0}.phase-probabilities strong{width:34px}.phase-experiment .workshop-action{grid-column:1 / -1;grid-row:4}.phase-experiment .experiment-result{grid-column:1 / -1;grid-row:5;margin:3px 0 0;min-height:0;font-size:.84rem;line-height:1.45}.phase-experiment>small{grid-column:1 / -1;grid-row:6;font-size:.75rem;line-height:1.45}.workshop-search-body{grid-template-columns:1fr;gap:18px;padding:23px 20px 16px}.workshop-search-body .workshop-copy{padding:0}.workshop-search-body h2{font-size:clamp(2rem,8.5vw,2.6rem)}.workshop-search-body .workshop-question{display:none}.workshop-story .workshop-search-photo img{aspect-ratio:1.65;object-position:center 42%}.workshop-story .workshop-search-photo figcaption{font-size:.78rem;padding:40px 20px 12px}.search-facts{margin-bottom:14px;gap:12px}.search-facts dt{font-size:1.9rem}.search-facts dd{font-size:.75rem;line-height:1.4}.grover-experiment label{font-size:.88rem}.grover-readout span,.grover-scale,.grover-field>span{font-size:.75rem}.grover-experiment #grover-explanation{font-size:.84rem}.oracle-outcomes span{font-size:.8rem}.workshop-outlook{grid-template-columns:1fr;gap:7px;margin-top:23px}.workshop-outlook>div{padding-inline:8px}.workshop-outlook img{aspect-ratio:1.8;object-position:center 20%}.workshop-story .workshop-outlook figcaption{padding:8px;font-size:.75rem}.workshop-outlook h2{font-size:2rem;margin:10px 0 12px}.workshop-outlook h2 br{display:none}.workshop-outlook p:not(.hack-kicker){font-size:.94rem;line-height:1.5}.workshop-outlook .workshop-outlook-link{display:none}.hack-intro{grid-template-columns:1fr;padding:32px 20px 25px;gap:12px}.hack-intro h2{margin-top:12px;font-size:clamp(2.1rem,8.8vw,2.7rem)}.hack-intro-copy{padding-top:0}.hack-intro-copy>p:first-child{font-size:1rem;line-height:1.5}.hack-molecule{width:100px;margin-top:12px}.hack-intro-copy .hack-detail{margin-top:12px!important;font-size:.9rem;line-height:1.6}.hack-small{font-size:.8rem}.hack-faq{grid-template-columns:1fr;gap:12px;padding:16px 20px 28px}.hack-faq h2{margin-top:10px}.hack-questions details{padding-block:16px}.hack-story-footer{padding-top:20px;gap:12px}}@media(min-width:681px)and (max-width:900px)and (max-height:500px)and (pointer:coarse){.hack-hero{padding:24px}.hack-hero-grid{gap:24px;margin-top:20px}.hack-hero h2{font-size:3rem}.hack-hero-footnote{margin-top:18px;padding-top:14px}.workshop-opening{display:none}.workshop-chapter{padding-block:30px;gap:24px}.workshop-copy h2{font-size:2.3rem}.workshop-copy>p:not(.hack-kicker){font-size:.94rem;line-height:1.5}.phase-experiment{padding:18px}.phase-experiment>small,.workshop-story figcaption{font-size:.75rem}.workshop-search-body{padding:28px;gap:24px}.workshop-search-body h2{font-size:2.3rem}.workshop-outlook{margin-top:28px;gap:24px}.workshop-outlook h2{font-size:2.2rem}.hack-intro{padding-block:35px}}@media(max-width:680px),(min-width:681px)and (max-width:900px)and (max-height:500px)and (pointer:coarse){.hack-build-card{position:relative;margin:28px 12px 12px;padding:26px 20px;border:1px solid var(--line);border-radius:24px;background:var(--surface-raised)}.hack-build-card:before{content:"";position:absolute;left:32px;top:-29px;height:28px;width:1px;background:var(--line)}.hack-build-card .hack-kicker{color:var(--accent-strong);font-size:.69rem;letter-spacing:.07em}.hack-build-card h2,.hack-build-card .hack-molecule{margin-top:12px}.hack-build-card .hack-cta{width:100%;justify-content:center;margin-top:18px;background:var(--accent-strong);color:#fff}.hack-build-card .hack-cta:disabled{background:var(--surface-soft);color:var(--muted)}.hack-build-card .hack-small{margin-top:12px!important}}@media(prefers-reduced-motion:reduce){.event-tabs-sticky{transition:none}}@media(prefers-reduced-motion:reduce){body:has(.events-home) .bottom-nav{transition:none!important}}.hackathon-preview .hack-hero{min-height:min(66dvh,650px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:22px}.hackathon-preview .hack-hero h2{position:relative;z-index:1}.hackathon-preview .hack-origin,.hackathon-preview .hack-small{margin:0}.hackathon-preview .hack-state-mark{pointer-events:none}.hackathon-preview .hack-small{color:#c4cad2}.hackathon-preview .hack-hero .hack-coming-soon{margin:0;max-width:760px;font-size:clamp(2.8rem,6vw,5.5rem);line-height:1.08}body,body *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}input,textarea,[contenteditable]:not([contenteditable=false]),[contenteditable]:not([contenteditable=false]) *{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}#browser-appearance-help[hidden]{display:none}.officer-operations,.settings-view{overflow-anchor:none}.officer-event-body{gap:10px;padding:12px}.officer-event-stats>span{padding:8px;gap:2px}.officer-event-form{gap:10px}.officer-event-form .officer-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.officer-event-form input,.officer-event-form select{min-width:0;min-height:44px;padding:9px 10px;font-size:16px}.officer-event-form textarea{min-height:76px;padding:10px;font-size:16px}.officer-event-form .form-row label{font-size:.78rem;margin-bottom:4px}.officer-room-options{border-top:1px solid var(--line)}.officer-room-options>summary{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;min-height:44px;cursor:pointer;font-weight:650}.officer-room-options>summary small{font-size:.72rem;font-weight:400;color:var(--muted)}.officer-room-options>.officer-form-grid{padding-top:8px}.settings-view{gap:12px}.settings-view .appearance-settings{padding:16px}.settings-view .appearance-settings>p{margin:6px 0 12px}.settings-view .settings-group>summary{min-height:56px;padding:12px 16px;gap:10px}.settings-view .settings-group-content{gap:10px}.settings-view .settings-group-content .form-row{margin-block:0}@media(max-width:360px){.officer-event-form .officer-form-grid{column-gap:8px}.officer-event-form input,.officer-event-form select{padding-inline:6px}}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
