@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-condensed-vietnamese-600-normal-A5AYRdjN.woff2)format("woff2"),url(/assets/barlow-condensed-vietnamese-600-normal-CNlPk46_.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-condensed-latin-ext-600-normal-18ESti3H.woff2)format("woff2"),url(/assets/barlow-condensed-latin-ext-600-normal-Clv9cIcR.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-condensed-latin-600-normal-DepVgxBB.woff2)format("woff2"),url(/assets/barlow-condensed-latin-600-normal-BFJEwTuo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-vietnamese-700-normal-DYeBwlKR.woff2)format("woff2"),url(/assets/barlow-condensed-vietnamese-700-normal-DhIzd8Tb.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-latin-ext-700-normal-CwuXbfVR.woff2)format("woff2"),url(/assets/barlow-condensed-latin-ext-700-normal-BIHFfxf0.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-latin-700-normal-v1xN8_Wq.woff2)format("woff2"),url(/assets/barlow-condensed-latin-700-normal-Dmwat-ge.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-cyrillic-ext-400-normal-BwJdxs7r.woff2)format("woff2"),url(/assets/source-sans-3-cyrillic-ext-400-normal-Cd63HKDh.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-cyrillic-400-normal-DjhbW-4D.woff2)format("woff2"),url(/assets/source-sans-3-cyrillic-400-normal-7kQcAFpS.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-greek-ext-400-normal-CpIwTHMM.woff2)format("woff2"),url(/assets/source-sans-3-greek-ext-400-normal-BI1kUwmR.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-greek-400-normal-DZReXJla.woff2)format("woff2"),url(/assets/source-sans-3-greek-400-normal-DJm9Ud5h.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-vietnamese-400-normal-CwtaIDr2.woff2)format("woff2"),url(/assets/source-sans-3-vietnamese-400-normal-dYp9C364.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-latin-ext-400-normal-UNsKFIBq.woff2)format("woff2"),url(/assets/source-sans-3-latin-ext-400-normal-BGPHfnm_.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-latin-400-normal-DQi5PRDE.woff2)format("woff2"),url(/assets/source-sans-3-latin-400-normal-AFMiCETP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-cyrillic-ext-600-normal-6AhwUnSr.woff2)format("woff2"),url(/assets/source-sans-3-cyrillic-ext-600-normal-uAL1a5gb.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-cyrillic-600-normal-BnFu5nHC.woff2)format("woff2"),url(/assets/source-sans-3-cyrillic-600-normal-y-RO8wOd.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-greek-ext-600-normal-DynePNDL.woff2)format("woff2"),url(/assets/source-sans-3-greek-ext-600-normal-D7vJ4nVX.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-greek-600-normal-BSO157bq.woff2)format("woff2"),url(/assets/source-sans-3-greek-600-normal-BNF9LBpG.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-vietnamese-600-normal-B2sTNYey.woff2)format("woff2"),url(/assets/source-sans-3-vietnamese-600-normal-DpSexF-T.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-latin-ext-600-normal-AEyhgUpm.woff2)format("woff2"),url(/assets/source-sans-3-latin-ext-600-normal-Wy7HIzqC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-latin-600-normal-DeckBYAU.woff2)format("woff2"),url(/assets/source-sans-3-latin-600-normal-BvDVuF-j.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-3-cyrillic-ext-700-normal-BhUSqjb8.woff2)format("woff2"),url(/assets/source-sans-3-cyrillic-ext-700-normal-B6RPsSdD.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-3-cyrillic-700-normal-CIuudVLB.woff2)format("woff2"),url(/assets/source-sans-3-cyrillic-700-normal-DYE6gq6k.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-3-greek-ext-700-normal-Dd6uIcuy.woff2)format("woff2"),url(/assets/source-sans-3-greek-ext-700-normal-C6ITAlBU.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-3-greek-700-normal-C8Tp2qRF.woff2)format("woff2"),url(/assets/source-sans-3-greek-700-normal-BWdBblwd.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-3-vietnamese-700-normal-Bgamivog.woff2)format("woff2"),url(/assets/source-sans-3-vietnamese-700-normal-BHxM10oo.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-3-latin-ext-700-normal-6Xi0A2be.woff2)format("woff2"),url(/assets/source-sans-3-latin-ext-700-normal-ChH_v7nA.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-3-latin-700-normal-CkzU-mV9.woff2)format("woff2"),url(/assets/source-sans-3-latin-700-normal-BBbVrHF_.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink:#152018;--ink-soft:#3a4a3f;--paper:#eef2e8;--paper-2:#dce5d4;--field:#1f4d3a;--field-deep:#143528;--brass:#c8972a;--brass-bright:#e0b34a;--signal:#b5452a;--warn:#a86b12;--ok:#2a6b4f;--line:#1520181f;--shadow:0 18px 40px #14281c2e;--radius:14px;--nav-h:72px;--font-display:"Barlow Condensed", "Arial Narrow", sans-serif;--font-body:"Source Sans 3", "Segoe UI", sans-serif;color:var(--ink);background:var(--paper);font-family:var(--font-body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background-color:#0000;background-image:radial-gradient(1200px 600px at 10% -10%,#c8972a2e,#0000 55%),radial-gradient(900px 500px at 100% 0,#1f4d3a29,#0000 50%),linear-gradient(165deg,#f4f7ef 0%,#e7eedf 45%,#d8e4d4 100%);background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:auto,auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;min-height:100dvh}body:before{content:"";pointer-events:none;opacity:.035;background-image:repeating-linear-gradient(-18deg,#152018 0 1px,#0000 1px 10px);position:fixed;inset:0}button,input,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none}h1,h2,h3{font-family:var(--font-display);letter-spacing:.02em;margin:0;font-weight:700}h1{text-transform:uppercase;font-size:clamp(2.4rem,9vw,3.4rem);line-height:.95}h2{text-transform:uppercase;font-size:1.8rem;line-height:1.05}h3{text-transform:uppercase;font-size:1.15rem;line-height:1.2}p{margin:0}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.install-banner{color:#f2f6ee;background:#1f4d3aeb;border-radius:14px;flex-direction:column;gap:.7rem;margin:12px 12px 0;padding:.85rem .95rem;display:flex}.install-banner strong{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;margin-bottom:.25rem;font-size:1.15rem;display:block}.install-banner p{opacity:.95;font-size:.9rem;line-height:1.4}.install-banner em{color:var(--brass-bright);font-style:normal;font-weight:700}.install-banner-actions{align-items:center;gap:.5rem;display:flex}.install-btn{background:var(--brass-bright);width:auto;min-height:42px;color:var(--ink);padding:0 1.1rem}.install-dismiss{color:#f2f6eed9;padding:.4rem .6rem;font-size:.9rem;font-weight:600}.install-guide{border:1px solid var(--line);background:#ffffff80;border-radius:14px;margin-top:1.6rem;padding:1rem 1.05rem}.install-guide h2{margin-bottom:.55rem;font-size:1.25rem}.install-guide ol{color:var(--ink-soft);margin:.4rem 0 .9rem;padding-left:1.2rem;line-height:1.45}.install-guide li{margin-bottom:.25rem}.app-shell{max-width:480px;min-height:100dvh;padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom));margin:0 auto;position:relative}.app-main{padding:20px 18px 28px}.brand-mark{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--field);margin-bottom:.35rem;font-size:1.55rem;font-weight:700;animation:.55s ease-out both rise}.view-header h1,.onboarding h1{animation:.65s ease-out 50ms both rise}.lede{color:var(--ink-soft);max-width:34ch;margin-top:.55rem;font-size:1.02rem;line-height:1.45;animation:.7s ease-out .1s both rise}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.onboarding{flex-direction:column;min-height:100dvh;padding:48px 22px 40px;display:flex;position:relative;overflow:hidden}.onboarding-glow{filter:blur(8px);background:radial-gradient(closest-side,#c8972a47,#0000);height:280px;animation:4.5s ease-in-out infinite pulse;position:absolute;inset:auto -20% 35%}@keyframes pulse{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}.onboarding h1{max-width:10ch;font-size:clamp(3rem,12vw,4rem)}.onboarding .lede{margin:1rem 0 1.6rem}.theme-grid{z-index:1;flex-wrap:wrap;gap:.55rem;display:flex;position:relative}.theme-grid.spacious{margin-top:1.25rem}.theme-chip{border:1.5px solid var(--ink);background:#ffffff73;border-radius:999px;padding:.55rem .95rem;transition:background .18s,color .18s,transform .18s}.theme-chip.is-on{background:var(--field);color:#f4f7ef;border-color:var(--field);transform:translateY(-1px)}.theme-chip.is-static{cursor:default;padding:.35rem .7rem;font-size:.9rem}.onboarding-actions{margin-top:auto;padding-top:2rem}.btn{letter-spacing:.04em;text-transform:uppercase;width:100%;min-height:52px;font-weight:700;font-family:var(--font-display);border-radius:999px;justify-content:center;align-items:center;font-size:1.15rem;display:inline-flex}.btn-primary{background:var(--ink);color:var(--paper)}.btn-primary:active{transform:scale(.98)}.day-tabs{border:1px solid var(--line);background:#ffffff8c;border-radius:999px;grid-template-columns:repeat(3,1fr);gap:.4rem;margin:1.25rem 0 .9rem;padding:.3rem;display:grid}.day-tabs button{min-height:42px;font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);border-radius:999px;font-size:1.15rem;position:relative}.day-tabs button.is-on{background:var(--field);color:#f3f7ef}.day-tabs .count{opacity:.85;margin-left:.3rem;font-size:.85rem}.search input,.filter-row select{border:1px solid var(--line);background:#ffffffb3;border-radius:12px;width:100%;min-height:46px;padding:0 .9rem}.programme-toolbar{flex-direction:column;gap:.5rem;margin:.65rem 0 1rem;display:flex}.programme-toolbar .search{flex:1}.filter-toggle{border:1px solid var(--line);white-space:nowrap;background:#ffffffb3;border-radius:12px;align-self:flex-start;min-height:40px;padding:0 1rem;font-weight:600}.filter-toggle.is-on{background:var(--brass);border-color:var(--brass);color:var(--ink)}.schedule-board{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:.55rem;width:100%;display:grid}.venue-column{min-width:0}.venue-heading{border-bottom:3px solid var(--field);justify-content:space-between;align-items:baseline;gap:.35rem;margin-bottom:.55rem;padding-bottom:.35rem;display:flex}.venue-column.venue-hq .venue-heading{border-bottom-color:var(--field)}.venue-column.venue-briefing .venue-heading{border-bottom-color:#2b5f8a}.venue-column.venue-arsenal .venue-heading{border-bottom-color:#8a4d1f}.venue-column.venue-ensa .venue-heading{border-bottom-color:#7a2f55}.venue-heading h2{font-size:clamp(.72rem,1.9vw,1.15rem);line-height:1.1}.venue-name-short{display:none}@media (width<=700px){.venue-name-full{display:none}.venue-name-short{display:inline}.schedule-board{gap:.3rem}.venue-heading h2{letter-spacing:.04em;text-align:center;width:100%;font-size:.85rem}}.empty-column{color:var(--ink-soft);padding:.5rem .25rem;font-size:.85rem}.session-list{flex-direction:column;gap:.65rem;display:flex}.session-list.compact{gap:.35rem}.session-row.is-compact{grid-template-columns:unset;border-left-width:3px;border-radius:0 8px 8px 0;flex-direction:column;min-width:0;display:flex;overflow:hidden}.session-row.is-compact .compact-top{justify-content:space-between;align-items:center;gap:.25rem;min-width:0;padding:.35rem .3rem 0 .45rem;display:flex}.session-row.is-compact .compact-top .session-main{flex:1;min-width:0;padding:.15rem .15rem 0;overflow:hidden}.session-row.is-compact .compact-top time{font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;font-size:clamp(.68rem,1.55vw,.82rem);font-weight:700;display:block;overflow:hidden}.session-row.is-compact .compact-body{width:100%;min-width:0;padding:.25rem .45rem .5rem}.session-row.is-compact h3{overflow-wrap:anywhere;word-break:break-word;-webkit-line-clamp:5;-webkit-box-orient:vertical;font-size:clamp(.72rem,1.7vw,.95rem);line-height:1.2;display:-webkit-box;overflow:hidden}.session-row.is-compact .speakers-compact{color:var(--ink-soft);overflow-wrap:anywhere;word-break:break-word;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-top:.28rem;font-size:clamp(.62rem,1.4vw,.78rem);line-height:1.3;display:-webkit-box;overflow:hidden}.session-row.is-compact .add-btn{border-radius:6px;flex-shrink:0;width:22px;height:22px;margin:0;padding:0;font-size:.95rem;line-height:1}.session-row.is-compact .match-tag{margin-top:.25rem;padding:.1rem .3rem;font-size:.58rem;display:inline-block}.session-row.is-compact .warn{margin-top:.22rem;font-size:.62rem}@media (width<=700px){.venue-column{overflow:hidden}.schedule-board{gap:.28rem}.session-list.compact{gap:.32rem}.session-row.is-compact .compact-top time{font-size:.7rem}.session-row.is-compact h3{-webkit-line-clamp:4;font-size:.74rem}.session-row.is-compact .speakers-compact{-webkit-line-clamp:3;font-size:.66rem}.session-row.is-compact .add-btn{width:22px;height:22px;font-size:.9rem}.app-shell:has(.view-programme) .app-main{padding-left:8px;padding-right:8px}}.app-shell:has(.view-programme){max-width:min(100%,1200px)}.app-shell:has(.view-programme) .app-main{padding-left:12px;padding-right:12px}.app-shell:has(.view-programme) .bottom-nav{max-width:min(100%,1200px)}.view-programme .lede{max-width:none}.session-row{border-left:4px solid var(--field);border-radius:0 var(--radius) var(--radius) 0;background:#ffffff9e;grid-template-columns:1fr auto;align-items:stretch;gap:.4rem;animation:.4s ease-out both rise;display:grid;box-shadow:inset 0 1px #ffffffb3}.session-row.venue-hq{border-left-color:var(--field)}.session-row.venue-briefing{border-left-color:#2b5f8a}.session-row.venue-arsenal{border-left-color:#8a4d1f}.session-row.venue-ensa{border-left-color:#7a2f55}.session-row.is-selected{background:#1f4d3a1a}.session-row.is-match:not(.is-selected){background:#c8972a1f}.session-row.is-overlap{outline:2px solid #b5452a8c}.session-row.is-tight{outline:2px solid #a86b1273}.session-main{text-align:left;padding:.85rem .75rem .9rem .9rem}.session-meta{flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.35rem;display:flex}.session-meta time{font-variant-numeric:tabular-nums;font-size:.92rem;font-weight:700}.venue-tag,.match-tag{letter-spacing:.06em;text-transform:uppercase;background:#15201814;border-radius:999px;padding:.15rem .45rem;font-size:.72rem;font-weight:700}.match-tag{background:#c8972a47}.speakers{color:var(--ink-soft);margin-top:.3rem;font-size:.95rem;line-height:1.35}.warn{margin-top:.45rem;font-size:.85rem;font-weight:700}.warn-hard{color:var(--signal)}.warn-soft{color:var(--warn)}.add-btn{background:var(--ink);width:52px;color:var(--paper);border-radius:12px;margin:.45rem .45rem .45rem 0;font-size:1.4rem;font-weight:700;line-height:1;transition:background .15s,transform .15s}.add-btn.is-on{background:var(--ok)}.add-btn:active{transform:scale(.94)}.gap-note{color:var(--ink-soft);margin:.2rem 0 .55rem .9rem;font-size:.82rem}.gap-note.is-tight{color:var(--warn);font-weight:700}.timeline-item+.timeline-item{margin-top:0}.gap-block{background:#ffffff73;border:1px dashed #1520182e;border-radius:12px;grid-template-columns:1fr auto 1fr;align-items:center;gap:.55rem;margin:.55rem 0 .65rem;padding:.55rem .65rem;display:grid}.gap-line{background:#15201829;height:1px}.gap-copy{text-align:center;flex-direction:column;align-items:center;gap:.15rem;min-width:9rem;display:flex}.gap-copy strong{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;font-size:1rem}.gap-copy span{color:var(--ink-soft);max-width:22ch;font-size:.78rem;line-height:1.3}.gap-block.is-ok{background:#2a6b4f14;border-color:#2a6b4f47}.gap-block.is-ok .gap-copy strong{color:var(--ok)}.gap-block.is-tight{background:#a86b121f;border-color:#a86b1266}.gap-block.is-tight .gap-copy strong{color:var(--warn)}.gap-block.is-clash{background:#b5452a1f;border-color:#b5452a73}.gap-block.is-clash .gap-copy strong{color:var(--signal)}.status-strip{flex-wrap:wrap;gap:.45rem;margin-bottom:.9rem;display:flex}.status{letter-spacing:.03em;text-transform:uppercase;border-radius:999px;padding:.35rem .65rem;font-size:.8rem;font-weight:700}.status.hard{color:var(--signal);background:#b5452a26}.status.soft{color:var(--warn);background:#a86b1229}.empty,.empty-block,.hint{color:var(--ink-soft);line-height:1.45}.empty-block{border:1px dashed var(--line);border-radius:var(--radius);background:#fff6;margin-top:1.5rem;padding:1.2rem}.muted{margin-top:.5rem;font-size:.95rem}.hint{margin-top:1.4rem;font-size:.95rem}.bottom-nav{width:100%;max-width:480px;padding:.55rem .7rem calc(.55rem + env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:20;background:#eef2e8eb;grid-template-columns:repeat(3,1fr);gap:.25rem;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav button{min-height:48px;font-family:var(--font-display);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-soft);border-radius:12px;font-size:1.05rem;position:relative}.bottom-nav button.is-on{background:var(--field-deep);color:#f2f6ee}.badge{background:var(--brass-bright);min-width:1.2rem;height:1.2rem;color:var(--ink);font-size:.75rem;font-family:var(--font-body);border-radius:999px;place-items:center;margin-left:.3rem;padding:0 .25rem;font-weight:700;display:inline-grid}.sheet-backdrop{z-index:40;background:#0c161073;justify-content:center;align-items:flex-end;animation:.2s ease-out fade;display:flex;position:fixed;inset:0}@keyframes fade{0%{opacity:0}to{opacity:1}}.sheet{width:min(480px,100%);max-height:min(88dvh,720px);padding:1rem 1.15rem calc(1.4rem + env(safe-area-inset-bottom));box-shadow:var(--shadow);background:#f3f6ee;border-radius:22px 22px 0 0;animation:.28s ease-out sheet-up;overflow:auto}@keyframes sheet-up{0%{transform:translateY(24px)}to{transform:translateY(0)}}.sheet-close{float:right;color:var(--ink-soft);padding:.35rem .5rem;font-weight:700}.sheet-kicker{clear:both;color:var(--field);margin-bottom:.4rem;font-size:.9rem;font-weight:700}.sheet .speakers{margin:.55rem 0 .8rem}.sponsor{color:var(--ink-soft);margin-bottom:.8rem;font-size:.9rem}.theme-row{flex-wrap:wrap;gap:.4rem;margin-bottom:1rem;display:flex}.conflict-box{background:#b5452a14;border-radius:12px;margin-bottom:1rem;padding:.85rem .95rem}.conflict-box h3{margin-bottom:.4rem;font-size:1rem}.conflict-box ul{color:var(--ink-soft);margin:0;padding-left:1.1rem;line-height:1.4}.sheet-cta{margin-top:.4rem}@media (width>=720px){.app-shell{border:1px solid var(--line);box-shadow:var(--shadow);background:#f4f7ef8c;border-radius:24px;min-height:calc(100dvh - 36px);margin-top:18px;margin-bottom:18px;overflow:clip}.bottom-nav{border-radius:0 0 24px 24px}}
