/* A small shared system: hierarchy, meaningful states and quiet surfaces. */
:root{--ui-radius-control:10px;--ui-radius-panel:16px;--ui-shadow:0 8px 32px rgb(32 49 40/.08);--ui-shadow-overlay:0 16px 48px rgb(16 28 20/.18)}
html[data-theme=dark]{--ui-shadow:none;--ui-shadow-overlay:0 16px 48px rgb(0 0 0/.32)}
body :is(h1,h2,h3){letter-spacing:-.025em;text-wrap:pretty}
body h1{line-height:1.14}body :is(h2,h3){line-height:1.22}
body :is(button,a[role=button],.btn){transition:background-color 140ms ease,border-color 140ms ease,color 140ms ease,opacity 140ms ease}
body button:not(:disabled):active{transform:translateY(1px)}
body button:disabled{opacity:.58;cursor:default}
body button[aria-busy=true]{opacity:.8;cursor:progress}
body :is(button,input,select,textarea,summary,a):focus-visible{outline:3px solid var(--experience-brand);outline-offset:3px}
body :is(input,textarea)::placeholder{color:var(--experience-muted);opacity:.85}
body :is(input,select,textarea)[aria-invalid=true]{border:2px solid #b3261e}
html[data-theme=dark] body :is(input,select,textarea)[aria-invalid=true]{border-color:#ffb4ab}
body :is(.discovery-popup,.product-dialog,.calendar-occurrence-dialog){border-radius:var(--ui-radius-panel);box-shadow:var(--ui-shadow-overlay)}
body :is(.discovery-filters,.product-dialog,.auth-form) :is(input,select,textarea){border-radius:var(--ui-radius-control);min-height:48px}
body :is(.discovery-filter-apply,.discovery-reset,.event-plan-actions button,.event-plan-actions a,.discovery-featured-actions a,.discovery-source){display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 16px;border-radius:var(--ui-radius-control);font-size:.9375rem;line-height:1.35;box-sizing:border-box;text-decoration:none}
body :is(.event-plan-actions button,.discovery-reset):not(:disabled):hover{background:var(--experience-raised);border-color:var(--experience-brand)}
body .event-plan-actions button[aria-pressed=true]{background:var(--experience-brand);color:var(--experience-on-brand)}
body .discovery-card__body{padding-block:12px 8px}
body .discovery-card h3,body .discovery-rail .discovery-card h3{font-size:1rem;font-weight:650;line-height:1.3;letter-spacing:-.015em;margin:0 0 8px;overflow-wrap:anywhere}
body .discovery-card__date{font-size:.8125rem;font-weight:550;line-height:1.4;color:var(--experience-text);margin-block:0 4px}
body .discovery-card__location{font-size:.8125rem;line-height:1.45;color:var(--experience-muted);margin:0}
body .discovery-card__image{border-radius:10px;overflow:hidden}
body .discovery-card__status{max-width:calc(100% - 20px);box-sizing:border-box;white-space:normal;line-height:1.3;padding:6px 10px;border:0;border-radius:8px;background:var(--experience-surface);color:var(--experience-text);box-shadow:0 2px 8px #0002;font-size:.8125rem}
body .discovery-row{margin-block:24px 32px}
body .discovery-row__head{gap:16px;align-items:start;margin-bottom:12px}
body .discovery-row__head h3{font-size:clamp(1.375rem,2vw,1.625rem);margin-block:0 4px}
body .collection-explanation{max-width:48ch;line-height:1.5}
body .collection-explanation summary{min-height:32px;font-size:.8125rem;color:var(--experience-muted)}
body .collection-explanation summary:hover{color:var(--experience-brand)}
body .discovery-compact-tools{padding-right:0}
body .discovery-compact-tools>button{display:inline-flex;align-items:center;justify-content:center;gap:8px}
body .discovery-compact-tools>button svg{width:20px;height:20px;flex:none}
body .discovery-detail__info{padding:24px;border-radius:var(--ui-radius-panel);box-shadow:var(--ui-shadow);border:1px solid var(--experience-line)}
body .discovery-detail__info :is(dt,dd){font-size:.9375rem;line-height:1.5}
body .discovery-detail__info dt{color:var(--experience-muted)}
body .discovery-detail__info dd{font-weight:550}
body .discovery-detail__info .discovery-caption{font-size:.8125rem;line-height:1.5}
body .ui-help{border-top:1px solid var(--experience-line);margin-top:16px;padding-top:8px;font-size:.875rem;line-height:1.5;color:var(--experience-muted)}
body .ui-help summary{cursor:pointer;min-height:44px;align-content:center;color:var(--experience-text)}
body .ui-help p{margin:4px 0 12px}
body .site-nav .nav-link{position:relative;min-height:44px;display:inline-flex;align-items:center;padding-inline:12px;border-radius:8px}
body .site-nav .nav-link.is-active{background:#ffffff18;font-weight:650}
body .site-nav .nav-link:hover{background:#ffffff12}
body .mobile-bottom-nav{box-shadow:0 -4px 20px rgb(32 49 40/.05)}
body .mobile-bottom-nav__item.is-active{background:var(--experience-raised);color:var(--experience-brand);font-weight:650;border-radius:10px}
body #discoveryFind{width:92%;max-width:1520px;margin:24px auto 20px;position:relative;z-index:2}
body .discovery-find-form{display:flex;align-items:center;gap:12px;padding:6px 6px 6px 16px;border:1px solid var(--experience-control-line);background:var(--experience-surface);border-radius:12px;box-shadow:var(--ui-shadow)}
body .discovery-find-form:focus-within{outline:3px solid var(--experience-brand);outline-offset:3px}
body .discovery-find-form>svg{width:22px;height:22px;flex:none;color:var(--experience-muted)}
body .discovery-find-form>input{min-width:0;width:100%;flex:1;background:transparent;border:0;box-shadow:none;padding:10px 0;min-height:44px;font:inherit;font-size:1rem;color:var(--experience-text);outline:none}
body .discovery-find-form>input:focus-visible{outline:none}
body .discovery-find-form>button{min-height:44px;padding:10px 20px;border:0;border-radius:8px;background:var(--experience-brand);color:var(--experience-on-brand);font:inherit;font-weight:600;cursor:pointer}
body .discovery-find-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px}
body #discoveryFindHint{font-size:.8125rem;line-height:1.45;color:var(--experience-muted);margin:0}
body .discovery-quick-dates{display:flex;gap:8px;flex-wrap:wrap}
body .discovery-quick-dates button{min-height:44px;padding:8px 14px;border:1px solid var(--experience-line);border-radius:10px;background:var(--experience-surface);color:var(--experience-text);font:inherit;font-size:.875rem;cursor:pointer}
body .discovery-quick-dates button[aria-pressed=true]{background:var(--experience-brand);color:var(--experience-on-brand);border-color:var(--experience-brand)}
body .discovery-quick-dates button:not([aria-pressed=true]):hover{border-color:var(--experience-brand);background:var(--experience-raised)}
body.discovery-page .discovery-featured.hero-banner--carousel{height:auto;min-height:48svh;max-height:none}
body.discovery-page .discovery-featured.hero-banner--carousel .discovery-featured-ambient{display:none}
body.discovery-page .discovery-featured.hero-banner--carousel .discovery-featured-copy{padding:64px 4% 40px}
body.discovery-page .discovery-featured-copy h1{line-height:1.14;letter-spacing:-.025em}
body .discovery-featured-slide::after{background:linear-gradient(0deg,#08150ef5 0%,#08150eb8 45%,#08150e22 85%);border-radius:0 0 16px 16px}
body .discovery-featured-copy :is(h1,p,small){color:#fff}
@media(max-width:768px){
 body #discoveryFind{width:calc(100% - 32px);margin-block:16px}
 body .discovery-find-form{gap:8px;padding-left:12px}
 body .discovery-find-form>button{padding-inline:14px;font-size:.875rem}
 body .discovery-find-form>input{font-size:1rem}
 body .discovery-find-footer{gap:8px}
 body.discovery-page .discovery-featured.hero-banner--carousel{height:auto;min-height:38svh}
 body.discovery-page .discovery-featured.hero-banner--carousel .discovery-featured-copy{padding:72px 20px 32px;width:100%}
 body.discovery-page .discovery-featured-copy h1{font-size:clamp(1.75rem,6.5vw,2.25rem)}
 body .discovery-featured-synopsis{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
 body .discovery-card h3,body .discovery-rail .discovery-card h3{font-size:.9375rem}
 body .discovery-detail__info{padding:20px}
}
@media(prefers-reduced-motion:reduce){body :is(button,a[role=button],.btn){transition:none}body button:not(:disabled):active{transform:none}}
html[data-reduced-motion=reduce] body :is(button,a[role=button],.btn){transition:none}html[data-reduced-motion=reduce] body button:not(:disabled):active{transform:none}
@media(forced-colors:active){body .discovery-find-form{border-color:CanvasText}body .discovery-quick-dates button[aria-pressed=true]{border:2px solid Highlight}}
body .discovery-card__preview{display:none}
@media(hover:hover) and (pointer:fine){body .discovery-card__preview{display:inline-flex;align-items:center;gap:6px;margin:4px 0 0;min-height:36px;padding:6px 0;border:0;border-radius:4px;background:transparent;color:var(--experience-brand);font:inherit;font-size:.8125rem;cursor:pointer}body .discovery-card__preview:hover{background:transparent;text-decoration:underline}body .discovery-card__preview[aria-expanded=true]{background:var(--experience-raised)}}
body .discovery-detail__info dl{grid-template-columns:96px minmax(0,1fr);gap:12px 16px}
body .discovery-detail__info dt{overflow-wrap:normal;word-break:normal}
/* Account prompts use the same semantic colours as the event actions. */
html body :is(.library-empty,.library-prompt,.profile-welcome) .btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border-radius:10px;font-size:1rem;font-weight:600;line-height:1.35;box-sizing:border-box;margin-top:8px}
html body :is(.library-empty,.library-prompt,.profile-welcome) .btn-primary{background:var(--experience-brand);color:var(--experience-on-brand);border-color:var(--experience-brand)}
html body :is(.library-empty,.library-prompt,.profile-welcome) .btn-secondary{background:var(--experience-raised);color:var(--experience-text);border-color:var(--experience-control-line)}
body .library-tabs a{font-weight:600}
body :is(.library-empty,.library-prompt){border-radius:var(--ui-radius-panel);border-color:var(--experience-line);box-shadow:var(--ui-shadow)}
