/* Let's Dance calendar */
.ldc-cal{--ink:#1E1226;--soft:#5B4A66;--line:#E6D6E0;--grid:#F2E6EE;--surface:#F7ECF2;--off:#F7EFF4;--offline:#EADBE4;--magenta:#C2185B;--violet:#6A1B9A;
	--class-bg:#EFE3F6;--class-line:#CDB4DE;--class-ink:#3E0F5E;--fest-bg:#FFE2CC;--fest-line:#F2B58A;--fest-ink:#5C2600;
	color:var(--ink);font-size:15px;line-height:1.4;max-width:1640px;margin:0 auto}
.ldc-cal *{box-sizing:border-box}
.ldc-cal button{font-family:inherit}
.ldc-cal__loading,.ldc-msg{padding:2rem 0;color:var(--soft)}

/* Head */
.ldc-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;margin:0 0 14px}
.ldc-nav,.ldc-head__right,.ldc-views{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ldc-range{margin:0 0 0 8px;font-size:24px;line-height:1.15;font-weight:800;font-family:var(--wp--preset--font-family--display,inherit)}
.ldc-iconbtn{width:44px;height:44px;border-radius:999px;border:1px solid var(--line);background:#fff;font-size:22px !important;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.ldc-iconbtn:hover,.ldc-pill:hover{border-color:var(--magenta)}
.ldc-pill{border:1px solid var(--line);background:#fff;color:var(--ink);font-size:14px;padding:8px 16px;border-radius:999px;min-height:40px;cursor:pointer;font-weight:500}
.ldc-pill.is-on{background:var(--violet);border-color:var(--violet);color:#fff !important;font-weight:700}
.ldc-views{background:var(--surface);border-radius:999px;padding:3px}
.ldc-views .ldc-pill{border-color:transparent;background:transparent}
.ldc-views .ldc-pill.is-on{background:var(--violet)}
.ldc-signin{color:var(--ink);font-weight:600;text-decoration:none;padding:8px 10px}
.ldc-signin:hover{color:var(--magenta)}
.ldc-add{display:inline-flex;align-items:center;justify-content:center;background:var(--magenta);color:#fff !important;text-decoration:none;font-weight:800;font-size:18px;
	padding:14px 30px;min-height:56px;border-radius:999px;box-shadow:0 6px 18px rgba(194,24,91,.25)}
.ldc-add:hover{background:var(--violet)}

/* Filters */
.ldc-filters{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px;padding:14px 16px;background:var(--surface);border-radius:16px;margin:0 0 14px}
.ldc-filters__fields{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 14px}
.ldc-field{display:flex;flex-direction:column;gap:4px}
.ldc-field label{font-size:13px;font-weight:700;color:var(--soft)}
.ldc-field select{min-height:40px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:6px 10px;font:inherit;color:var(--ink);max-width:220px}
.ldc-check{display:flex;align-items:center;gap:6px;min-height:40px;font-weight:600}
.ldc-check input{width:18px;height:18px;accent-color:var(--magenta)}
.ldc-link{border:0;background:none;padding:6px 4px;color:var(--magenta) !important;font-weight:600;cursor:pointer;text-decoration:underline;text-align:left}
.ldc-legend{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13px;color:var(--soft)}
.ldc-legend li{display:flex;align-items:center;gap:6px}
.ldc-swatch{width:14px;height:14px;border-radius:4px;display:inline-block}
.ldc-swatch--class{background:var(--class-bg);border:1px solid var(--violet)}
.ldc-swatch--social{background:var(--magenta)}
.ldc-swatch--fest{background:var(--fest-bg);border:1px solid #C2560F}
.ldc-swatch--off{background:#F3E8EF;border:1px solid #D9C4D1}

/* Week grid */
.ldc-count{margin:0 0 8px;font-size:13px;color:var(--soft);font-weight:500}
.ldc-grid{border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden}
.ldc-grid .ldc-count{padding:10px 14px 0}
.ldc-grid__head{display:grid;grid-template-columns:64px repeat(7,minmax(0,1fr));border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5;background:#fff}
.ldc-grid__corner{background:#fff}
.ldc-grid__day{padding:10px 12px;border-left:1px solid var(--line);display:flex;flex-direction:column;gap:2px;background:#fff}
.ldc-grid__day.is-off{background:#F3E8EF}
.ldc-grid__dname{font-weight:800;font-size:15px}
.ldc-grid__day.is-today .ldc-grid__dname{color:var(--magenta)}
.ldc-grid__hol{font-size:11px;font-weight:600;color:var(--soft);line-height:1.2}
.ldc-grid__scroll{max-height:700px;overflow-y:auto;overscroll-behavior:contain}
.ldc-grid__body{display:grid;grid-template-columns:64px repeat(7,minmax(0,1fr));position:relative}
.ldc-grid__hours{position:relative}
.ldc-grid__hours span{position:absolute;right:10px;transform:translateY(-50%);font-size:12px;color:var(--soft)}
.ldc-grid__hours span:first-child{transform:none}
.ldc-grid__col{position:relative;border-left:1px solid var(--line);
	background-image:repeating-linear-gradient(to bottom,var(--grid) 0,var(--grid) 1px,transparent 1px,transparent var(--ldc-hour,60px))}
.ldc-grid__col.is-off{background-color:var(--off);background-image:repeating-linear-gradient(to bottom,var(--offline) 0,var(--offline) 1px,transparent 1px,transparent var(--ldc-hour,60px))}
.ldc-grid__col.is-today{box-shadow:inset 0 3px 0 var(--magenta)}

.ldc-ev{position:absolute;border-radius:10px;padding:0;text-align:left;cursor:pointer;overflow:hidden;
	border:1px solid var(--class-line);background:var(--class-bg);color:var(--class-ink) !important;font-size:12px;line-height:1.25}
.ldc-ev__in{position:absolute;inset:0;padding:5px 8px;display:flex;flex-direction:column;gap:1px;overflow:hidden}
.ldc-ev__in>*{flex-shrink:0}
.ldc-ev.is-narrow .ldc-ev__in{padding:4px 5px}
.ldc-ev:hover,.ldc-ev:focus-visible{box-shadow:0 6px 18px rgba(106,27,154,.25);z-index:3;outline:2px solid var(--violet);outline-offset:0}
.ldc-ev--social{background:var(--magenta);border-color:var(--magenta);color:#fff !important}
.ldc-ev--social:hover,.ldc-ev--social:focus-visible{outline-color:var(--ink)}
.ldc-ev--fest{background:var(--fest-bg);border-color:var(--fest-line);color:var(--fest-ink) !important}
.ldc-ev.is-est{border-bottom:3px dashed currentColor}
.ldc-ev--social.is-est{border-bottom-color:#fff}
.ldc-ev__time{font-weight:500;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ldc-ev__title{font-weight:700;font-size:13px;overflow-wrap:anywhere}
.ldc-ev.is-narrow .ldc-ev__title{font-size:12px}
.ldc-ev__sub{opacity:.85}
.ldc-ev__slots{list-style:none;margin:6px 0 0;padding:6px 0 0;border-top:1px solid rgba(92,38,0,.18);display:flex;flex-direction:column;gap:2px}
.ldc-ev__slots li{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ldc-ev__slots b{font-weight:700}
.ldc-slot{display:block;width:100%;border:0;background:transparent;padding:1px 4px;margin:0 -4px;border-radius:6px;text-align:left;color:inherit !important;font-size:12px !important;line-height:1.3;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:calc(100% + 8px)}
.ldc-slot:hover,.ldc-slot:focus-visible{background:rgba(255,255,255,.75);text-decoration:underline;outline:none}
.ldc-ev__more{opacity:.8}
.ldc-more{position:absolute;z-index:2;border:1px solid var(--line);background:#fff;border-radius:999px;padding:4px 8px;font-size:12px !important;font-weight:700;cursor:pointer;color:var(--violet) !important}
.ldc-empty{position:absolute;left:8px;right:8px;text-align:center;font-size:12px;color:var(--soft);display:flex;flex-direction:column;gap:4px;align-items:center}
.ldc-empty a{color:var(--magenta);font-weight:600}
.ldc-foot{font-size:13px;color:var(--soft);margin:10px 0 0}

/* List and phone */
.ldc-list__day{font-size:17px;font-weight:800;margin:20px 0 8px;padding:0 0 6px;border-bottom:1px solid var(--line)}
.ldc-list__day.is-off{color:var(--violet)}
.ldc-list__day span{font-weight:600;color:var(--soft)}
.ldc-dim{color:var(--soft);font-weight:500}
.ldc-list__items{display:flex;flex-direction:column;gap:8px}
.ldc-card{color:var(--ink);font-size:15px;display:flex;gap:14px;width:100%;text-align:left;background:#fff;border:1px solid var(--line);border-left:6px solid var(--class-line);border-radius:14px;padding:12px 14px;cursor:pointer}
.ldc-card:hover,.ldc-card:focus-visible{border-color:var(--violet);outline:none}
.ldc-card--social{border-left-color:var(--magenta)}
.ldc-card--fest{border-left-color:#F2B58A}
.ldc-card__time{flex:0 0 64px;display:flex;flex-direction:column;font-size:13px;color:var(--soft)}
.ldc-card__time b{font-size:15px;color:var(--ink)}
.ldc-card__body{display:flex;flex-direction:column;gap:2px;min-width:0}
.ldc-card__badges{font-size:12px;font-weight:700;color:var(--violet);display:flex;gap:6px;align-items:center;text-transform:none}
.ldc-badge-free{background:var(--magenta);color:#fff;border-radius:999px;padding:1px 8px;font-size:11px}
.ldc-card__title{font-weight:800;font-size:16px;line-height:1.25}
.ldc-card__meta{font-size:13px;color:var(--soft)}
.ldc-emptybox{text-align:center;padding:28px 16px;border:1px dashed var(--line);border-radius:14px;color:var(--soft)}
.ldc-emptybox p{margin:0 0 6px}
.ldc-emptybox a{color:var(--magenta);font-weight:600}

.ldc-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin:0 0 6px}
.ldc-strip__day{color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:12px;padding:6px 0 4px;display:flex;flex-direction:column;align-items:center;gap:1px;cursor:pointer;min-height:58px}
.ldc-strip__day span{font-size:11px;color:var(--soft)}
.ldc-strip__day b{font-size:17px}
.ldc-strip__day i{width:6px;height:6px;border-radius:50%;background:transparent}
.ldc-strip__day i.has{background:var(--magenta)}
.ldc-strip__day.is-off{background:#F3E8EF}
.ldc-strip__day.is-today b{color:var(--magenta)}
.ldc-strip__day.is-on{background:var(--violet);border-color:var(--violet);color:#fff}
.ldc-strip__day.is-on span,.ldc-strip__day.is-on b{color:#fff}
.ldc-strip__day.is-on i.has{background:#fff}

.ldc-cal.is-phone .ldc-range{font-size:20px;margin:0 0 0 4px}
.ldc-cal.is-phone .ldc-head{flex-direction:column;align-items:stretch}
.ldc-cal.is-phone .ldc-head__right{justify-content:space-between}
.ldc-cal.is-phone .ldc-add{flex:1;font-size:17px;min-height:52px;padding:12px 18px}
.ldc-cal.is-phone .ldc-filters{padding:10px 12px;align-items:center}
.ldc-filters.is-closed .ldc-filters__fields,.ldc-filters.is-closed .ldc-legend{display:none}
.ldc-cal.is-phone .ldc-filters__fields{flex-basis:100%;flex-direction:column;align-items:stretch}
.ldc-cal.is-phone .ldc-field select{max-width:none;width:100%}

/* Dialog */
html.ldc-noscroll{overflow:hidden}
.ldc-dialog,.ldc-dialog *,.ldc-actions,.ldc-actions *{box-sizing:border-box}
.ldc-dialog{position:fixed;inset:0;z-index:100000;background:rgba(30,18,38,.45);display:flex;align-items:center;justify-content:center;padding:20px}
.ldc-dialog__box{position:relative;background:#fff;color:#1E1226;border-radius:18px;box-shadow:0 18px 48px rgba(30,18,38,.3);width:min(600px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:22px 22px 20px;font-size:15px;line-height:1.45}
.ldc-dialog__close{position:absolute;top:10px;right:10px;width:40px;height:40px;border-radius:999px;border:1px solid #E6D6E0;background:#fff;font-size:22px;line-height:1;cursor:pointer;color:#1E1226}
.ldc-dialog__title{font-size:22px;line-height:1.2;margin:4px 44px 6px 0;font-weight:800}
.ldc-pop__badges{display:flex;flex-wrap:wrap;gap:6px;margin:0 44px 6px 0}
.ldc-chip{font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;background:#EFE3F6;color:#3E0F5E}
.ldc-chip--free{background:#C2185B;color:#fff}
.ldc-chip--soft{background:#F7ECF2;color:#5B4A66;font-weight:600}
.ldc-pop--social .ldc-chip:first-child{background:#C2185B;color:#fff}
.ldc-pop--fest .ldc-chip:first-child{background:#FFE2CC;color:#5C2600}
.ldc-pop__by{margin:0 0 12px;color:#5B4A66}
.ldc-pop__by a,.ldc-pop__rows a{color:#C2185B}
.ldc-pop__rows{margin:0 0 12px;display:flex;flex-direction:column;gap:6px}
.ldc-pop__row{display:grid;grid-template-columns:86px 1fr;gap:10px}
.ldc-pop__row dt{font-weight:700;color:#5B4A66;font-size:13px;padding-top:2px}
.ldc-pop__row dd{margin:0}
.ldc-pop__excerpt{margin:0 0 12px}
.ldc-pop__h{font-size:15px;margin:14px 0 6px}
.ldc-pop__sessions{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:2px;max-height:240px;overflow:auto}
.ldc-pop__sessions .ldc-link{color:#1E1226 !important;text-decoration:none;font-weight:400;padding:4px 0}
.ldc-pop__sessions .ldc-link:hover{color:#C2185B !important}
.ldc-pop__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.ldc-btn{display:inline-flex;align-items:center;min-height:44px;font-family:inherit;font-size:15px;line-height:1.2;padding:.5rem 1rem;border-radius:999px;border:1px solid #E6D6E0;background:#fff;color:#1E1226 !important;font-weight:600;text-decoration:none;cursor:pointer;list-style:none}
.ldc-btn::-webkit-details-marker{display:none}
.ldc-btn:hover{border-color:#C2185B;color:#C2185B !important}
.ldc-btn--primary{background:#C2185B;border-color:#C2185B;color:#fff !important}
.ldc-btn--primary:hover{background:#6A1B9A;border-color:#6A1B9A;color:#fff !important}
.ldc-addcal{position:relative}
.ldc-addcal__menu{position:absolute;z-index:5;top:calc(100% + 6px);left:0;min-width:220px;background:#fff;border:1px solid #E6D6E0;border-radius:14px;box-shadow:0 14px 40px rgba(30,18,38,.18);padding:6px;display:flex;flex-direction:column}
.ldc-addcal__menu a{padding:.6rem .8rem;border-radius:10px;color:#1E1226;text-decoration:none}
.ldc-addcal__menu a:hover{background:#F7ECF2}

@media (max-width:760px){
	.ldc-dialog{align-items:flex-end;padding:0}
	.ldc-dialog__box{width:100%;max-height:88vh;border-radius:20px 20px 0 0;padding:20px 16px 24px}
	.ldc-pop__actions .ldc-btn,.ldc-pop__actions .ldc-addcal{flex:1 1 calc(50% - 8px);justify-content:center}
	.ldc-pop__actions .ldc-btn--primary{flex-basis:100%}
	.ldc-pop__actions .ldc-addcal[open]{flex-basis:100%}
	.ldc-pop__actions .ldc-addcal summary{width:100%;justify-content:center}
	.ldc-addcal__menu{position:static;box-shadow:none;margin-top:6px}
}
@media (prefers-reduced-motion:no-preference){.ldc-ev,.ldc-card{transition:box-shadow .15s,border-color .15s}}
.ldc-list{max-width:880px}
.ldc-dialog .ldc-addcal[open]{flex-basis:100%}
.ldc-dialog .ldc-addcal__menu{position:static;box-shadow:none;margin-top:6px}
.ldc-link--inline{padding:0;font-size:inherit !important}

/* Remind me */
.ldc-remind-box{flex-basis:100%;margin-top:14px;padding:16px;border:1px solid #E6D6E0;border-radius:16px;background:#FFFBF7;color:#1E1226;font-size:15px}
.ldc-remind .ldc-pop__h{margin:0 0 10px;font-size:17px}
.ldc-remind__form{display:flex;flex-direction:column;gap:12px}
.ldc-remind__field{display:flex;flex-direction:column;gap:4px}
.ldc-remind__field label,.ldc-remind__when legend{font-weight:700;font-size:14px;color:#5B4A66}
.ldc-remind__field input{min-height:44px;border:1px solid #E6D6E0;border-radius:10px;padding:8px 12px;font:inherit;background:#fff}
.ldc-remind__field small{color:#5B4A66;font-size:13px}
.ldc-remind__when{border:0;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 8px}
.ldc-remind__when legend{margin-bottom:6px;padding:0}
.ldc-remind__opt{display:inline-flex;align-items:center;gap:6px;border:1px solid #E6D6E0;background:#fff;border-radius:999px;padding:8px 14px;cursor:pointer;min-height:40px}
.ldc-remind__opt:has(input:checked){border-color:#6A1B9A;background:#EFE3F6}
.ldc-remind__opt input,.ldc-remind__optin input{accent-color:#C2185B;width:18px;height:18px;flex-shrink:0}
.ldc-remind__optin{display:flex;gap:8px;align-items:flex-start;font-size:14px;color:#5B4A66}
.ldc-remind__who{margin:0}
.ldc-remind__form .ldc-btn--primary{align-self:flex-start}
.ldc-remind__msg{margin:0;font-size:14px}
.ldc-remind__msg:empty{display:none}
.ldc-remind__msg.is-error{color:#B00020;font-weight:600}
.ldc-remind__done p{margin:0;font-weight:600}
.ldc-remind__account{margin-top:16px;padding-top:14px;border-top:1px solid #E6D6E0;font-size:14px}
.ldc-remind__account ul{margin:0 0 10px;padding-left:18px;color:#5B4A66}
.ldc-remind__or{font-weight:800;margin:0 0 6px;font-size:15px}
.ldc-remind__account .ldc-link{font-size:14px}
.ldc-hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;opacity:0}

/* Remind me leads; Add to my calendar is a smaller secondary button */
.ldc-btn--small{min-height:38px;padding:.35rem .9rem;font-size:14px}
.ldc-pop__actions{align-items:center}
.ldc-actions{align-items:center}
.ldc-remind__form .ldc-btn--primary{background:#C2185B}

/* Desktop: compact buttons in popups and on event pages (phones keep 44px touch targets) */
@media (min-width:761px){
	.ldc-pop__actions .ldc-btn,.ldc-actions .ldc-btn,.ldc-remind .ldc-btn{min-height:36px;padding:.35rem .9rem;font-size:14px}
	.ldc-pop__actions,.ldc-actions{gap:6px}
}

/* Multi-select styles */
.ldc-field__label{font-size:13px;font-weight:700;color:var(--soft)}
.ldc-ms{position:relative}
.ldc-ms__btn{list-style:none;min-height:40px;min-width:190px;max-width:260px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:8px 34px 8px 12px;cursor:pointer;position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink)}
.ldc-ms__btn::-webkit-details-marker{display:none}
.ldc-ms__btn::after{content:"";position:absolute;right:13px;top:50%;width:7px;height:7px;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);transform:translateY(-70%) rotate(45deg)}
.ldc-ms.has-value .ldc-ms__btn{border-color:var(--violet);background:#EFE3F6;font-weight:600}
.ldc-ms__pop{position:absolute;z-index:30;top:calc(100% + 6px);left:0;width:300px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 40px rgba(30,18,38,.18);display:flex;flex-direction:column}
.ldc-ms__panel{max-height:340px;overflow:auto;padding:8px 10px}
.ldc-ms__group{padding:4px 0 6px;border-bottom:1px solid #F2E6EE}
.ldc-ms__group:last-child{border-bottom:0}
.ldc-ms__opt{display:flex;align-items:center;gap:8px;padding:5px 4px 5px 26px;border-radius:8px;cursor:pointer;font-size:14px}
.ldc-ms__opt.is-group{padding-left:4px;font-weight:700}
.ldc-ms__opt:hover{background:var(--surface)}
.ldc-ms__opt input{width:17px;height:17px;accent-color:var(--magenta);flex-shrink:0}
.ldc-ms__foot{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border-top:1px solid var(--line)}
.ldc-ms__foot .ldc-pill{min-height:34px;padding:5px 16px}
.ldc-cal.is-phone .ldc-ms__btn{max-width:none;width:100%}
.ldc-cal.is-phone .ldc-ms__pop{position:static;width:auto;margin-top:6px;box-shadow:none}

/* Filters layout: fields left, account link right, key underneath */
.ldc-filters__fields{flex:1 1 auto}
.ldc-prefs{margin:0;align-self:flex-end;font-size:14px;font-weight:600;color:var(--soft);padding-bottom:10px}
.ldc-prefs a{color:var(--magenta)}
.ldc-filters .ldc-legend{flex-basis:100%}
.ldc-cal.is-phone .ldc-prefs{flex-basis:100%;padding:0}
.ldc-filters.is-closed .ldc-prefs{display:none}

/* Past events (organisers only) */
.ldc-ev.is-past,.ldc-card.is-past{opacity:.55}
.ldc-ev.is-past:hover,.ldc-card.is-past:hover{opacity:1}
.ldc-iconbtn:disabled{opacity:.35;cursor:not-allowed;border-color:var(--line)}
.ldc-note--past{flex-basis:100%;margin:0 0 4px;font-weight:600}

/* Other countries */
.ldc-field--btn{justify-content:flex-end;min-height:40px}
.ldc-field--btn .ldc-link{font-size:14px;padding:8px 2px}
.ldc-field select:disabled{color:var(--soft);background:#F7F2F5;cursor:not-allowed}
.ldc-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.ldc-pop__report{margin:14px 0 0;font-size:13px}
.ldc-pop__report a,.ldc-note a{color:#5B4A66}

/* School and festival pages */
.ldc-back{color:var(--magenta);font-weight:700;text-decoration:none;padding:8px 4px}
.ldc-back:hover{text-decoration:underline}
.ldc-subscribe .ldc-addcal__menu{right:0;left:auto;width:260px}
.ldc-addcal__note{margin:4px 8px 6px;font-size:13px;color:#5B4A66;line-height:1.35}
.ldc-addcal__copy{border:0;background:none;text-align:left;padding:.6rem .8rem;border-radius:10px;color:#1E1226;cursor:pointer;font:inherit}
.ldc-addcal__copy:hover{background:#F7ECF2}
.ldc-school{display:flex;gap:20px;align-items:center;margin:0 0 20px;padding:18px 20px;background:#F7ECF2;border-radius:18px}
.ldc-school__logo{width:96px;height:96px;object-fit:contain;border-radius:14px;background:#fff;flex:0 0 96px}
.ldc-school__lede{margin:0 0 8px;font-size:1.05em}
.ldc-school__phone{margin:6px 0 0}
.ldc-school .ldc-links{margin:0}
.ldc-school__h{margin-top:32px}
@media (max-width:600px){.ldc-school{flex-direction:column;align-items:flex-start}}
.ldc-ev__one{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ldc-ev__one .ldc-ev__time{font-weight:500}

/* I'm going / My events */
.ldc-going{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:0 0 12px;padding:10px 12px;border:1px solid #E6D6E0;border-radius:12px;background:#fff}
.ldc-going.is-on{border-color:#6A1B9A;background:#F5EEFA}
.ldc-going__label{display:flex;align-items:center;gap:8px;font-weight:700;cursor:pointer}
.ldc-going__label input{width:20px;height:20px;accent-color:#6A1B9A}
.ldc-going__tag{font-size:12px;font-weight:700;padding:2px 8px;border-radius:999px;background:#EFE3F6;color:#3E0F5E;margin-left:4px}
.ldc-going__tag--main{background:#6A1B9A;color:#fff}
.ldc-going__msg{flex-basis:100%;margin:0;font-size:14px}
.ldc-going__msg:empty{display:none}
.ldc-going__msg.is-error{color:#B00020;font-weight:600}
.ldc-going__choice{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.ldc-going--guest{margin:0 0 12px;font-size:14px;color:#5B4A66}
.ldc-going--guest a{color:#C2185B;font-weight:600}
.ldc-check--mine{font-weight:800;color:#6A1B9A}
.ldc-ev.is-going{box-shadow:inset 0 0 0 2px #6A1B9A}
.ldc-ev--social.is-going{box-shadow:inset 0 0 0 2px #1E1226}
.ldc-ev.is-backup{opacity:.75}
.ldc-card.is-going{border-color:#6A1B9A;background:#FBF7FD}

/* Claim a page, manage a page */
.ldc-claim{max-width:720px}
.ldc-claim__msg{padding:.8rem 1rem;border-radius:12px;background:#F7ECF2;border-left:4px solid #C2185B}
.ldc-claim__form fieldset{border:1px solid #E6D6E0;border-radius:14px;padding:.8rem 1rem;margin:0 0 1rem}
.ldc-claim__form legend{font-weight:700;padding:0 .3rem}
.ldc-claim__plan{display:flex;gap:.5rem;align-items:center;padding:.35rem 0;cursor:pointer}
.ldc-claim__plan span{margin-left:auto;font-weight:600;color:#C2185B}
.ldc-claim__form input[type=text],.ldc-claim__form input[type=tel],.ldc-claim__form textarea{width:100%;box-sizing:border-box;padding:.6rem .7rem;border:1px solid #E6D6E0;border-radius:10px;font:inherit}
.ldc-claim__actions{display:flex;flex-wrap:wrap;gap:.5rem}
.ldc-claim__link{margin-top:2rem}
.ldc-manage{border:1px solid #E6D6E0;border-radius:16px;padding:1rem 1.2rem;margin:1rem 0}
.ldc-manage h3{margin-top:0}
.ldc-embed-code{width:100%;box-sizing:border-box;font:12px/1.5 ui-monospace,Menlo,monospace;padding:.6rem;border:1px solid #E6D6E0;border-radius:10px;background:#FBF7FA}
.ldc-claim__plan-name{display:flex;flex-direction:column}
.ldc-claim__plan-name small{font-weight:400;color:#5B4A66}
.ldc-pageedit input[type=url],.ldc-pageedit input[type=email]{width:100%;box-sizing:border-box;padding:.6rem .7rem;border:1px solid #E6D6E0;border-radius:10px;font:inherit}
.ldc-pageedit .ldc-note{display:block;margin-top:.25rem}
.ldc-pageedit__logo{display:flex;align-items:center;gap:1rem;margin:.3rem 0}
.ldc-pageedit__logo img{width:80px;height:80px;object-fit:contain;border:1px solid #E6D6E0;border-radius:12px;background:#fff}
.ldc-only{flex-basis:100%;display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin:0 0 .6rem;padding:.5rem .8rem;border-radius:12px;background:#F7ECF2;font-weight:600}
.ldc-only a{color:#C2185B}
.ldc-only__x{margin-left:auto;border:0;background:none;color:#5B4A66;font:inherit;font-weight:600;cursor:pointer;text-decoration:underline}
.ldc-preview-banner{margin:0 0 1.5rem;padding:1rem 1.2rem;border:2px dashed #C2185B;border-radius:16px;background:#FFF7FB}
.ldc-preview-banner p{margin:.2rem 0}
.ldc-basic__facts{color:#5B4A66}

/* Festival sessions in the event popup: bigger, separated rows, with the teacher */
.ldc-pop__sessions{gap:0;max-height:none;border-top:1px solid #EADDE6}
.ldc-pop__sessions li{border-bottom:1px solid #EADDE6}
.ldc-pop__sessions li:nth-child(even){background:#FBF4F8}
.ldc-sess-row{display:flex;gap:12px;align-items:baseline;width:100%;padding:10px 8px;border:0;background:none;text-align:left;font:inherit;font-size:16px;line-height:1.4;color:#1E1226;cursor:pointer}
.ldc-sess-row:hover,.ldc-sess-row:focus-visible{background:#F7ECF2}
.ldc-sess-row__time{flex:0 0 auto;min-width:4.6em;font-weight:700}
.ldc-sess-row__body{display:flex;flex-direction:column}
.ldc-sess-row__who{font-size:14px;color:#5B4A66}
@media (min-width:761px){.ldc-pop__sessions{max-height:340px;overflow:auto}}

/* Organisers: other people's events greyed out */
.ldc-ev.is-other,.ldc-card.is-other{opacity:.45;filter:grayscale(.85)}
.ldc-ev.is-other:hover,.ldc-card.is-other:hover{opacity:.8}
.ldc-swatch--other{background:#ddd;border:1px solid #bbb}

/* Organiser area */
.ldc-fe{max-width:860px}
.ldc-fe-nav{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 1.2rem}
.ldc-fe-nav a{padding:.45rem .9rem;border-radius:999px;background:#F7ECF2;color:#1E1226;text-decoration:none;font-weight:600;font-size:15px}
.ldc-fe-nav a[aria-current]{background:#5B1F7A;color:#fff}
.ldc-fe-nav a:last-child{margin-left:auto;background:none;text-decoration:underline}
.ldc-fe__h{font-size:1.25rem;margin:1.6rem 0 .6rem}
.ldc-fe-list{list-style:none;margin:0;padding:0;border-top:1px solid #EADDE6}
.ldc-fe-row{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline;padding:10px 8px;border-bottom:1px solid #EADDE6}
.ldc-fe-list>.ldc-fe-row:nth-child(even){background:#FBF7FA}
.ldc-fe-row__when{flex:0 0 11.5em;font-weight:700;font-size:15px}
.ldc-fe-row__title{flex:1 1 14em;display:flex;flex-direction:column}
.ldc-fe-row__title small{color:#5B4A66;font-size:14px}
.ldc-fe-row__act{display:flex;gap:12px;font-size:15px}
.ldc-fe-row__act a{color:#C2185B;font-weight:600}
.ldc-fe-row.is-other{opacity:.55}
.ldc-fe-row--series{display:block;padding:0}
.ldc-fe-row--series summary{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline;padding:10px 8px;cursor:pointer;list-style:none}
.ldc-fe-row--series summary::-webkit-details-marker{display:none}
.ldc-fe-row__more{color:#C2185B;font-weight:600;font-size:15px}
.ldc-fe-row--series ul{list-style:none;margin:0 0 6px 1.2rem;padding:0;border-left:3px solid #F0DCE7}
.ldc-evform fieldset{margin-bottom:1.2rem}
.ldc-evform select,.ldc-evform input[type=date],.ldc-evform input[type=time],.ldc-evform input[type=text],.ldc-evform input[type=url],.ldc-evform textarea{width:100%;box-sizing:border-box;padding:.6rem .7rem;border:1px solid #E6D6E0;border-radius:10px;font:inherit;background:#fff}
.ldc-evform__row{display:flex;flex-wrap:wrap;gap:0 14px}
.ldc-evform__row>p{flex:1 1 160px;margin-top:0}
.ldc-evform__stylegroups{columns:3 200px;column-gap:28px;margin:.4rem 0 1rem}
.ldc-evform__group{display:flex;flex-direction:column;gap:0;break-inside:avoid;margin:0 0 18px}
.ldc-evform__group strong{display:block;margin:0 0 4px;font-size:15px;color:#5B1F7A;text-transform:uppercase;letter-spacing:.04em}
.ldc-evform__group .ldc-check{display:flex;align-items:center;gap:10px;margin:0;padding:5px 0;font-weight:500;line-height:1.3}
.ldc-evform__group .ldc-check input{margin:0;flex:0 0 auto}
.ldc-evform__other{margin-top:4px}
.ldc-evform__other summary{display:inline-flex;align-items:center;min-height:0;padding:.45rem 1rem;line-height:1.2;cursor:pointer;list-style:none;margin-bottom:12px}
.ldc-evform__other summary::-webkit-details-marker{display:none}
.ldc-custom-styles{color:#5B4A66;font-size:15px}
.ldc-evform__subs summary{cursor:pointer;color:#5B4A66;font-size:14px;margin:0 0 4px 28px}
.ldc-evform__group .ldc-check--sub{margin-left:28px;font-size:14px;padding:3px 0}
.ldc-evform__radios{display:flex;gap:18px}
.ldc-sess{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:0 10px;padding:10px;margin:0 0 10px;border:1px solid #EADDE6;border-radius:12px;background:#FFFBFD}
.ldc-sess p{margin:0 0 6px}
.ldc-sess__wide{grid-column:span 2}
.ldc-btn--quiet{background:none;border-color:transparent}
.ldc-fe-card{padding:.8rem 1rem;border-radius:14px;background:#F3ECF8;border-left:4px solid #5B1F7A;margin:0 0 1rem}
.ldc-fe-search{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 1rem}
.ldc-fe-search input[type=search]{flex:1 1 240px;padding:.6rem .7rem;border:1px solid #E6D6E0;border-radius:10px;font:inherit}
.ldc-fe-addschool{margin:1rem 0}
.ldc-fe-addschool summary{cursor:pointer;margin-bottom:.6rem}
.ldc-locked{background:#FAF7FB;border-style:dashed !important}
.ldc-dim{color:#8A7B93}
