.agenda-shortcuts{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}
.agenda-shortcuts a{padding:12px 18px;border:1px solid #6c4b83;border-radius:4px;color:var(--lime);font-size:13px;display:flex;align-items:center;gap:20px}
.agenda-shortcuts a:hover{background:#351647;border-color:var(--lime)}
.agenda-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:44px;scroll-margin-top:30px}
.agenda-heading h3{font-size:24px;letter-spacing:-.6px}
.agenda-heading p{color:var(--muted);font-size:12px;margin-top:5px}
.agenda-poster{color:var(--lime);font-size:12px;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}
.schedule-toolbar{margin-top:24px}
.schedule-table{border-top:0}
.official-block{border:1px solid #5a3673;border-radius:12px;overflow:hidden;background:#211033}
.official-block-title{padding:13px 22px;background:#33184b;color:var(--lime);font-family:'Space Grotesk',sans-serif;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:2px;border-bottom:1px solid #5a3673}
.official-row{display:grid;grid-template-columns:95px minmax(180px,1fr) minmax(260px,.95fr);gap:22px;align-items:center;padding:22px;border-bottom:1px solid var(--line)}
.official-row:last-child{border-bottom:0}
.official-row:hover{background:#2a153d}
.official-time{display:flex;flex-direction:column;align-items:flex-start;color:var(--lime);font-size:17px;line-height:1.3;font-variant-numeric:tabular-nums}
.time-separator{font-size:10px;color:var(--muted);margin:2px 0}
.official-group{font-size:9px;letter-spacing:1.4px;color:#b8a0cb}
.official-project h4{font-family:'Syne',sans-serif;font-size:23px;line-height:1.2;letter-spacing:-.6px;margin:5px 0 9px;overflow-wrap:anywhere}
.official-class{font-size:11px;color:#c4add6;line-height:1.6}
.official-panel{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:20px}
.official-panel dt{font-size:10px;color:#bba3ce;margin-bottom:7px}
.official-panel dd{font-size:14px;font-weight:500;margin:0;line-height:1.4}
.official-break{display:flex;align-items:center;justify-content:center;gap:18px;color:var(--lime);font-size:12px;padding:18px 0;text-align:center}
.official-break:before,.official-break:after{content:'';flex:1;max-width:110px;height:1px;background:#5b3971}
.talks-program{margin-top:48px;scroll-margin-top:30px;padding:28px;border:1px solid #6b4785;border-radius:12px;background:#29133e}
.talks-program-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:25px}
.talks-program-heading h3{font-size:27px;letter-spacing:-.8px;margin:9px 0 0}
.talks-program-heading>p{font-size:12px;color:var(--muted);max-width:310px}
.talks-program .talk-grid{padding:0;gap:18px}
.talks-program .talk-grid article{padding:22px;border:1px solid #66427f;border-radius:8px;background:#211033}
.talks-program .talk-grid .talk-label{display:block;font-size:10px;color:#c3acd4;letter-spacing:1px;margin-bottom:15px}
.talks-program .talk-grid p{font-size:16px;font-weight:600;margin-bottom:12px}
.talks-program .talk-grid p span{font-size:12px;white-space:nowrap;font-weight:400}
.talks-program .talk-grid h4{font-family:'Space Grotesk',sans-serif;font-size:17px;font-weight:500;line-height:1.5;margin:0}
.mobile-actions{display:none}
@media(max-width:1000px){.official-row{grid-template-columns:85px minmax(150px,1fr) minmax(220px,1fr);gap:15px;padding:20px}.official-project h4{font-size:20px}.official-panel{gap:14px}.official-panel dd{font-size:13px}}
@media(max-width:760px){
  html{scroll-padding-bottom:100px}
  .agenda-shortcuts{margin-top:24px}.agenda-shortcuts a{font-size:12px;flex:1;justify-content:space-between;padding:12px}
  .agenda-heading{align-items:flex-start;flex-direction:column;gap:14px;margin-top:32px}.agenda-heading h3{font-size:23px}.agenda-heading p{font-size:11px}
  .official-block-title{padding:12px 16px;font-size:11px}
  .official-row{grid-template-columns:68px minmax(0,1fr);gap:16px 14px;align-items:start;padding:20px 16px}
  .official-time{font-size:15px;margin-top:3px}.official-project h4{font-size:20px}.official-group{font-size:8px}.official-class{font-size:10px}
  .official-panel{grid-column:1/-1;padding-top:15px;border-top:1px solid var(--line);gap:16px}.official-panel dt{font-size:9px;margin-bottom:4px}.official-panel dd{font-size:13px}
  .official-break{font-size:10px;gap:10px;padding:17px 0}
  .talks-program{padding:20px 16px;margin-top:34px}.talks-program-heading{display:block}.talks-program-heading h3{font-size:25px}.talks-program-heading>p{margin-top:12px;font-size:11px}.talks-program .talk-grid{grid-template-columns:1fr;gap:13px}.talks-program .talk-grid article{padding:18px 16px}.talks-program .talk-grid h4{font-size:15px}.talks-program .talk-grid p{font-size:16px}
  .mobile-actions{position:fixed;z-index:25;left:0;right:0;bottom:0;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:10px;padding:12px max(16px,env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:#190b2bf5;border-top:1px solid #795095;box-shadow:0 -8px 30px #10091d80;backdrop-filter:blur(12px)}
  .mobile-signup,.mobile-vote{min-height:48px;border-radius:7px;display:flex;align-items:center;justify-content:center;gap:10px;font-size:12px;font-weight:600;padding:10px}
  .mobile-signup{border:1px solid #806091;color:var(--ink)}
  .mobile-vote{border:1px solid var(--lime);background:var(--lime);color:var(--bg);font-size:14px}.mobile-vote span{font-size:22px;line-height:1}
  .mobile-vote:hover{background:#b4ff8f}.mobile-signup:hover{border-color:var(--lime);color:var(--lime)}
  .mobile-actions .mobile-vote:focus-visible{outline-color:#fff;outline-offset:3px}
  body.voting-open .mobile-actions{visibility:hidden}
  footer{padding-bottom:calc(110px + env(safe-area-inset-bottom))}
}
