:root{--brand-ink: #111111;--brand-black: #000000;--brand-green: #22813a;--brand-green-dark: #145f29;--brand-paper: #ffffff;--brand-soft: #f6f7f5;--brand-line: #dfe5dc;--brand-muted: #515851;background:#fff;color:var(--brand-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{scroll-padding-bottom:120px}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}main{background:var(--brand-paper);min-height:100vh}.masthead{align-items:center;background:var(--brand-black);border-bottom:9px solid var(--brand-green);color:#fff;display:flex;justify-content:center;margin:0;max-width:none;padding:8px 16px 10px}.brand-mark{align-items:center;display:flex;justify-content:center}.brand-mark img{flex:0 0 auto;filter:drop-shadow(0 0 1px rgba(255,255,255,.95)) drop-shadow(0 0 10px rgba(31,161,54,.55));height:100px;object-fit:contain;width:110px}.site-footer{align-items:center;background:var(--brand-black);border-top:6px solid var(--brand-green);color:#fff;display:flex;gap:18px;justify-content:space-between;margin-top:36px;padding:18px 24px}.site-footer div{display:grid;gap:2px}.site-footer span{color:#d4d4d4;font-size:.86rem}.site-footer button{align-items:center;background:transparent;border:1px solid rgba(255,255,255,.55);border-radius:3px;color:#fff;display:inline-flex;font-weight:900;gap:8px;min-height:38px;padding:8px 12px}.event-shell{display:grid;gap:22px;grid-template-columns:300px minmax(0,1fr);margin:0 auto;max-width:1180px;padding:48px 24px}.event-shell.directory-mode{grid-template-columns:1fr;max-width:1120px;min-height:calc(100vh - 118px)}.event-shell.registration-mode{grid-template-columns:1fr;max-width:980px}.event-shell.directory-mode .event-browser{position:static}.event-shell.directory-mode .event-browser-header h2{font-size:clamp(2rem,4vw,3.4rem)}.event-shell.directory-mode .event-list{gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.event-shell.directory-mode .event-tab{min-height:96px;padding:18px}.event-shell.directory-mode .event-tab strong{font-size:1.15rem}.event-shell.directory-mode .calendar-view{gap:14px}.event-shell.directory-mode .calendar-month{font-size:1.35rem}.event-shell.directory-mode .calendar-day{min-height:112px;padding:10px}.event-shell.directory-mode .calendar-event{font-size:.82rem;min-height:34px}.event-browser,.registration,.empty-state{background:var(--brand-paper);border:1px solid var(--brand-line);border-radius:4px;box-shadow:0 2px 9px #00000029}.event-browser{align-self:start;display:grid;gap:12px;padding:18px;position:sticky;top:16px}.event-browser-header{align-items:center;display:flex;gap:14px;justify-content:space-between}.event-browser-header h2{color:#24352c;font-size:1.15rem;margin-top:3px}.view-toggle{background:var(--brand-soft);border:1px solid var(--brand-line);border-radius:3px;display:grid;grid-template-columns:1fr 1fr;padding:3px}.view-toggle button{align-items:center;background:transparent;border:0;border-radius:4px;color:var(--brand-muted);display:inline-flex;height:34px;justify-content:center;width:34px}.view-toggle button.active{background:var(--brand-black);color:#fff}.event-list{display:grid;gap:12px}.section-label{color:var(--brand-green);font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.event-tab,.admin-event-button{align-items:center;background:var(--brand-soft);border:1px solid var(--brand-line);border-radius:3px;color:var(--brand-ink);display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr) auto;min-height:48px;padding:10px 12px;text-align:left}.event-tab.active{background:var(--brand-black);border-color:var(--brand-black);color:#fff}.event-tab span{display:grid;gap:3px;min-width:0}.event-tab strong{overflow-wrap:anywhere}.event-tab small{color:inherit;font-size:.76rem;opacity:.78}.event-tab .event-countdown{color:var(--brand-green);font-weight:900;opacity:1}.calendar-view{display:grid;gap:8px}.calendar-month{color:var(--brand-ink);font-size:.92rem;font-weight:900}.calendar-weekdays,.calendar-grid{display:grid;gap:6px;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays span{color:var(--brand-muted);font-size:.68rem;font-weight:900;text-align:center;text-transform:uppercase}.calendar-day{background:var(--brand-soft);border:1px solid var(--brand-line);border-radius:3px;display:grid;gap:5px;min-height:64px;padding:6px}.calendar-day.blank{background:transparent;border-color:transparent}.day-number{color:#4c5a51;font-size:.74rem;font-weight:900}.calendar-event{background:#fff;border:1px solid var(--brand-line);border-radius:3px;color:var(--brand-ink);display:grid;font-size:.68rem;font-weight:900;gap:1px;line-height:1.2;min-height:28px;overflow:hidden;padding:4px;text-align:left}.calendar-event span{overflow:hidden;text-overflow:ellipsis}.calendar-event small{display:none}.calendar-event.active{background:var(--brand-black);border-color:var(--brand-black);color:#fff}.registration{overflow:hidden}.text-button{align-items:center;background:transparent;border:0;color:var(--brand-green-dark);display:inline-flex;font-weight:900;gap:6px;margin:0 0 14px;padding:0}.event-header{align-items:start;background:#fff;border-bottom:4px solid var(--brand-green);display:grid;gap:18px;grid-template-columns:minmax(0,1fr) 180px;padding:30px}h1,h2,p{margin:0}h1{color:var(--brand-ink);font-size:clamp(2rem,4vw,4.3rem);line-height:.98;margin-top:8px;max-width:760px}.event-header p{color:#4f5b52;line-height:1.55;margin-top:14px;max-width:720px}.event-flyer{margin-top:18px;max-width:360px}.event-flyer img{border:1px solid var(--brand-line);border-radius:4px;display:block;max-height:260px;max-width:100%;object-fit:contain}.flyer-link{align-items:center;background:var(--brand-soft);border:1px solid var(--brand-line);border-radius:3px;color:var(--brand-green-dark);display:inline-flex;font-weight:900;gap:8px;min-height:42px;padding:10px 12px;text-decoration:none}.price-box{background:var(--brand-black);border-radius:3px;color:#fff;display:grid;gap:2px;padding:18px}.price-box span{color:#fff;font-size:1.55rem;font-weight:800}.price-box small{color:#d9f0dd;margin-bottom:10px}.form-band{border-bottom:1px solid var(--brand-line);padding:26px 30px}.form-band h2{align-items:center;color:var(--brand-ink);display:flex;font-size:1.1rem;gap:10px;margin-bottom:18px}.field-grid{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}.field-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}label{color:var(--brand-muted);display:grid;font-size:.82rem;font-weight:700;gap:7px}input,select,textarea{background:#fff;border:1px solid #ccd6cb;border-radius:3px;color:var(--brand-ink);min-height:42px;padding:10px 12px;width:100%}textarea{min-height:110px;resize:vertical}.checkbox-row{align-items:center;display:flex;flex-direction:row;gap:10px;margin-top:16px}.checkbox-row input{height:18px;min-height:auto;width:18px}.selection-list{display:grid;gap:12px}.selection-row{display:grid;gap:10px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 42px}.icon-button,.ghost-button,.secondary-button,.primary-button{align-items:center;border-radius:3px;display:inline-flex;font-weight:800;gap:8px;justify-content:center;min-height:42px;padding:10px 14px}.icon-button{padding:0}.danger{background:#fff0ed;border:1px solid #e9bbb5;color:#991b1b}.ghost-button{background:transparent;border:1px solid rgba(255,255,255,.55);color:#fff}.secondary-button{background:var(--brand-soft);border:1px solid var(--brand-line);color:var(--brand-ink);margin-top:14px}.primary-button{background:var(--brand-green);border:1px solid var(--brand-green-dark);color:var(--brand-paper)}.full{width:100%}.flight-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.flight-option{background:var(--brand-soft);border:1px solid var(--brand-line);border-radius:3px;display:grid;gap:3px;grid-template-columns:auto minmax(0,1fr);padding:12px}.flight-option input{grid-row:span 2;height:18px;min-height:auto;width:18px}.flight-option span{color:#213127;font-weight:900}.flight-option small{color:#59675e}.flight-option.disabled{opacity:.54}.checkout-bar{align-items:center;background:#fff;display:flex;gap:18px;justify-content:space-between;padding:20px 30px}.checkout-bar span{color:var(--brand-muted);display:block;font-weight:700}.checkout-bar strong{color:var(--brand-ink);font-size:2rem}.stripe-elements-panel{border-top:4px solid var(--brand-green);display:grid;gap:16px;padding:24px 30px 30px}.stripe-elements-panel h2{margin:4px 0 0}.payment-element-slot{background:#fff;border:1px solid var(--brand-line);border-radius:4px;min-height:88px;padding:14px}.alert{background:#fff2ef;border-top:1px solid #efc6bf;color:#8d2f28;font-weight:800;padding:14px 30px}.alert.success{background:#eef8ee;border:1px solid #b9dcb9;color:#2b6d36}.empty-state{color:var(--brand-ink);min-height:260px;padding:40px}.success-panel{align-items:start;background:var(--brand-paper);border:1px solid var(--brand-line);border-radius:4px;box-shadow:0 2px 9px #00000029;display:grid;gap:22px;margin:40px auto;max-width:760px;padding:36px}.success-panel svg{color:#2f7d44}.success-panel p{color:#4f5b52;line-height:1.6;margin-top:14px}.primary-link{align-items:center;background:var(--brand-green);border-radius:3px;color:var(--brand-paper);display:inline-flex;font-weight:900;justify-content:center;min-height:44px;padding:10px 16px;text-decoration:none;width:max-content}.modal-backdrop{align-items:center;background:#080c0ab8;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:10}.admin-modal{background:var(--brand-paper);border-radius:4px;max-height:90vh;max-width:1040px;overflow:auto;padding:24px;width:min(100%,1040px)}.admin-modal>header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.admin-modal .ghost-button{background:var(--brand-black)}.admin-actions{display:flex;gap:8px}.admin-identity{color:var(--brand-muted);font-size:.82rem;font-weight:800;margin-top:4px}.admin-login{display:grid;gap:14px;max-width:420px}.admin-grid{display:grid;gap:22px;grid-template-columns:260px minmax(0,1fr)}.admin-grid aside{align-content:start;display:grid;gap:10px}.admin-form{display:grid;gap:14px}.flyer-admin-box{background:var(--brand-soft);border:1px solid var(--brand-line);border-radius:4px;display:grid;gap:12px;padding:14px}.flyer-admin-box h3{align-items:center;display:flex;gap:8px;margin:0 0 6px}.flyer-admin-box a{color:var(--brand-green-dark);font-weight:900;overflow-wrap:anywhere}.admin-dashboard,.admin-section{display:grid;gap:18px}.admin-tabs{align-items:center;background:var(--brand-soft);border:1px solid var(--brand-line);border-radius:4px;display:flex;gap:8px;overflow-x:auto;padding:8px}.admin-tabs button{align-items:center;background:#fff;border:1px solid var(--brand-line);border-radius:3px;color:var(--brand-ink);display:inline-flex;flex:0 0 auto;font-weight:900;gap:8px;min-height:38px;padding:8px 12px}.admin-tabs button.active{background:var(--brand-black);border-color:var(--brand-black);color:#fff}.admin-tabs .admin-refresh{margin-left:auto;padding-inline:10px}.stat-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.stat-card,.capacity-card,.settings-card,.registration-detail{background:#fff;border:1px solid var(--brand-line);border-radius:4px;box-shadow:0 1px 6px #00000014;padding:16px}.stat-card span,.detail-item span,.muted-line{color:var(--brand-muted);font-size:.82rem;font-weight:800}.stat-card strong{display:block;font-size:2rem;margin-top:4px}.capacity-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.capacity-card header,.registration-detail header{align-items:start;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.capacity-card h3,.registration-detail h3,.settings-card h3{margin:0}.capacity-card header span,.status-pill{background:#eaf5ed;border:1px solid #b8d8bf;border-radius:999px;color:var(--brand-green-dark);font-size:.74rem;font-weight:900;padding:4px 8px;text-transform:uppercase}.status-pill.pending{background:#fff7e6;border-color:#ead096;color:#7a5300}.status-pill.paid{background:#eaf5ed;border-color:#b8d8bf;color:var(--brand-green-dark)}.capacity-bars{display:grid;gap:8px;margin-top:12px}.capacity-row,.registration-row{align-items:center;display:grid;gap:10px}.capacity-row{grid-template-columns:minmax(0,1fr) auto}.capacity-row span,.registration-row small{color:var(--brand-muted)}.registrations-panel{display:grid;gap:16px;grid-template-columns:minmax(320px,.95fr) minmax(0,1.25fr)}.registration-table{border:1px solid var(--brand-line);border-radius:4px;max-height:560px;overflow:auto}.registration-row{background:#fff;border:0;border-bottom:1px solid var(--brand-line);color:var(--brand-ink);grid-template-columns:minmax(0,1fr) minmax(120px,auto) auto;padding:12px;text-align:left;width:100%}.registration-row.active{background:var(--brand-black);color:#fff}.registration-row.active small{color:#d4d4d4}.registration-row span:first-child{display:grid;gap:3px}.registration-detail{align-self:start;display:grid;gap:14px}.detail-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.detail-item{background:var(--brand-soft);border:1px solid var(--brand-line);border-radius:3px;display:grid;gap:4px;padding:10px}.detail-item strong{overflow-wrap:anywhere}.selection-summary{margin:0;padding-left:18px}.settings-panel{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.settings-card{display:grid;gap:12px}.settings-card h3{align-items:center;display:flex;gap:8px}.delivery-list{display:grid;gap:10px}.delivery-list article{background:var(--brand-soft);border:1px solid var(--brand-line);border-radius:3px;display:grid;gap:4px;padding:10px}.delivery-list small,.delivery-list p{color:var(--brand-muted);overflow-wrap:anywhere}@media(max-width:900px){.masthead{padding:10px 14px}.site-nav{display:none}.event-shell,.event-header,.admin-grid{grid-template-columns:1fr}.event-browser{position:static}.event-list{display:flex;overflow-x:auto;scrollbar-width:thin}.event-tab{flex:0 0 min(320px,78vw)}.field-grid,.field-grid.compact,.flight-grid,.stat-grid,.capacity-grid,.registrations-panel,.settings-panel{grid-template-columns:1fr 1fr}}@media(max-width:620px){body{min-width:0}main{min-height:100svh}.checkout-bar,.site-footer{align-items:stretch;flex-direction:column}.masthead{padding:14px 12px}.brand-mark{align-items:center}.brand-mark img{height:72px;width:78px}.ghost-button,.primary-button,.secondary-button,.site-footer button{width:100%}.event-shell{gap:12px;padding:0 10px 104px}.event-shell.directory-mode{min-height:calc(100svh - 96px);padding-bottom:24px}.event-shell.directory-mode .event-browser-header h2{font-size:2rem}.event-shell.directory-mode .event-tab{min-height:72px;padding:14px}.event-shell.directory-mode .calendar-day{min-height:56px}.event-shell.directory-mode .calendar-event{min-height:24px}.event-browser,.registration,.empty-state{border-radius:6px}.event-list{display:grid;overflow-x:visible}.event-browser-header{align-items:stretch;display:grid}.view-toggle{grid-template-columns:1fr 1fr}.view-toggle button{width:auto}.event-tab{flex:initial;min-height:44px}.calendar-weekdays,.calendar-grid{gap:4px}.calendar-day{min-height:48px;padding:4px}.calendar-event{align-items:center;font-size:.62rem;justify-items:center;min-height:24px;padding:3px;text-align:center}.calendar-event span{display:none}.calendar-event small{display:block}.event-header{gap:16px}.event-header,.form-band,.checkout-bar,.stripe-elements-panel{padding:18px}h1{font-size:2rem;line-height:1.05}.event-header p{font-size:.95rem}.price-box{grid-template-columns:1fr 1fr;row-gap:0}.price-box span{font-size:1.35rem}.price-box small{margin:0 0 8px}.field-grid,.field-grid.compact,.flight-grid,.selection-row,.stat-grid,.capacity-grid,.registrations-panel,.settings-panel,.detail-grid{grid-template-columns:1fr}.admin-tabs{align-items:stretch;display:grid;grid-template-columns:1fr 1fr}.admin-tabs .admin-refresh{margin-left:0}.registration-row{grid-template-columns:1fr}input,select,textarea{font-size:16px;min-height:46px}.form-band h2{font-size:1rem}.flight-option{min-height:58px}.selection-row .icon-button{min-height:38px}.checkout-bar{border-top:1px solid var(--brand-line);bottom:0;box-shadow:0 -12px 30px #17211c2e;gap:12px;left:0;position:fixed;right:0;z-index:7}.checkout-bar>div{align-items:center;display:flex;justify-content:space-between}.checkout-bar strong{font-size:1.55rem}.modal-backdrop{align-items:stretch;padding:0}.admin-modal{border-radius:0;max-height:100svh;padding:18px;width:100%}.admin-modal>header{gap:12px}.admin-actions{display:grid;width:100%}.success-panel{margin:12px;padding:24px}}@media(max-width:390px){h1{font-size:1.72rem}.event-header,.form-band,.checkout-bar,.stripe-elements-panel{padding:14px}}
