:root{--ember: #f47920;--ink: #111111;--charcoal: #333333;--stone: #565656;--steel: #8a8a8e;--line: #e2e2e4;--line-strong: #111111;--track: #ededee;--fill: #3a3a3c;--paper: #ffffff;--font: "Gotham", "Helvetica Neue", Arial, sans-serif;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s6: 24px;--s8: 32px}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;min-height:100%}body{font-family:var(--font);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}#root{overflow-x:hidden}.app{max-width:1500px;margin:0 auto;padding:clamp(20px,3vw,40px);display:flex;flex-direction:column;gap:var(--s6)}.muted{color:var(--steel);font-size:14px}.eyebrow{font-weight:700;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--stone);margin:0}.header{border-bottom:1px solid var(--line-strong);padding-bottom:var(--s4)}.header__title{font-weight:800;font-size:clamp(26px,3.4vw,40px);line-height:1.05;letter-spacing:-.02em;margin:var(--s2) 0 0}.demo-tag{display:inline-block;margin-left:10px;padding:2px 8px;background:var(--charcoal);color:var(--paper);font-size:10px;letter-spacing:.12em;vertical-align:middle}.controls{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--s4)}.filter{display:flex;flex-direction:column;gap:var(--s2)}.filter__label{font-weight:700;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--stone);position:relative}.filter--active .filter__label{color:var(--ink);padding-left:14px}.filter--active .filter__label:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:8px;height:8px;background:var(--ember)}.filter__select{font-family:var(--font);font-size:15px;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-bottom:2px solid var(--charcoal);padding:8px 34px 8px 10px;min-width:220px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--stone) 50%),linear-gradient(135deg,var(--stone) 50%,transparent 50%);background-position:right 14px top 55%,right 9px top 55%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;cursor:pointer}.filter--active .filter__select{border-bottom-color:var(--ember)}.filter__select:focus{outline:none;border-color:var(--charcoal);border-bottom-color:var(--ember)}.controls__right{display:flex;align-items:center;gap:var(--s4)}.controls__updated{font-size:13px;color:var(--steel);font-variant-numeric:tabular-nums}.refresh{font-family:var(--font);font-weight:700;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-bottom:2px solid var(--ember);padding:9px 20px;cursor:pointer;min-height:40px}.refresh:hover:not(:disabled){color:var(--ember);border-color:var(--ember)}.refresh:disabled{color:var(--steel);cursor:default}.metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));column-gap:clamp(20px,2.5vw,44px);row-gap:var(--s4);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:var(--s6) 0}.metric{min-width:0}.metric__label{font-weight:700;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--stone);margin:0}.metric__value{font-weight:800;font-size:clamp(30px,3.6vw,50px);line-height:1;letter-spacing:-.02em;color:var(--ink);margin:var(--s3) 0 var(--s2);font-variant-numeric:tabular-nums}.metric__sub{font-size:13px;color:var(--stone);margin:0}.exhibitors{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 16px;margin-top:calc(-1 * var(--s2))}.exhibitors__value{font-size:16px;color:var(--ink)}.exhibitors__value strong{font-weight:800;font-size:22px;letter-spacing:-.01em}.exhibitors__muted{font-size:13px;color:var(--steel)}.main{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start}.panel__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s3);padding-bottom:var(--s3);margin-bottom:var(--s4);border-bottom:1px solid var(--line-strong)}.panel__title{font-weight:700;font-size:15px;letter-spacing:.02em;margin:0}.panel__count{font-size:12px;color:var(--steel);font-variant-numeric:tabular-nums}.sessions{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s4)}.session__row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:var(--s3) var(--s4);margin-bottom:var(--s2)}.session__name{font-weight:500;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session__figures{font-size:13px;color:var(--stone);font-variant-numeric:tabular-nums;white-space:nowrap}.session__figures strong{color:var(--ink);font-weight:700}.session__meta{font-size:13px;color:var(--steel);margin-top:2px}.session__over{color:var(--ink);font-weight:700;text-transform:uppercase;font-size:11px;letter-spacing:.08em}.bar{height:10px;background:var(--track);width:100%}.bar__fill{height:100%;background:var(--fill)}.bar__fill--over{background:var(--ink)}.upcoming{list-style:none;margin:0;padding:0}.upcoming__row{display:grid;grid-template-columns:84px minmax(0,1fr);gap:var(--s4);padding:var(--s3) 0;border-bottom:1px solid var(--line)}.upcoming__row:last-child{border-bottom:none}.upcoming__time{display:flex;flex-direction:column}.upcoming__clock{font-weight:700;font-size:15px;font-variant-numeric:tabular-nums}.upcoming__rel{font-size:12px;color:var(--steel)}.upcoming__body{display:flex;flex-direction:column;gap:2px;min-width:0}.upcoming__name{font-weight:500;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upcoming__figures{font-size:13px;color:var(--stone);font-variant-numeric:tabular-nums}.empty{border-top:1px solid var(--line-strong);padding:var(--s8) 0}.empty__title{font-weight:800;font-size:22px;margin:var(--s3) 0 var(--s2);letter-spacing:-.01em}.empty__body{color:var(--stone);font-size:15px;line-height:1.55;margin:0;max-width:620px}@media (max-width: 1024px){.main{grid-template-columns:minmax(0,1fr)}}@media (max-width: 1024px){.metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 680px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 440px){.metrics{grid-template-columns:minmax(0,1fr)}.controls{flex-direction:column;align-items:stretch}}
