/* Vision Event Planner 2.0.187 — agenda styles split from main bundle. */
.program-summary { display:flex; gap:18px; margin-bottom:18px; color:var(--text-soft); font-size:13px; }.program-grid { display:grid; grid-template-columns:1fr; gap:16px; }.program-shell{max-width:1750px;margin:0 auto}.program-page-title{margin-bottom:12px}.program-subnav{display:flex;gap:6px;margin:-8px 0 20px;flex-wrap:wrap}.program-subnav a{text-decoration:none;color:var(--green-800);font-size:13px;font-weight:700;padding:8px 12px;border-radius:8px;border:1px solid var(--green-200);background:rgba(255,255,255,.65)}.program-subnav a.active{background:var(--green-200);border-color:var(--green-400)}.public-agenda{--public-primary:var(--tenant-primary,var(--green-700,var(--green-800)));--public-primary-dark:var(--green-800,var(--green-800));--public-accent:var(--tenant-accent,var(--green-500,#8cc63e));--public-soft:var(--green-50,var(--green-50));--public-soft-strong:var(--green-100,var(--green-50));--public-border:var(--green-200,var(--green-200));--public-border-soft:var(--green-100,var(--green-100));max-width:1200px;margin:0 auto;padding:20px}.public-agenda-header{display:flex;align-items:center;gap:16px;margin-bottom:18px}.public-agenda-header img{width:80px;height:80px;object-fit:contain}.public-agenda-header h1{margin:0;color:var(--public-primary-dark)}.public-controls{display:grid;grid-template-columns:160px 180px 180px minmax(240px,1fr) auto;gap:8px;margin-bottom:16px}.public-controls select,.public-controls input{border:1px solid var(--public-border);border-radius:9px;padding:10px;background:#fff}.public-controls select:focus,.public-controls input:focus{border-color:var(--public-accent);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--public-accent) 22%,transparent)}.public-controls button{border:1px solid var(--public-border);border-radius:9px;background:var(--public-soft);color:var(--public-primary-dark);font-weight:800;padding:10px 14px}@media(max-width:700px){.public-controls{grid-template-columns:1fr 1fr}.public-controls input{grid-column:1/-1}.public-controls button{grid-column:1/-1}}.public-view-switch{display:flex;border:1px solid var(--public-border);border-radius:9px;overflow:hidden;background:#fff}.public-view-switch button{border:0!important;border-radius:0!important;background:#fff!important;color:var(--public-primary-dark)!important;padding:9px 13px!important}.public-view-switch button.active{background:var(--public-soft-strong)!important;background:color-mix(in srgb,var(--public-primary) 14%,white)!important;color:var(--public-primary-dark)!important;border-color:var(--public-primary)!important;font-weight:900}@media(max-width:700px){.public-view-switch{grid-column:1/-1}}.program-load-error{margin:18px 0;padding:18px;border:1px solid #e4b4ae;border-left:5px solid #b33b34;border-radius:9px;background:#fff8f7;color:#6e3a35}.program-load-error button{margin-top:10px;border:1px solid #d6a09a;background:#fff;border-radius:7px;padding:7px 11px;cursor:pointer}.program-toast{
  position:fixed;right:22px;bottom:22px;z-index:9999;
  max-width:420px;padding:11px 14px;border-radius:9px;
  background:#7b3933;color:#fff;font-size:10px;font-weight:800;
  box-shadow:0 10px 28px rgba(0,0,0,.18);
  opacity:0;transform:translateY(8px);pointer-events:none;
  transition:.18s ease;
}.program-toast.show{opacity:1;transform:translateY(0)}.program-toast.success{background:#3f6f3c}.public-controls .public-view-switch{
    grid-column:auto!important;
    display:inline-flex!important;
    width:max-content!important;
    min-width:0!important;
    align-self:center!important;
    justify-self:start!important;
    border:1px solid var(--green-200)!important;
    border-radius:9px!important;
    overflow:hidden!important;
    background:#fff!important;
}.public-controls .public-view-switch button{
    grid-column:auto!important;
    display:inline-flex!important;
    width:auto!important;
    min-width:64px!important;
    height:38px!important;
    align-items:center!important;
    justify-content:center!important;
    margin:0!important;
    padding:8px 13px!important;
    border:0!important;
    border-radius:0!important;
    box-sizing:border-box!important;
}.public-controls .public-view-switch button + button{
    border-left:1px solid var(--green-200)!important;
}.public-controls .public-view-switch button.active{
    background:var(--green-100)!important;
    color:var(--green-800)!important;
}/* V2.0.196: removed obsolete tenant-wide public palette overrides;
   room/day colors now come only from the final --room-* / --day-* rules below. */
.program-subnav{margin:0 0 10px}.program-subnav a{padding:5px 10px;font-size:12px;font-weight:650;background:transparent;border-color:transparent}.program-subnav a.active{background:var(--green-100);border-color:var(--green-200)}.program-page-title .btn,
.program-header-actions .btn{min-height:34px;padding:6px 11px;font-size:12px;border-radius:9px;box-shadow:none}.public-agenda{padding:8px 4px 24px}.public-agenda-header{margin-bottom:10px;gap:12px}.public-agenda-header img,.public-agenda-header .vision-public-mark{width:52px;height:52px}.public-agenda-header h1{font-size:22px}.public-controls.filter-bar,
.public-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;padding:8px 0 10px;border-bottom:1px solid var(--public-border,var(--green-200));background:transparent}.public-controls select,.public-controls input,.public-controls>button{min-height:36px;border-radius:9px;padding:7px 10px;font-size:13px}.public-controls select{width:158px}.public-controls input{flex:1;min-width:180px}.public-controls .public-view-switch{margin-left:auto}.public-controls .public-view-switch button{height:36px;min-height:36px}@media(max-width:860px){.public-controls select{width:calc(50% - 6px)}.public-controls .public-view-switch{margin-left:0}}.program-header-actions{gap:7px;align-items:center}body.is-admin-page .program-page-title{margin-bottom:10px}body.is-admin-page .program-page-title .header-actions .btn,
body.is-admin-page .program-header-actions .btn{
  min-height:36px;
  padding:7px 12px;
  font-size:12px;
  border-radius:9px;
}body.is-admin-page .program-subnav a,
body.is-admin-page .program-subnav a:visited,
body.is-admin-page .program-subnav a:hover,
body.is-admin-page .program-subnav a.active {
  color:#111 !important;
}.public-agenda-loading{min-height:140px;display:flex;align-items:center;justify-content:center;gap:10px}.program-shell .faco-toolbar{background:rgba(250,250,251,.97);border-bottom-color:var(--neutral-200)}.program-shell .faco-toolbar select,.program-shell .faco-toolbar input{border-color:var(--neutral-300);background:#fff}.program-shell .unassigned-bucket{border-color:var(--neutral-300);background:var(--neutral-25)}.program-shell .unassigned-head{background:var(--neutral-50);border-bottom-color:var(--neutral-200)}.program-shell .unassigned-head strong{color:var(--text-main)}.program-shell .unassigned-head span{background:var(--neutral-200);color:var(--neutral-700);font-size:12px;min-width:26px;height:26px}.program-shell .unassigned-head button{border-color:var(--neutral-300);color:var(--text-main)}.program-shell .unassigned-tools{background:var(--neutral-25)}.program-shell .unassigned-tools input{background:#fff;border-color:var(--neutral-300)}.program-shell .visual-chip{font-size:11px;padding:5px 9px;line-height:1.2;font-weight:800}.program-shell .day-chip{min-width:30px;justify-content:center;border-radius:7px}.program-shell .speaker-chip{font-size:12px;padding:5px 9px;line-height:1.2}.program-shell .speaker-chip-link{text-decoration:none;cursor:pointer;transition:filter .12s ease,transform .12s ease}.program-shell .speaker-chip-link:hover{filter:brightness(.96);transform:translateY(-1px);text-decoration:underline}.program-shell .session-visual-tags{gap:7px;margin-bottom:8px}.program-shell .talk-speaker{gap:6px}@media(max-width:1100px){.program-shell .visual-chip{font-size:10px;padding:4px 8px}.program-shell .speaker-chip{font-size:11px;padding:4px 8px}}@media(max-width:760px){.program-shell .visual-chip,.program-shell .speaker-chip{font-size:10px}}.public-agenda .pub-cal-block .pub-grid-session-head{padding:7px 9px;gap:3px}.public-agenda .pub-cal-block .pub-grid-session-head strong{font-size:clamp(11px,.82vw,13px);line-height:1.24;-webkit-line-clamp:4}.public-agenda .pub-grid-time{font-size:clamp(10px,.74vw,12px);line-height:1.15}.public-agenda .pub-grid-session-head small{font-size:clamp(9px,.64vw,11px);line-height:1.15}@media(max-width:700px){.public-agenda .pub-cal-block .pub-grid-session-head strong{font-size:11px}.public-agenda .pub-grid-time{font-size:10px}.public-agenda .pub-grid-session-head small{font-size:9px}}

/* V2.0.187 — public agenda standalone base. Public pages no longer need style.css. */
:root{
  --font-sans:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --green-50:#f5fbf5;--green-100:#ecf7eb;--green-200:#d8edd2;--green-300:#bfe1b2;
  --green-400:#95c86d;--green-500:#8cc63e;--green-600:#6f9d34;--green-700:#4d8a3d;--green-800:#2f5130;
  --text-main:#20242a;--text-soft:#667085;--border:var(--green-200);--white:#fff;
  --neutral-25:#fcfcfd;--neutral-50:#f8f9fb;--neutral-200:#e4e7ec;--neutral-300:#d0d5dd;--neutral-700:#344054;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body.public-agenda-page{font-family:var(--font-sans);background:#f4f5f6;color:var(--text-main)}
.public-agenda-topbar{max-width:1200px;margin:0 auto;padding:10px 20px 0;display:flex;justify-content:flex-end}
.public-language-links{display:flex;gap:6px;align-items:center}
.public-language-links a{display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:38px;padding:7px 9px;border:1px solid #d7dce1;border-radius:8px;background:#fff;color:var(--tenant-primary,var(--tenant-accent,#374151));text-decoration:none;font-size:12px;font-weight:800}
.public-language-links a.active{background:#eef0f2;border-color:var(--tenant-accent,#aab2b9);color:var(--tenant-primary,var(--tenant-accent,#374151))}
.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:9px;padding:8px 13px;font-size:13px;font-weight:800;cursor:pointer;text-decoration:none}
.btn-secondary{background:#fff;border:1px solid var(--green-200);color:var(--green-800)}
button,input,select{font:inherit}
button{cursor:pointer}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--green-400);outline-offset:2px}
[hidden]{display:none!important}
.empty{text-align:center;color:var(--text-soft);padding:48px 18px}
.loading-spinner{width:18px;height:18px;border:2px solid #e4e7ec;border-top-color:var(--public-primary,var(--green-700));border-radius:50%;display:inline-block;animation:vep-spin .8s linear infinite}
@keyframes vep-spin{to{transform:rotate(360deg)}}
mark{background:#fff1a8;color:inherit;border-radius:2px;padding:0 1px}
.vision-public-mark{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:12px;background:var(--green-800);color:#fff;font-weight:900;font-size:24px}
.public-agenda-status{min-height:22px;margin:-6px 0 8px;color:var(--text-soft);font-size:12px}
.public-agenda-status.loading{display:flex;align-items:center;gap:8px}
.public-agenda-status.loading::before{content:"";width:13px;height:13px;border:2px solid #dce3da;border-top-color:var(--public-primary);border-radius:50%;animation:vep-spin .8s linear infinite}
.public-filter-field{display:flex;flex-direction:column;gap:4px;min-width:0}
.public-filter-field>span{font-size:12px;line-height:1;font-weight:800;color:var(--text-soft);padding-left:2px}
.public-search-field{flex:1;min-width:220px}
.public-controls .public-filter-field select,.public-controls .public-filter-field input{width:100%;min-width:0}

/* Public agenda list: copied from the old shared bundle so the public layout is self-contained. */
.public-embed{max-width:none;padding:10px;background:#fff}.public-embed-header{padding:8px 0 2px}
.pub-session{border:1px solid var(--public-border);border-radius:11px;overflow:hidden;margin-bottom:13px;background:var(--room-soft,#fff)}
.pub-session-head{display:flex;justify-content:space-between;gap:12px;padding:11px 13px;background:var(--room-soft,var(--public-soft-strong));border-left:5px solid var(--room-border,var(--public-accent))}
.pub-session-head strong{font-size:14px;color:var(--room-text,var(--public-primary-dark))}.pub-session-head div div{font-size:11px;color:#667064;margin-top:3px}.pub-session-head>span{font-size:12px;font-weight:900;color:var(--room-text,var(--public-primary));white-space:nowrap}
.pub-session-people{display:flex;gap:12px;flex-wrap:wrap;padding:8px 13px;border-top:1px solid var(--public-border-soft);font-size:11px;color:#5f675d}
.pub-talk{display:grid;grid-template-columns:70px 1fr;gap:10px;padding:10px 13px;border-top:1px solid var(--public-border-soft)}.pub-time{font-weight:900;color:var(--public-primary)}.pub-talk-title{font-size:13px;font-weight:700}
.pub-speakers{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.pub-speaker{display:inline-flex;align-items:center;gap:5px;text-decoration:none;color:var(--public-primary);font-size:11px;font-weight:700;background:var(--public-soft);border-radius:999px;padding:3px 7px 3px 3px}.pub-speaker img,.pub-avatar-fallback{width:23px;height:23px;border-radius:50%;object-fit:cover}.pub-avatar-fallback{display:inline-flex;align-items:center;justify-content:center;background:var(--public-border);font-size:8px}
.pub-talk-tags{margin:4px 0}.pub-session-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:5px}
.program-tag-chip{display:inline-flex;align-items:center;padding:3px 8px;border-radius:999px;background:var(--tag-color,#dceaf7);border:1px solid rgba(0,0,0,.12);font-size:11px;line-height:1.3;color:#263238;margin:2px 3px 2px 0}
.visual-chip{display:inline-flex;align-items:center;white-space:nowrap;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:850;line-height:1.15}
/* These final palette rules deliberately override the older tenant-wide agenda overrides. */
.public-agenda .room-chip{background:var(--room-bg,#e7f3e3)!important;border:1px solid var(--room-border,#6fa35c)!important;color:var(--room-text,#234d21)!important;box-shadow:inset 3px 0 0 var(--room-border,#6fa35c)!important}
.public-agenda .day-chip{background:var(--day-bg,#e4f0fb)!important;border:1px solid var(--day-border,#84acd2)!important;color:var(--day-text,#315d80)!important;border-radius:6px}

/* Public agenda calendar */
.pub-grid-day{margin-bottom:20px}.pub-grid-day-title{font-size:13px;font-weight:900;margin:0 0 7px}
.public-agenda .visual-day-title{background:var(--day-bg,#e4f0fb)!important;border-left:4px solid var(--day-border,#84acd2)!important;color:var(--day-text,#315d80)!important;padding:7px 10px!important;border-radius:7px}
.pub-grid-columns{display:grid;grid-template-columns:repeat(var(--public-room-count),minmax(220px,1fr));gap:9px;align-items:start;overflow-x:auto;padding-bottom:5px}
.pub-cal{--pub-room-head-height:48px;display:grid;grid-template-columns:52px minmax(0,1fr);gap:8px;align-items:start;overflow-x:auto}.pub-cal-gutter{position:sticky;left:0;z-index:3;min-width:52px;background:#f8faf8}.pub-cal-gutter-head{height:var(--pub-room-head-height);box-sizing:border-box}.pub-cal-track{position:relative;height:var(--pub-cal-height,240px);min-height:80px}.pub-cal-tick{position:absolute;left:0;right:0;transform:translateY(-50%);font-size:11px;font-weight:800;color:#6f7d6c;white-space:nowrap}.pub-cal-tick::after{content:"";position:absolute;left:44px;width:200vw;top:50%;border-top:1px dashed rgba(148,163,144,.32);pointer-events:none}
.pub-cal-columns{overflow:visible;align-items:stretch}.public-agenda .pub-cal-room{overflow:visible;display:flex;flex-direction:column;background:var(--room-soft,#f4faf2)!important;border:1px solid var(--room-border,var(--public-border))!important;border-radius:10px;min-width:220px}.pub-cal-room .pub-cal-track{background-image:linear-gradient(to bottom,rgba(148,163,144,.2) 1px,transparent 1px);background-size:100% 48px}.pub-cal-block{position:absolute;left:5px;right:5px}.public-agenda .pub-cal-block .pub-grid-session{margin:0;height:100%;display:flex;flex-direction:column;overflow:hidden;background:var(--room-soft,#fff)!important;border-color:var(--room-border,var(--public-border))!important;border-left:4px solid var(--room-border,var(--public-accent))!important}.public-agenda .pub-cal-block .pub-grid-session-head{padding:6px 8px;gap:2px;align-content:start;background:transparent!important;color:var(--room-text,var(--public-primary-dark))!important}.public-agenda .pub-cal-block .pub-grid-session-head strong{overflow:hidden;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;color:var(--room-text,var(--public-primary-dark))!important}
.public-agenda .visual-room-head{background:var(--room-bg,#e7f3e3)!important;color:var(--room-text,var(--public-primary-dark))!important;border-color:var(--room-border,var(--public-border))!important}.pub-grid-room-head{height:var(--pub-room-head-height,48px);min-height:var(--pub-room-head-height,48px);box-sizing:border-box;font-size:12px;font-weight:900;text-align:center;padding:6px 9px;border-bottom:1px solid var(--room-border,var(--public-border));position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:center;line-height:1.2;overflow:hidden}.pub-grid-room-head .pub-room-head-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:100%;word-break:normal;overflow-wrap:anywhere}.pub-grid-session{border:1px solid var(--public-border);border-radius:8px;background:#fff;overflow:hidden}.pub-grid-session-head{width:100%;border:0;text-align:left;padding:9px;display:grid;gap:4px;color:inherit;cursor:pointer}.pub-grid-session-head strong{font-size:11px;line-height:1.25}.pub-grid-session-head small{font-size:9px;color:var(--text-soft)}.pub-grid-time{font-size:10px;font-weight:900;color:var(--room-text,var(--public-primary))}.pub-grid-session.is-break,.pub-cal-block .pub-grid-session.is-break{background:#faf7f0!important;border-color:#c4b089!important;border-left-color:#c4b089!important}
.pub-cal-columns{grid-template-columns:repeat(var(--public-room-count),minmax(200px,1fr))}

/* Drawer */
.pa-drawer-backdrop{position:fixed;inset:0;background:rgba(22,42,24,.28);z-index:40}.pa-drawer{position:fixed;top:0;right:0;bottom:0;width:min(420px,100vw);z-index:41;background:#fff;border-left:4px solid var(--green-400);box-shadow:-16px 0 40px rgba(20,40,20,.18);display:flex;flex-direction:column}.pa-drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 16px 12px;border-bottom:1px solid var(--green-100)}.pa-drawer-head strong{display:block;font-size:16px;line-height:1.3;color:var(--green-800);margin:4px 0 8px}.pa-drawer-time{font-size:12px;font-weight:800;color:var(--green-700)}.pa-drawer-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.pa-drawer-close{border:1px solid #d2e0ce;background:#f7fbf5;width:36px;height:36px;border-radius:10px;font-size:22px;line-height:1;cursor:pointer;color:var(--green-800);flex:0 0 auto}.pa-drawer-body{overflow:auto;padding:8px 12px 24px}.pa-drawer-body .pub-talk{grid-template-columns:64px 1fr}.pa-drawer-pdf{margin-top:6px}#paPdf{min-height:36px;padding:7px 12px}body.pa-drawer-open{overflow:hidden}
.pub-session.public-deeplink-session{outline:3px solid var(--public-accent);outline-offset:3px;scroll-margin-top:20px}.pub-talk.public-deeplink-talk{background:var(--public-soft-strong);box-shadow:inset 5px 0 0 var(--public-accent);animation:publicTalkPulse 1.2s ease 2}@keyframes publicTalkPulse{0%,100%{filter:none}50%{filter:brightness(.96)}}

@media(max-width:860px){.public-controls .public-filter-field{width:calc(50% - 6px)}.public-search-field{width:100%!important;flex-basis:100%}.public-controls .public-view-switch{margin-left:0}}
@media(max-width:700px){.public-agenda{padding:8px 12px 24px}.public-agenda-topbar{padding:8px 12px 0}.public-controls .public-filter-field{width:100%}.pub-talk{grid-template-columns:55px 1fr}.pub-grid-columns{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(250px,86vw)}}
@media(max-width:720px){.pa-drawer{width:100vw;border-left:0;border-top:4px solid var(--green-400);top:12vh;border-radius:16px 16px 0 0}}

/* v2.0.191 program template inline-style extraction */
.presentation-check{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-left:7px;border-radius:50%;background:#25863b;color:#fff;font-size:12px;font-weight:900;vertical-align:middle}
.presentation-check-link{text-decoration:none;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}.presentation-check-link:hover{transform:scale(1.12);box-shadow:0 1px 4px rgba(37,134,59,.35)}


/* V2.0.196 public agenda accessibility polish */
.public-view-switch button[aria-pressed="true"]{font-weight:900}
#paResults[aria-busy="true"]{opacity:.72;transition:opacity .12s ease}
.public-filter-field>span{min-height:14px}
@media(max-width:700px){
  .public-controls select,.public-controls input,.public-controls>button{min-height:42px}
  .public-controls .public-view-switch button{min-height:42px;height:42px}
}
