:root{--navy:#071e45;--blue:#0a4b9b;--sky:#dcecff;--ink:#132238;--muted:#66758a;--line:#d9e0e8;--paper:#f5f7fa;--gold:#cba35a;--radius:14px;--shadow:0 18px 55px #071e4517}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;background:white}a{color:inherit;text-decoration:none}button,.button{border:0;background:var(--blue);color:white;padding:14px 22px;border-radius:7px;font:700 14px inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:28px}button:hover,.button:hover{background:#073b7b}.secondary{background:white!important;color:var(--navy)!important;border:1px solid var(--line)!important}button:disabled{opacity:.55;cursor:wait}.nav{height:84px;padding:0 max(5vw,28px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e5eaf0;background:#fff}.brand{display:flex;align-items:center;gap:12px}.brand span{background:var(--navy);color:white;padding:11px 10px;font-family:Georgia,serif;font-size:22px;letter-spacing:1px}.brand small{font-weight:700;max-width:155px;line-height:1.2}.nav nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}.button.small{padding:10px 18px}.hero{min-height:690px;background:linear-gradient(120deg,var(--navy) 0 68%,#092b5b 68%);color:white;padding:90px max(7vw,30px);display:grid;grid-template-columns:1.55fr .7fr;gap:7vw;align-items:center}.eyebrow{letter-spacing:.18em;font-size:11px;font-weight:800;color:#3373b9}.hero .eyebrow{color:#94bfe9}.hero h1{font:500 clamp(46px,6.2vw,88px)/.96 Georgia,serif;margin:20px 0}.hero h1 em{color:var(--gold);font-weight:400}.hero .date{font-weight:800;letter-spacing:.14em}.hero blockquote{border-left:2px solid var(--gold);margin:30px 0;padding-left:24px;max-width:650px;color:#cbd8e7;font:italic 18px/1.55 Georgia,serif}.hero aside{border-left:1px solid #ffffff30;padding-left:50px;color:#c7d8eb;line-height:1.8}.monogram{font:italic 130px Georgia;color:#ffffff12}.section{padding:110px max(8vw,32px)}.section h2{font:500 clamp(38px,5vw,68px)/1.04 Georgia;margin:15px 0 55px;color:var(--navy)}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px}.split article{border-top:2px solid var(--navy);padding-top:25px}.split article>b{color:var(--gold)}.split h3{font:500 28px Georgia}.split p,.contact p{color:var(--muted);line-height:1.8}.details{background:var(--paper);display:grid;grid-template-columns:repeat(3,1fr);padding:55px max(8vw,32px);gap:40px}.details div{display:flex;flex-direction:column;gap:12px;border-left:2px solid var(--gold);padding-left:25px}.details small{letter-spacing:.16em;font-weight:800;color:var(--muted)}.details strong{font:500 22px Georgia}.contact{display:grid;grid-template-columns:1.4fr .6fr;gap:80px}.contact h2{margin-bottom:0}.contact .button{margin:20px 0}.muted{font-size:13px}footer{padding:30px max(5vw,28px);border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted);font-size:13px}
.form-page{background:var(--paper)}.registration{display:grid;grid-template-columns:330px 1fr;max-width:1250px;margin:50px auto;background:#fff;min-height:760px;box-shadow:var(--shadow)}.registration>aside{background:var(--navy);color:white;padding:45px}.registration>aside h1{font:500 42px Georgia}.registration>aside>p:not(.eyebrow){color:#b9c9da;line-height:1.7}.registration ol{margin:50px 0 0;padding:0;list-style:none;counter-reset:item}.registration li{counter-increment:item;padding:14px 0 14px 42px;position:relative;color:#8fa6c0;font-size:14px}.registration li:before{content:counter(item);position:absolute;left:0;border:1px solid #56718f;border-radius:50%;width:25px;height:25px;text-align:center;line-height:24px}.registration li.active{color:#fff;font-weight:700}.registration li.active:before{background:var(--gold);border-color:var(--gold);color:var(--navy)}.registration>section{padding:45px 55px}.progress{height:3px;background:#e7ebef;margin-bottom:35px}.progress span{display:block;height:100%;background:var(--gold);transition:.3s}.step{display:none;border:0;margin:0;padding:0;min-height:550px}.step.active{display:block}.step legend{font:500 35px Georgia;color:var(--navy);width:100%;margin-bottom:12px}.step legend small{display:block;font:800 10px Inter;letter-spacing:.16em;color:var(--blue);margin-bottom:12px}.intro{color:var(--muted);margin-bottom:28px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.grid .wide{grid-column:1/-1}label{font-size:13px;font-weight:700;color:#35465a;display:flex;flex-direction:column;gap:8px}input,select,textarea{width:100%;padding:12px 13px;border:1px solid #cbd4df;border-radius:6px;background:#fff;font:15px inherit;color:var(--ink)}input:focus,select:focus,textarea:focus{outline:3px solid #1976d220;border-color:var(--blue)}.check{flex-direction:row;align-items:center;border:1px solid var(--line);padding:13px;border-radius:7px}.check input,.consent input{width:auto}.question{max-width:430px;margin:25px 0}.step h3{font:500 22px Georgia;margin:35px 0 20px}.choice{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px}.choice label{position:relative}.choice input{position:absolute;opacity:0}.choice span{padding:25px;border:1px solid var(--line);border-radius:8px;font:700 21px Georgia}.choice span small{display:block;font:13px Inter;color:var(--muted);margin-top:8px}.choice input:checked+span{border:2px solid var(--blue);background:#edf6ff}.notice{padding:16px;background:#f0f5fa;border-radius:7px}.upload{height:380px;border:2px dashed #afbed0;border-radius:10px;align-items:center;justify-content:center;text-align:center;background:#f8fafc;overflow:hidden}.upload input{position:absolute;opacity:0;width:1px}.upload span{display:flex;flex-direction:column;gap:7px}.upload b{color:var(--blue);font-size:17px}.upload small{color:var(--muted)}.upload img{width:240px;height:300px;object-fit:cover;box-shadow:var(--shadow)}.text-button{background:none;color:var(--blue);padding:10px 0}.form-actions{display:flex;justify-content:space-between;margin-top:28px}.form-actions #next,.form-actions #submit{margin-left:auto}.consent{flex-direction:row;align-items:flex-start;background:#eef4fa;padding:18px;line-height:1.55;border-radius:7px}.consent input{margin-top:4px}.error{color:#b42318;font-weight:700}.review-photo{width:70px;height:88px;object-fit:cover}.step #review article{border:1px solid var(--line);border-radius:7px;padding:14px 18px;margin:10px 0;display:flex;justify-content:space-between}.step #review small{font-weight:800;color:var(--blue);text-transform:uppercase;letter-spacing:.1em}.step #review p{margin:7px 0;line-height:1.5}.step #review button{align-self:center;background:none;color:var(--blue);padding:8px}dialog{border:0;border-radius:12px;padding:40px;max-width:520px;box-shadow:0 20px 80px #0005}dialog::backdrop{background:#071e4580}.close{float:right;background:none;color:var(--ink);font-size:25px;padding:0}.modal-ok{margin-top:15px}.success{min-height:calc(100vh - 84px);display:grid;place-items:center;padding:60px;background:var(--paper);text-align:center}.success>div{max-width:760px}.success-icon{display:inline-grid;place-items:center;border-radius:50%;width:58px;height:58px;background:#dff4e5;color:#18753a;font-size:30px}.success h1{font:500 56px Georgia;color:var(--navy)}.success strong{font:700 25px monospace;display:block;margin:25px}.success blockquote{font:italic 19px Georgia;color:var(--muted);margin:30px}.success>div>div{display:flex;gap:14px;justify-content:center;align-items:center}
.login{min-height:100vh;background:linear-gradient(115deg,var(--navy) 0 50%,#eef3f8 50%);display:grid;place-items:center}.login form{width:min(430px,90vw);background:#fff;padding:48px;border-radius:12px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:18px}.login h1{font:500 42px Georgia;margin:0}.login .brand{margin-bottom:20px}.login>a{font-size:13px}.admin-page{background:var(--paper)}#dashboard{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.admin-nav{background:var(--navy);color:#fff;padding:28px 22px;display:flex;flex-direction:column}.admin-nav .brand span{background:#fff;color:var(--navy)}.admin-nav nav{margin:55px -8px;display:flex;flex-direction:column;gap:5px}.admin-nav nav button{justify-content:flex-start;background:none;color:#9fb3cc;padding:13px 16px}.admin-nav nav button.active{background:#ffffff12;color:white}.admin-nav>div{margin-top:auto;display:flex;flex-direction:column;gap:7px}.admin-nav>div small{color:#8da6c3}.admin-nav #logout{margin-top:10px;background:none;border:1px solid #ffffff30}.admin-main{padding:35px 45px;overflow:auto}.admin-main>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.admin-main h1{font:500 36px Georgia;margin:4px 0}.header-actions{display:flex;gap:10px}.header-actions a{background:white;border:1px solid var(--line);padding:11px 15px;border-radius:6px;font-size:13px;font-weight:700}.view{display:none}.view.active{display:block}.cards{display:grid;grid-template-columns:repeat(5,1fr);gap:15px}.cards article,.panel{background:#fff;border:1px solid #e5e9ee;border-radius:9px;padding:22px}.cards small{color:var(--muted);display:block;min-height:35px}.cards strong{font:500 35px Georgia;color:var(--navy)}.panel{margin-top:22px}.panel h2{font:500 24px Georgia}.bar{display:grid;grid-template-columns:150px 1fr 30px;gap:12px;align-items:center;margin:15px 0;font-size:13px}.bar i{height:10px;background:var(--blue);border-radius:10px}.toolbar{display:flex;gap:12px;margin-bottom:18px}.toolbar input{max-width:420px}.table-wrap{background:white;border:1px solid var(--line);border-radius:8px;overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;background:#eef3f8;color:#556579;padding:12px}td{padding:14px 12px;border-top:1px solid #e8ecf0;vertical-align:top}td small{display:block;color:var(--muted);margin-top:4px}.pill{padding:4px 8px;border-radius:10px;background:#eee}.pill.yes{background:#dff4e5;color:#176b35}.empty{text-align:center;color:var(--muted);padding:45px}.panel dl{display:grid;grid-template-columns:180px 1fr}.panel dt,.panel dd{border-bottom:1px solid var(--line);padding:12px;margin:0}.panel dt{font-weight:700}
.badge-page{background:#e9edf2;padding:40px;display:grid;place-items:center;min-height:100vh}.badge{width:380px;min-height:610px;background:white;text-align:center;border-radius:8px;overflow:hidden;box-shadow:var(--shadow);position:relative}.badge header{background:var(--navy);color:#fff;padding:20px 15px 28px}.badge .mark{font:700 26px Georgia}.badge header small{letter-spacing:.08em;font-size:8px}.badge header h1{font:500 16px/1.35 Georgia;margin:12px 0 0}.badge header i{color:var(--gold)}.badge-photo{width:125px;height:156px;object-fit:cover;margin:-16px auto 10px;border:5px solid white;border-radius:5px;display:block}.category{display:inline-block;background:var(--gold);color:var(--navy);padding:5px 16px;font-size:11px;letter-spacing:.16em;border-radius:20px}.badge h2{font:500 27px Georgia;margin:12px 15px 5px;color:var(--navy)}.badge>p{font-size:12px;line-height:1.55;margin:5px 20px}.badge-bottom{border-top:1px solid var(--line);margin:14px 20px 0;padding-top:10px;display:flex;align-items:center;justify-content:space-between;text-align:right;color:var(--navy);font-weight:800;font-size:9px;line-height:1.5}.badge-bottom div{display:flex;align-items:center;gap:6px}.badge-bottom svg{width:55px;height:55px}.badge-bottom small{font:700 8px monospace}.print-actions{display:flex;gap:10px;margin-top:22px;align-items:center}.print-actions a{background:#fff;padding:12px 18px;border-radius:6px}
@media(max-width:900px){.nav nav>a:not(.button){display:none}.hero{grid-template-columns:1fr;padding-top:65px}.hero aside{display:none}.split,.contact{grid-template-columns:1fr}.details{grid-template-columns:1fr}.registration{margin:0;grid-template-columns:1fr}.registration>aside{padding:30px}.registration>aside h1,.registration>aside>p{display:none}.registration ol{display:flex;margin:20px 0 0;justify-content:space-between}.registration li{font-size:0;padding:0}.registration li:before{position:static;display:block}.registration>section{padding:30px 20px}.grid{grid-template-columns:1fr}.grid .wide{grid-column:auto}.choice{grid-template-columns:1fr}.step{min-height:auto}.success h1{font-size:38px}#dashboard{grid-template-columns:1fr}.admin-nav{display:none}.admin-main{padding:22px 14px}.cards{grid-template-columns:1fr 1fr}.admin-main>header{align-items:flex-start;gap:20px;flex-direction:column}.toolbar{flex-direction:column}.login{background:var(--paper)}}
@media print{body.badge-page{background:white;padding:0}.badge{box-shadow:none;border:1px solid #bbb}.print-actions{display:none}}
.hero-logo-watermark{position:relative;overflow:hidden}.hero-logo-watermark:before{content:"";position:absolute;inset:3% 38% 3% 2%;background:url('/assets/waba-logo.jpg') center/contain no-repeat;opacity:.055;mix-blend-mode:screen;filter:grayscale(1)}.hero-logo-watermark>div,.hero-logo-watermark>aside{position:relative;z-index:1}.event-flyer{border:0!important;padding:0!important;color:inherit!important}.event-flyer-crop{position:relative;aspect-ratio:1/.9;overflow:hidden;border-radius:14px;box-shadow:0 24px 60px #0008;border:1px solid #ffffff38;background:#0a3269}.event-flyer img{display:block;width:100%;height:auto;object-fit:cover;object-position:top center}.event-flyer-crop:after{content:"";position:absolute;inset:auto 0 0;height:8%;background:linear-gradient(transparent,var(--navy))}@media(max-width:900px){.hero-logo-watermark:before{inset:5%;opacity:.045}.event-flyer{display:block!important;margin-top:25px}.event-flyer-crop{width:min(100%,520px);margin:auto}}
.nav .brand span{width:76px;height:62px;padding:0;background:#fff url('/assets/waba-logo.jpg') center/contain no-repeat;font-size:0;display:block}
.registration,.success{position:relative;isolation:isolate;overflow:hidden}.registration:before,.success:before{content:"";position:absolute;inset:9% 7%;background:url('/assets/waba-logo.jpg') center/58% auto no-repeat;opacity:.035;filter:grayscale(1);pointer-events:none;z-index:-1}.registration>aside,.registration>section,.success>div{position:relative;z-index:1}.registration>section{background:#ffffffed}.success{background-color:var(--paper)}.success:before{inset:7%;background-size:min(68vw,650px) auto;opacity:.045}
.forum-about h4{margin:28px 0 12px;color:var(--navy);font-size:13px;letter-spacing:.13em;text-transform:uppercase}.forum-topics{list-style:none;counter-reset:forum-topic;margin:0;padding:0;border-top:1px solid var(--line)}.forum-topics li{counter-increment:forum-topic;position:relative;padding:13px 8px 13px 42px;border-bottom:1px solid var(--line);color:#43546a;font-size:14px;line-height:1.45}.forum-topics li:before{content:counter(forum-topic,decimal-leading-zero);position:absolute;left:5px;color:var(--blue);font-size:11px;font-weight:800;letter-spacing:.08em}
.awards-about h4{margin:28px 0 12px;color:var(--navy);font-size:13px;letter-spacing:.13em;text-transform:uppercase}.awards-theme{margin:25px 0;padding:22px 24px;background:var(--navy);color:white;border-left:4px solid var(--gold)}.awards-theme small{color:#a9c5e5;font-size:9px;font-weight:800;letter-spacing:.13em}.awards-theme blockquote{margin:12px 0 0;font:italic 20px/1.45 Georgia,serif;color:white}.awards-details{display:grid;grid-template-columns:75px 1fr;margin:0 0 25px;border-top:1px solid var(--line)}.awards-details dt,.awards-details dd{margin:0;padding:11px 8px;border-bottom:1px solid var(--line);font-size:13px;line-height:1.5}.awards-details dt{font-weight:800;color:var(--blue);text-transform:uppercase}.awards-details dd{color:#43546a}.awards-about p strong{color:var(--navy)}
.participant-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:18px;margin:0 0 24px}.participant-id-card{background:white;border:1px solid #dbe2ea;border-radius:12px;overflow:hidden;box-shadow:0 8px 24px #071e4510}.id-card-brand{padding:13px 16px;background:var(--navy);color:white;display:flex;align-items:center;justify-content:space-between}.id-card-brand span{font:700 17px Georgia;letter-spacing:.05em}.id-card-brand small{padding:4px 8px;background:var(--gold);color:var(--navy);border-radius:12px;font-weight:800;text-transform:uppercase;font-size:8px;letter-spacing:.08em}.id-card-profile{display:grid;grid-template-columns:90px 1fr;gap:15px;padding:16px}.id-card-profile img{width:90px;height:112px;object-fit:cover;border-radius:6px;background:#eef2f6}.id-card-profile>div>small{font-size:8px;letter-spacing:.13em;color:var(--blue);font-weight:800}.id-card-profile h2{font:500 20px/1.05 Georgia;margin:5px 0 8px;color:var(--navy)}.id-card-profile p{font-size:11px;line-height:1.5;margin:0;color:var(--muted)}.id-card-profile p b{color:var(--ink)}.id-card-footer{display:flex;justify-content:space-between;align-items:center;padding:11px 16px;border-top:1px solid var(--line);background:#f8fafc}.id-card-footer strong{font:700 11px monospace;color:var(--navy)}.id-card-footer a{font-size:11px;font-weight:800;color:var(--blue)}.participant-gallery-empty{grid-column:1/-1;background:white;border:1px solid var(--line);border-radius:8px}

[hidden]{display:none!important}.brand .slacb-word{max-width:none;font:900 22px/1 Inter,sans-serif;letter-spacing:.04em;background:var(--navy);padding:10px 12px;border-radius:5px}.slacb-word i,.slacb-word b,.slacb-word em{font-style:normal}.slacb-word i{color:#1eb53a}.slacb-word b{color:#fff}.slacb-word em{color:#2f9be6}.registration-success-modal{text-align:center;max-width:620px}.registration-success-modal h2{font:500 36px Georgia;color:var(--navy);margin:16px 0}.registration-success-modal>strong{display:block;margin:22px;font:700 22px monospace}.modal-actions,.badge-admin-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.badge-admin-actions{justify-content:flex-start}.badge-sheet-page{background:#e9edf2;padding:24px}.badge-sheet-grid{width:210mm;min-height:297mm;margin:auto;background:#fff;padding:10mm;display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:133mm;gap:5mm}.badge-sheet-grid .badge{width:auto;min-height:0;height:133mm;border:1px solid #b9c2ce;border-radius:0;box-shadow:none}.badge-sheet-grid .badge header{padding:12px 10px 16px}.badge-sheet-grid .badge-photo{width:92px;height:115px}.badge-sheet-grid .badge h2{font-size:21px}.badge-sheet-grid .badge-bottom{margin-top:8px}.batch-print-actions{display:flex;justify-content:center;gap:12px;margin:20px}.participant-badge-notice{margin-top:18px;color:var(--muted);font-size:13px}.badge-sheet-break{break-after:page}
@media print{body.badge-sheet-page{padding:0;background:#fff}.badge-sheet-grid{margin:0;box-shadow:none}.batch-print-actions{display:none}}
