.dpl-shell{--navy:#061a38;--blue:#0b5bd3;--red:#ee2033;--green:#12a85a;max-width:1180px;margin:32px auto;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#0b1c36}.dpl-brand{display:flex;align-items:center;gap:18px;margin-bottom:22px}.dpl-brand img{width:76px;height:76px;object-fit:contain}.dpl-brand h2{font-size:32px;margin:0}.dpl-brand h2 em{color:var(--red);font-style:italic}.dpl-brand p{margin:4px 0;color:#5f6e83}.dpl-event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.dpl-event-card,.dpl-card{background:#fff;border:1px solid #e0e7f0;border-radius:16px;padding:20px;box-shadow:0 8px 30px rgba(13,38,73,.06)}.dpl-event-card img,.dpl-banner{width:100%;aspect-ratio:16/7;object-fit:cover;border-radius:12px}.dpl-event-card h3{font-size:21px;margin:14px 0 6px}.dpl-status{display:inline-block;padding:5px 9px;border-radius:999px;background:#edf3fb;color:#24518c;font-size:12px;font-weight:800;letter-spacing:.04em}.dpl-live{background:#ffe7ea;color:#c60d25}.dpl-replay{background:#e5f7ec;color:#087b3e}.dpl-cancelled{background:#f3f3f3;color:#666}.dpl-meta{color:#65748a;font-size:14px;margin:10px 0}.dpl-button{display:inline-block;border:0;border-radius:9px;background:var(--blue);color:#fff!important;text-decoration:none;padding:11px 17px;font-weight:700;cursor:pointer}.dpl-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:22px}.dpl-layout aside .dpl-card{margin-bottom:18px}.dpl-description{font-size:17px;line-height:1.65}.dpl-video{position:relative;padding-top:56.25%;background:#020812;border-radius:14px;overflow:hidden;margin:18px 0}.dpl-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.dpl-event input,.dpl-event textarea{width:100%;box-sizing:border-box;border:1px solid #ccd7e5;border-radius:9px;padding:11px;margin:6px 0}.dpl-feedback{font-size:14px;color:#31547a}.dpl-reactions{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.dpl-reactions button,.dpl-poll button{border:1px solid #d5dfeb;background:#fff;border-radius:999px;padding:9px 13px;cursor:pointer;margin:4px}.dpl-continue a{display:block;padding:10px 0;border-bottom:1px solid #e9eef4;text-decoration:none}.dpl-notice{padding:16px;background:#f6f8fb;border-radius:10px}blockquote{margin:12px 0;padding:12px;border-left:3px solid #0b5bd3;background:#f7faff}blockquote p{margin:0 0 5px}blockquote cite{color:#6c7788;font-size:12px}@media(max-width:850px){.dpl-event-grid,.dpl-layout{grid-template-columns:1fr}.dpl-brand h2{font-size:26px}}
.dpl-event-headline{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:18px 0}.dpl-countdown{min-width:190px;padding:12px 16px;border-radius:12px;background:#f2f7ff;border:1px solid #dce8fa;text-align:right}.dpl-countdown small{display:block;color:#63748a}.dpl-countdown strong{font-size:18px;color:#0b5bd3}.dpl-calendar-actions{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}.dpl-link-button{display:inline-block;padding:8px 12px;border:1px solid #cdd9e8;border-radius:8px;text-decoration:none;background:#fff;color:#154a8b}.dpl-register-card,.dpl-join-card,.dpl-registered{margin:18px 0}.dpl-registered{border-color:#bfe8cd;background:#f3fcf6}.dpl-registered strong{color:#087b3e}.dpl-join-card{border-color:#bfd6f6;background:#f7faff}.dpl-join-success{text-align:center}.dpl-feedback.is-error{color:#b42318}.dpl-feedback.is-success{color:#087b3e}.dpl-error{background:#fff0f1;color:#9f1424}.dpl-event hr{border:0;border-top:1px solid #e6ecf3;margin:16px 0}.dpl-button:disabled{opacity:.6;cursor:not-allowed}@media(max-width:700px){.dpl-event-headline{align-items:flex-start;flex-direction:column}.dpl-countdown{width:100%;box-sizing:border-box;text-align:left}}


/* v1.3.0 global public entry: intentionally independent of the active theme/menu. */
.dpl-global-live-entry{
    position:fixed; right:22px; top:84px; z-index:999999;
    display:inline-flex; align-items:center; gap:8px;
    min-height:42px; padding:0 17px;
    border:1px solid #d8e1ef; border-radius:999px;
    background:#fff; color:#10213b !important;
    box-shadow:0 8px 28px rgba(15,35,65,.14);
    font:700 13px/1.1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    letter-spacing:.03em; text-decoration:none !important;
}
.dpl-global-live-entry:hover{transform:translateY(-1px);box-shadow:0 10px 30px rgba(15,35,65,.2)}
.dpl-global-live-dot{width:9px;height:9px;border-radius:50%;background:#3158d8;flex:0 0 auto}
.dpl-global-live-entry.is-soon{border-color:#f3c86a}
.dpl-global-live-entry.is-soon .dpl-global-live-dot{background:#e39a00}
.dpl-global-live-entry.is-live{background:#e51d35;color:#fff !important;border-color:#e51d35}
.dpl-global-live-entry.is-live .dpl-global-live-dot{background:#fff;box-shadow:0 0 0 0 rgba(255,255,255,.65);animation:dpl-live-pulse 1.4s infinite}
@keyframes dpl-live-pulse{70%{box-shadow:0 0 0 8px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}
@media(max-width:782px){
  .dpl-global-live-entry{right:12px;top:auto;bottom:18px;min-height:46px;padding:0 16px}
}

/* v1.4 access flow */
.dpl-access-choice{max-width:620px}
.dpl-access-choice input{display:block;width:100%;box-sizing:border-box;margin:10px 0;padding:12px 14px;border:1px solid #d9e2ef;border-radius:10px}
.dpl-access-choice hr{margin:22px 0;border:0;border-top:1px solid #e6ebf3}
.dpl-member-actions{display:flex;gap:10px;flex-wrap:wrap}
.dpl-register-card .dpl-button,.dpl-access-choice .dpl-button{min-width:180px;color:#fff!important;background:#3158d8!important;border-color:#3158d8!important}


/* v1.5.0 simplified member / guest entry */
.dpl-global-live-entry{cursor:pointer}
.dpl-modal-open{overflow:hidden}
.dpl-access-modal[hidden]{display:none!important}
.dpl-access-modal{position:fixed;inset:0;z-index:2147483500;display:grid;place-items:center;padding:20px}
.dpl-access-backdrop{position:absolute;inset:0;background:rgba(7,22,46,.58);backdrop-filter:blur(3px)}
.dpl-access-dialog{position:relative;width:min(560px,calc(100vw - 32px));background:#fff;border-radius:22px;padding:28px;box-shadow:0 30px 80px rgba(5,20,45,.28);color:#10213b}
.dpl-access-close{position:absolute;right:14px;top:12px;border:0;background:transparent;font-size:30px;line-height:1;cursor:pointer;color:#607089}
.dpl-access-logo{width:72px;height:72px;object-fit:contain;display:block;margin:0 auto 10px}
.dpl-access-dialog h2{text-align:center;margin:4px 0 6px}
.dpl-access-lead{text-align:center;color:#66758d;margin:0 0 20px}
.dpl-access-role-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0 20px}
.dpl-access-role{display:flex;flex-direction:column;gap:5px;border:1px solid #dce5f2;border-radius:15px;padding:18px;text-decoration:none!important;color:#10213b!important;background:#f8faff}
.dpl-access-role:hover{border-color:#3158d8;transform:translateY(-1px)}
.dpl-access-role strong{font-size:17px}
.dpl-access-role span{font-size:13px;color:#607089}
.dpl-role-teacher{border-left:4px solid #3158d8}
.dpl-role-learner{border-left:4px solid #00a974}
.dpl-guest-invite-box{margin-top:14px;padding:18px;border-radius:15px;background:#f7f9fc;border:1px solid #e1e8f2}
.dpl-guest-invite-box h3,.dpl-guest-invite-box h4{margin:0 0 6px}
.dpl-guest-invite-box input{width:100%;box-sizing:border-box;padding:12px 14px;margin:10px 0;border:1px solid #d9e2ef;border-radius:10px}
.dpl-access-main{display:block;text-align:center;margin:18px auto 0;max-width:260px}
.dpl-banner{display:block;width:100%;max-height:420px;object-fit:cover;object-position:center;border-radius:18px}
.dpl-access-choice .dpl-access-role-grid{max-width:660px}
.dpl-access-choice .dpl-guest-invite-box{max-width:660px}
@media(max-width:620px){
  .dpl-access-dialog{padding:24px 18px}
  .dpl-access-role-grid{grid-template-columns:1fr}
  .dpl-banner{max-height:260px}
}

/* v1.6.1: public red LIVE NOW is status-only; signed-in members use a separate Live action. */
.dpl-live-status-only{cursor:default;pointer-events:none;user-select:none}
.dpl-live-status-only:hover{transform:none}
.dpl-member-live-entry{
  position:fixed;right:18px;top:50%;z-index:99990;transform:translateY(-50%);
  display:inline-flex;align-items:center;gap:9px;min-height:48px;padding:0 18px;
  border:1px solid #cbd8ea;border-radius:999px;background:#0b5bd3;color:#fff!important;
  text-decoration:none;font-weight:800;letter-spacing:.01em;box-shadow:0 8px 24px rgba(15,35,65,.18)
}
.dpl-member-live-entry:hover{background:#084cae;color:#fff!important;transform:translateY(calc(-50% - 1px))}
.dpl-member-live-icon{font-size:12px;line-height:1}
@media(max-width:700px){.dpl-member-live-entry{right:12px;top:auto;bottom:18px;transform:none;min-height:46px;padding:0 16px}.dpl-member-live-entry:hover{transform:translateY(-1px)}}

/* v1.6.2: keep DistancePractice Live actions legible against theme button overrides. */
.dpl-shell .dpl-button{background:#0b5bd3!important;color:#fff!important;border:0!important;opacity:1!important;visibility:visible!important;}
.dpl-shell .dpl-button:hover,.dpl-shell .dpl-button:focus{color:#fff!important;text-decoration:none!important;}

/* v1.6.3: harden Join/Live action contrast against aggressive theme button rules. */
.dpl-shell button.dpl-button,
.dpl-shell a.dpl-button,
.dpl-shell input.dpl-button,
.dpl-shell .dpl-join,
.dpl-shell .dpl-submit-question,
.dpl-shell .dpl-event-invite-submit {
  background-color:#0b5bd3!important;
  background-image:none!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  border:1px solid #0b5bd3!important;
  text-shadow:none!important;
  box-shadow:none;
  opacity:1!important;
  filter:none!important;
}
.dpl-shell button.dpl-button:hover,
.dpl-shell button.dpl-button:focus,
.dpl-shell a.dpl-button:hover,
.dpl-shell a.dpl-button:focus,
.dpl-shell .dpl-join:hover,
.dpl-shell .dpl-join:focus,
.dpl-shell .dpl-submit-question:hover,
.dpl-shell .dpl-submit-question:focus,
.dpl-shell .dpl-event-invite-submit:hover,
.dpl-shell .dpl-event-invite-submit:focus {
  background-color:#084cae!important;
  background-image:none!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  border-color:#084cae!important;
}

/* Controlled interaction layer */
.dpl-live-announcement{display:flex;gap:10px;align-items:center;margin:16px 0;padding:12px 14px;border:1px solid #f2c94c;border-radius:10px;background:#fff8dd;color:#3d3210}
.dpl-live-announcement[hidden]{display:none!important}.dpl-live-announcement strong{white-space:nowrap}.dpl-reactions{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.dpl-reactions button{border:1px solid #ccd8e8;background:#fff;color:#153b68;border-radius:999px;padding:8px 12px;cursor:pointer}.dpl-reactions button:hover,.dpl-reactions button:focus{background:#eef5ff}.dpl-reactions button span{display:inline-block;min-width:1.5em;font-weight:700}.dpl-poll-options{display:grid;gap:8px}.dpl-poll-options button{width:100%;text-align:left;border:1px solid #bfd0e5;border-radius:9px;background:#fff;color:#153b68;padding:10px 12px;cursor:pointer}.dpl-poll-options button:hover,.dpl-poll-options button:focus{background:#eef5ff}.dpl-poll-options button:disabled{opacity:.65;cursor:not-allowed}.dpl-poll-results p{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #e6ecf3;padding:8px 0;margin:0}.dpl-poll-results p:last-child{border-bottom:0}.dpl-poll-closed{color:#63748a}.dpl-approved-questions blockquote{margin:0 0 12px;padding:10px 12px;border-left:3px solid #0b5bd3;background:#f7faff}.dpl-approved-questions cite{font-size:12px;color:#63748a}

/* v1.7.1: audience-aware homepage information logo and member top-banner LIVE control. */
.dpl-home-live-info{
  position:fixed;
  right:22px;
  top:76px;
  z-index:999999;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  width:86px;
  padding:9px 8px 8px;
  box-sizing:border-box;
  border:1px solid rgba(14,74,151,.14);
  border-radius:16px;
  background:rgba(255,255,255,.96);
  box-shadow:0 10px 28px rgba(15,35,65,.15);
  pointer-events:none;
  user-select:none;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.dpl-home-live-logo{
  display:block;
  width:58px!important;
  height:auto!important;
  max-width:58px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  box-shadow:none!important;
  object-fit:contain;
}
.dpl-home-live-audience{
  display:block;
  margin-top:3px;
  color:#d7192d;
  font-size:11px;
  line-height:1;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  animation:dpl-audience-blink 1.2s ease-in-out infinite;
}
@keyframes dpl-audience-blink{0%,100%{opacity:1}50%{opacity:.18}}

.dpl-member-live-entry{
  position:fixed;
  right:22px;
  top:76px;
  z-index:999999;
  transform:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-width:82px;
  min-height:40px;
  padding:0 16px;
  box-sizing:border-box;
  border:1px solid #c41226!important;
  border-radius:9px;
  background:#df1f33!important;
  background-image:none!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-decoration:none!important;
  font:900 13px/1 Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:.08em;
  box-shadow:0 7px 20px rgba(177,19,39,.28);
  transition:background-color .15s ease,box-shadow .15s ease,transform .15s ease;
}
.dpl-member-live-entry:hover,.dpl-member-live-entry:focus{
  transform:translateY(-1px);
  background:#c8172a!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-shadow:0 9px 24px rgba(177,19,39,.34);
  text-decoration:none!important;
}
.dpl-member-live-dot{
  width:8px;
  height:8px;
  flex:0 0 8px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 0 rgba(255,255,255,.7);
  animation:dpl-live-pulse 1.4s infinite;
}
@media(max-width:782px){
  .dpl-home-live-info{right:12px;top:64px;width:78px;padding:8px 6px 7px}
  .dpl-home-live-logo{width:52px!important;max-width:52px!important}
  .dpl-member-live-entry{right:12px;top:64px;bottom:auto;min-width:78px;min-height:40px;padding:0 14px;transform:none}
  .dpl-member-live-entry:hover,.dpl-member-live-entry:focus{transform:translateY(-1px)}
}

/* v1.7.2: clickable homepage DP Live logo opens a two-page member information booklet. */
button.dpl-home-live-info{
  appearance:none;
  -webkit-appearance:none;
  cursor:pointer;
  pointer-events:auto;
  color:inherit;
  font:inherit;
  text-align:center;
}
button.dpl-home-live-info:hover,button.dpl-home-live-info:focus-visible{
  transform:translateY(-2px);
  border-color:rgba(14,74,151,.35);
  box-shadow:0 14px 34px rgba(15,35,65,.22);
  outline:none;
}
button.dpl-home-live-info:focus-visible{box-shadow:0 0 0 3px rgba(11,91,211,.18),0 14px 34px rgba(15,35,65,.22)}
.dpl-live-booklet[hidden]{display:none!important}
.dpl-live-booklet{position:fixed;inset:0;z-index:2147483600;display:grid;place-items:center;padding:24px;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.dpl-live-booklet-backdrop{position:absolute;inset:0;background:rgba(5,17,38,.66);backdrop-filter:blur(4px)}
.dpl-live-booklet-dialog{position:relative;width:min(760px,calc(100vw - 36px));box-sizing:border-box;padding:30px;border:1px solid #dbe5f1;border-radius:24px;background:#fff;color:#10213b;box-shadow:0 32px 90px rgba(4,18,42,.34)}
.dpl-live-booklet-close{position:absolute;right:14px;top:12px;width:40px;height:40px;border:0;border-radius:50%;background:#f2f5f9;color:#52647b;font:400 28px/36px Arial,sans-serif;cursor:pointer}
.dpl-live-booklet-close:hover,.dpl-live-booklet-close:focus-visible{background:#e6edf6;color:#10213b;outline:2px solid #9bbce8;outline-offset:2px}
.dpl-live-booklet-heading{display:flex;align-items:center;gap:18px;padding:0 44px 22px 0}
.dpl-live-booklet-heading img{width:72px!important;height:72px!important;max-width:72px!important;object-fit:contain;margin:0!important}
.dpl-live-booklet-heading h2{margin:0 0 5px;font-size:27px;line-height:1.15;color:#10213b}
.dpl-live-booklet-heading p{margin:0;color:#62738a;line-height:1.5}
.dpl-live-booklet-pages{position:relative;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border:1px solid #dce5f0;border-radius:18px;background:#f8fafd;box-shadow:inset 0 1px 0 #fff}
.dpl-live-booklet-pages:after{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;background:#d7e1ed;box-shadow:0 0 18px rgba(25,55,90,.18);pointer-events:none}
.dpl-live-booklet-page{position:relative;display:flex;min-height:210px;box-sizing:border-box;flex-direction:column;justify-content:center;align-items:flex-start;padding:30px;text-decoration:none!important;color:#10213b!important;transition:background .15s ease,transform .15s ease}
.dpl-live-booklet-page:hover,.dpl-live-booklet-page:focus-visible{background:#fff;outline:none}
.dpl-live-booklet-page strong{display:block;margin:3px 0 10px;font-size:30px;line-height:1.05;color:#10213b}
.dpl-live-booklet-page>span:not(.dpl-live-booklet-kicker){color:#607089;font-size:14px}
.dpl-live-booklet-kicker{font-size:12px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.dpl-live-booklet-teachers .dpl-live-booklet-kicker{color:#0b5bd3}
.dpl-live-booklet-learners .dpl-live-booklet-kicker{color:#07985b}
.dpl-live-booklet-page b{position:absolute;right:28px;bottom:25px;width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:#edf4ff;color:#0b5bd3;font-size:19px}
.dpl-live-booklet-learners b{background:#eaf8f1;color:#07834f}
.dpl-live-booklet-note{margin:18px 2px 0;color:#6a788b;font-size:13px;line-height:1.5;text-align:center}
body.dpl-booklet-open{overflow:hidden}
@media(max-width:640px){
  .dpl-live-booklet{padding:12px}
  .dpl-live-booklet-dialog{width:min(100%,520px);padding:22px 16px 18px;border-radius:19px}
  .dpl-live-booklet-heading{align-items:flex-start;padding-right:42px}
  .dpl-live-booklet-heading img{width:58px!important;height:58px!important;max-width:58px!important}
  .dpl-live-booklet-heading h2{font-size:22px}
  .dpl-live-booklet-pages{grid-template-columns:1fr}
  .dpl-live-booklet-pages:after{left:0;right:0;top:50%;bottom:auto;width:auto;height:1px}
  .dpl-live-booklet-page{min-height:150px;padding:23px}
  .dpl-live-booklet-page strong{font-size:25px}
}
