.vstp-list,.vstp-list *,.vstp-panel,.vstp-panel *{box-sizing:border-box}
.vstp-panel svg,.vstp-floating svg,.vstp-inline-button svg{display:block!important;width:19px!important;min-width:19px!important;max-width:19px!important;height:19px!important;min-height:19px!important;max-height:19px!important;margin:0!important;padding:0!important}
.vstp-list{color:var(--vstp-text);font-family:inherit}
.vstp-grid{display:grid;grid-template-columns:repeat(var(--vstp-columns),minmax(0,1fr));gap:18px}
.vstp-event{position:relative;overflow:hidden;border:1px solid rgba(23,32,51,.07);border-radius:var(--vstp-radius);background:var(--vstp-card);box-shadow:0 12px 35px rgba(23,32,51,.07);transition:transform .25s ease,box-shadow .25s ease}
.vstp-event:hover{transform:translateY(-3px);box-shadow:0 20px 45px rgba(23,32,51,.12)}
.vstp-event[hidden]{display:none}.vstp-image{aspect-ratio:16/9;overflow:hidden;background:var(--vstp-bg)}.vstp-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.vstp-event:hover .vstp-image img{transform:scale(1.035)}
.vstp-event-body{display:block!important;padding:20px!important}.vstp-event h3{display:block!important;margin:13px 0 7px!important;padding:0!important;color:var(--vstp-text)!important;font-family:inherit!important;font-size:1.25rem!important;line-height:1.2!important;letter-spacing:-.025em!important}
.vstp-tags{display:flex;flex-wrap:wrap;gap:5px}.vstp-tags span{padding:5px 8px;border-radius:999px;background:rgba(37,99,235,.1);color:var(--vstp-accent);font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.vstp-date{display:flex;align-items:center;gap:10px;margin-top:14px;color:var(--vstp-muted);font-size:12px}.vstp-date b{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:linear-gradient(145deg,var(--vstp-accent),var(--vstp-accent-2));box-shadow:0 8px 18px rgba(37,99,235,.22);color:#fff;font-size:18px}.vstp-date strong,.vstp-date small{display:block}.vstp-date strong{color:var(--vstp-text);letter-spacing:.025em;text-transform:uppercase}.vstp-date small{margin-top:2px}
.vstp-location{display:block!important;margin:0 0 10px!important;padding:0!important;color:var(--vstp-muted)!important;font-size:13px!important;font-weight:650!important}.vstp-location:before{content:"";display:inline-block;width:6px;height:6px;margin:0 7px 1px 1px;border-radius:50%;background:var(--vstp-accent)}
.vstp-description{display:block!important;margin:10px 0 0!important;color:var(--vstp-muted)!important;font-size:13px!important;line-height:1.6!important}.vstp-description p{display:block!important;margin:0 0 8px!important;color:inherit!important;font:inherit!important}.vstp-description>:last-child{margin-bottom:0!important}.vstp-no-details{margin:8px 0 0!important;color:var(--vstp-muted)!important;font-size:11px!important;font-style:italic!important;line-height:1.45!important}
.vstp-link{display:inline-flex;align-items:center;gap:8px;margin-top:13px;padding:9px 13px;border-radius:999px;background:var(--vstp-text);color:var(--vstp-card)!important;font-size:11px;font-weight:800;text-decoration:none!important;transition:gap .2s,background .2s}.vstp-link:hover{gap:12px;background:var(--vstp-accent)}
.vstp-filters{display:flex;gap:7px;margin-bottom:18px;padding-bottom:2px;overflow:auto;scrollbar-width:none}.vstp-filters::-webkit-scrollbar{display:none}.vstp-filters button{flex:0 0 auto;padding:8px 13px;border:1px solid rgba(23,32,51,.1);border-radius:999px;background:var(--vstp-card);color:var(--vstp-muted);font:700 11px/1 inherit;cursor:pointer;transition:.2s}.vstp-filters button:hover,.vstp-filters button.is-active{border-color:var(--vstp-accent);background:var(--vstp-accent);color:#fff}
.vstp-empty{grid-column:1/-1;padding:36px;border:1px dashed rgba(23,32,51,.15);border-radius:var(--vstp-radius);background:rgba(255,255,255,.45);color:var(--vstp-muted);text-align:center}
.vstp-floating,.vstp-inline-button{z-index:9998;display:inline-flex;align-items:center;gap:9px;border:1px solid rgba(255,255,255,.25);border-radius:15px;background:linear-gradient(145deg,var(--vstp-accent),var(--vstp-accent-2));box-shadow:0 14px 35px rgba(15,23,42,.18),inset 0 1px rgba(255,255,255,.25);color:#fff;font:750 12px/1 inherit;cursor:pointer;transition:transform .22s,box-shadow .22s}
.vstp-floating{position:fixed;top:50%;padding:7px 8px 7px 7px}.vstp-floating-right{right:12px;transform:translateY(-50%)}.vstp-floating-left{left:12px;transform:translateY(-50%)}.vstp-floating:hover{box-shadow:0 18px 42px rgba(15,23,42,.25),inset 0 1px rgba(255,255,255,.25)}.vstp-floating-right:hover,.vstp-floating-left:hover{transform:translateY(-50%) scale(1.035)}
.vstp-inline-button{position:relative;padding:8px 12px 8px 8px}.vstp-inline-button:hover{transform:translateY(-2px)}
.vstp-calendar-icon{display:grid;place-items:center;width:33px;height:33px;border-radius:10px;background:rgba(255,255,255,.17)}.vstp-calendar-icon svg{width:19px;height:19px}.vstp-button-label{padding-right:1px}.vstp-button-count{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:7px;background:#fff;color:var(--vstp-accent);font-size:10px}
.vstp-overlay{position:fixed;z-index:9998;inset:0;background:rgba(12,18,30,.48);opacity:0;backdrop-filter:blur(3px);transition:.24s}.vstp-overlay.is-open{opacity:1}
.vstp-panel{position:fixed;z-index:9999;top:0;bottom:0;width:min(var(--vstp-desktop-width,390px),100%);padding:0;background:var(--vstp-card);box-shadow:0 0 45px rgba(10,18,32,.18);transition:transform .3s cubic-bezier(.22,.75,.25,1)}.vstp-panel-right{right:0;transform:translateX(105%)}.vstp-panel-left{left:0;transform:translateX(-105%)}.vstp-panel.is-open{transform:translateX(0)}
.vstp-panel .vstp-panel-header{display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:0!important;margin:0!important;padding:20px 22px!important;border:0!important;border-bottom:1px solid rgba(23,32,51,.07)!important;background:rgba(255,255,255,.8)!important;backdrop-filter:blur(18px)}.vstp-panel-heading{display:flex!important;align-items:center!important;gap:12px!important}.vstp-panel-heading>.vstp-calendar-icon{display:grid!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;margin:0!important;padding:0!important;border-radius:12px!important;background:linear-gradient(145deg,var(--vstp-accent),var(--vstp-accent-2))!important;box-shadow:0 8px 20px rgba(37,99,235,.2)!important;color:#fff!important}.vstp-panel-heading>div{display:block!important}.vstp-panel .vstp-panel-header small{display:block!important;margin:0!important;padding:0!important;color:var(--vstp-accent)!important;font-family:inherit!important;font-size:9px!important;font-weight:850!important;letter-spacing:.11em!important;line-height:1.2!important}.vstp-panel .vstp-panel-header h2{display:block!important;margin:3px 0 0!important;padding:0!important;color:var(--vstp-text)!important;font-family:inherit!important;font-size:20px!important;font-weight:750!important;line-height:1.15!important;letter-spacing:-.03em!important}.vstp-panel .vstp-panel-header p{display:block!important;margin:3px 0 0!important;padding:0!important;color:var(--vstp-muted)!important;font-family:inherit!important;font-size:11px!important;line-height:1.3!important}.vstp-panel .vstp-panel-header>button{display:grid!important;place-items:center!important;width:36px!important;min-width:36px!important;max-width:36px!important;height:36px!important;min-height:36px!important;max-height:36px!important;margin:0!important;padding:0!important;border:1px solid rgba(23,32,51,.08)!important;border-radius:11px!important;background:var(--vstp-card)!important;color:var(--vstp-text)!important;font-family:Arial,sans-serif!important;font-size:21px!important;font-weight:400!important;line-height:1!important;cursor:pointer!important;transition:.2s}.vstp-panel .vstp-panel-header>button:hover{border-color:var(--vstp-accent)!important;color:var(--vstp-accent)!important}
.vstp-panel-content{height:calc(100vh - 88px);overflow:auto;padding:10px 22px 30px}.vstp-panel .vstp-grid{grid-template-columns:1fr}
.vstp-panel-style-adaptive{background:var(--vstp-card)!important}.vstp-panel-style-adaptive .vstp-panel-header{background:var(--vstp-card)!important}.vstp-panel-style-adaptive .vstp-event{border:0!important;border-bottom:1px solid rgba(23,32,51,.12)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.vstp-panel-style-adaptive .vstp-event:hover{transform:none!important;box-shadow:none!important}.vstp-panel-style-adaptive .vstp-event-body{padding:18px 0!important}.vstp-panel-style-adaptive .vstp-image{margin-top:16px;border-radius:10px}.vstp-panel-style-adaptive .vstp-filters{margin-bottom:4px}
.vstp-panel-style-accent{background:linear-gradient(160deg,var(--vstp-accent),var(--vstp-accent-2))!important}.vstp-panel-style-accent .vstp-panel-header{border-bottom-color:rgba(255,255,255,.25)!important;background:rgba(0,0,0,.12)!important}.vstp-panel-style-accent .vstp-panel-header small,.vstp-panel-style-accent .vstp-panel-header h2,.vstp-panel-style-accent .vstp-panel-header p{color:#fff!important}.vstp-panel-style-accent .vstp-event{background:rgba(255,255,255,.95)!important}
body.admin-bar .vstp-panel{top:32px}body.admin-bar .vstp-panel-content{height:calc(100vh - 120px)}
@media(max-width:782px){body.admin-bar .vstp-panel{top:46px}body.admin-bar .vstp-panel-content{height:calc(100vh - 134px)}}
@media(max-width:800px){
	.vstp-grid,.vstp-panel .vstp-grid{grid-template-columns:1fr}
	.vstp-panel{top:auto!important;right:0!important;bottom:0!important;left:0!important;width:100%!important;min-width:0!important;max-width:none!important;height:var(--vstp-mobile-height,50vh)!important;border-radius:18px 18px 0 0!important;box-shadow:0 -16px 45px rgba(10,18,32,.2)!important;transform:translateY(105%)!important}
	.vstp-panel.is-open{transform:translateY(0)!important}
	.vstp-floating{top:var(--vstp-mobile-top,68%);bottom:auto;padding:13px 7px;border-radius:11px;gap:0;writing-mode:vertical-rl;text-orientation:mixed}
	.vstp-floating-right{right:0;left:auto;transform:translateY(-50%)}
	.vstp-floating-left{right:auto;left:0;transform:translateY(-50%) rotate(180deg)}
	.vstp-floating-right:hover{transform:translateY(-50%)}
	.vstp-floating-left:hover{transform:translateY(-50%) rotate(180deg)}
	.vstp-floating .vstp-calendar-icon,.vstp-floating .vstp-button-count{display:none}
	.vstp-floating .vstp-button-label{display:block;padding:0;color:#fff;font-size:10px;font-weight:800;letter-spacing:.02em;line-height:1}
	.vstp-panel .vstp-panel-header{padding:13px 15px!important}.vstp-panel-heading>.vstp-calendar-icon{display:none!important}.vstp-panel .vstp-panel-header h2{font-size:17px!important}.vstp-panel .vstp-panel-header p{display:none!important}.vstp-panel-content{height:calc(var(--vstp-mobile-height,50vh) - 68px)!important;padding:8px 16px 20px}
	.vstp-panel .vstp-event{display:block!important}.vstp-panel .vstp-image{height:auto;aspect-ratio:16/8}.vstp-panel .vstp-event-body{padding:14px!important}.vstp-panel .vstp-event h3{font-size:14px!important}.vstp-panel .vstp-description{font-size:11px!important}.vstp-panel .vstp-date b{width:35px;height:35px;font-size:14px}.vstp-panel .vstp-date{font-size:10px}
}

/* Compact hierarchy: event title first, supporting information second. */
.vstp-event{background:var(--vstp-card-bg,var(--vstp-card));backdrop-filter:blur(16px)}
.vstp-event h3{margin:4px 0 10px!important;font-size:1.18rem!important;font-weight:800!important;line-height:1.2!important}
.vstp-date{margin:0 0 9px!important}.vstp-date b{width:38px;height:38px;border-radius:11px;font-size:16px}.vstp-date strong{font-size:10px;font-weight:800}.vstp-date small{font-size:10px}
.vstp-location{margin:0 0 8px!important;color:var(--vstp-muted)!important;font-size:11px!important;font-weight:600!important}.vstp-location:before{width:5px;height:5px;background:var(--vstp-muted)}
.vstp-description{margin-top:8px!important;font-size:12px!important;line-height:1.5!important}
.vstp-panel{background:var(--vstp-panel-bg,var(--vstp-bg))!important;backdrop-filter:blur(20px)}
.vstp-panel .vstp-panel-header{background:var(--vstp-card-bg,var(--vstp-card))!important}
.vstp-panel .vstp-panel-header>button,.vstp-filters button{background:var(--vstp-card-bg,var(--vstp-card))!important}
.vstp-panel-style-adaptive,.vstp-panel-style-light{background:var(--vstp-panel-bg,var(--vstp-bg))!important}
.vstp-panel-style-adaptive .vstp-panel-header,.vstp-panel-style-light .vstp-panel-header{background:var(--vstp-card-bg,var(--vstp-card))!important}
.vstp-panel-style-adaptive .vstp-event{background:var(--vstp-card-bg,transparent)!important}
.vstp-panel .vstp-event h3{color:var(--vstp-text)!important;font-size:16px!important;font-weight:800!important}
.vstp-panel .vstp-location{color:var(--vstp-muted)!important;font-size:11px!important;font-weight:600!important}
@media(max-width:800px){.vstp-panel .vstp-event h3{font-size:15px!important}.vstp-panel .vstp-location{font-size:11px!important}.vstp-panel .vstp-event-body{padding:12px 14px!important}}

/* Version 2.6 refinements. */
html.vstp-panel-open{overflow:hidden}
.vstp-panel-handle{display:none}
.vstp-event h3,.vstp-panel .vstp-event h3{font-size:var(--vstp-title-size,16px)!important}
.vstp-event-body{padding:18px!important}
.vstp-panel-content{scrollbar-width:thin;scrollbar-color:rgba(100,116,139,.35) transparent}
.vstp-panel-content::-webkit-scrollbar{width:6px}.vstp-panel-content::-webkit-scrollbar-thumb{border-radius:99px;background:rgba(100,116,139,.35)}
.vstp-panel-style-adaptive .vstp-event{margin:0!important}.vstp-panel-style-adaptive .vstp-event-body{padding:16px 0!important}
.vstp-panel-style-light .vstp-event{margin:10px 0;border-color:rgba(23,32,51,.08);box-shadow:0 8px 24px rgba(23,32,51,.055)}
.vstp-panel .vstp-tags{margin-bottom:8px}.vstp-panel .vstp-tags span{padding:4px 7px;font-size:8px}
.vstp-panel .vstp-link{margin-top:10px;padding:7px 11px}
.vstp-floating:focus-visible,.vstp-inline-button:focus-visible,.vstp-panel button:focus-visible,.vstp-filters button:focus-visible,.vstp-link:focus-visible{outline:3px solid var(--vstp-accent-2);outline-offset:3px}
@media(max-width:800px){
	.vstp-panel{max-height:calc(100dvh - 12px)!important;border-radius:18px 18px 0 0!important}
	.vstp-panel-handle{display:block;position:absolute;z-index:2;top:6px;left:50%;width:34px;height:4px;border-radius:99px;background:var(--vstp-muted);opacity:.35;transform:translateX(-50%)}
	.vstp-panel .vstp-panel-header{padding:18px 15px 11px!important}
	.vstp-panel-content{height:calc(var(--vstp-mobile-height,50vh) - 70px)!important;padding:6px 15px max(20px,env(safe-area-inset-bottom))}
	.vstp-panel .vstp-event-body{padding:12px 0!important}
	.vstp-panel-style-light .vstp-event-body{padding:13px!important}
	.vstp-panel .vstp-event h3{font-size:var(--vstp-title-size,16px)!important}
}
@media(prefers-reduced-motion:reduce){.vstp-panel,.vstp-overlay,.vstp-event,.vstp-floating,.vstp-inline-button{transition:none!important}.vstp-event:hover{transform:none!important}}

/* Version 2.6.1: keep the real panel visually aligned with the live preview. */
.vstp-panel,.vstp-panel-style-adaptive,.vstp-panel-style-light{background:var(--vstp-panel-bg)!important}
.vstp-panel:before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 100% 0,rgba(255,255,255,.55),transparent 38%)}
.vstp-panel .vstp-panel-header{background:var(--vstp-card-bg)!important;box-shadow:0 1px 0 rgba(23,32,51,.08),0 12px 30px rgba(23,32,51,.045)}
.vstp-panel-content{padding:18px 20px 32px!important}
.vstp-panel .vstp-grid{gap:13px!important}
.vstp-panel .vstp-event,.vstp-panel-style-adaptive .vstp-event,.vstp-panel-style-light .vstp-event{overflow:hidden!important;margin:0!important;border:1px solid rgba(23,32,51,.08)!important;border-radius:var(--vstp-radius)!important;background:var(--vstp-card-bg)!important;box-shadow:0 10px 28px rgba(23,32,51,.07)!important}
.vstp-panel .vstp-event:hover,.vstp-panel-style-adaptive .vstp-event:hover{transform:translateY(-1px)!important;box-shadow:0 14px 34px rgba(23,32,51,.1)!important}
.vstp-panel .vstp-event-body,.vstp-panel-style-adaptive .vstp-event-body,.vstp-panel-style-light .vstp-event-body{padding:17px 18px!important}
.vstp-panel .vstp-event h3{margin:0 0 12px!important;color:var(--vstp-text)!important}
.vstp-panel .vstp-date{margin:0 0 10px!important;color:var(--vstp-muted)!important}
.vstp-panel .vstp-date b{flex:0 0 38px;background:linear-gradient(145deg,var(--vstp-accent),var(--vstp-accent-2))!important;color:#fff!important}
.vstp-panel .vstp-date strong{color:var(--vstp-text)!important}
.vstp-panel .vstp-date small,.vstp-panel .vstp-location,.vstp-panel .vstp-description,.vstp-panel .vstp-description p{color:var(--vstp-muted)!important}
.vstp-panel .vstp-location:before{background:var(--vstp-accent)!important}
.vstp-panel-style-accent{background:var(--vstp-panel-bg)!important}
.vstp-panel-style-accent .vstp-panel-header{background:var(--vstp-card-bg)!important}.vstp-panel-style-accent .vstp-panel-header small{color:var(--vstp-accent)!important}.vstp-panel-style-accent .vstp-panel-header h2{color:var(--vstp-text)!important}.vstp-panel-style-accent .vstp-panel-header p{color:var(--vstp-muted)!important}
@media(max-width:800px){.vstp-panel-content{padding:8px 14px max(20px,env(safe-area-inset-bottom))!important}.vstp-panel .vstp-grid{gap:10px!important}.vstp-panel .vstp-event-body,.vstp-panel-style-adaptive .vstp-event-body,.vstp-panel-style-light .vstp-event-body{padding:14px 15px!important}}

/* Version 2.7: responsive floating button system. */
.vstp-floating{top:50%;right:auto;left:auto;min-width:var(--vstp-desktop-button-size);height:var(--vstp-desktop-button-size);padding:6px 10px 6px 6px;border-radius:var(--vstp-button-radius);background:var(--vstp-button-bg);color:var(--vstp-button-text);box-shadow:0 12px 30px rgba(15,23,42,.2),inset 0 1px rgba(255,255,255,.18)}
.vstp-floating-right{right:var(--vstp-desktop-button-offset);left:auto}.vstp-floating-left{right:auto;left:var(--vstp-desktop-button-offset)}
.vstp-floating .vstp-calendar-icon{width:calc(var(--vstp-desktop-button-size) - 12px);height:calc(var(--vstp-desktop-button-size) - 12px);border-radius:max(8px,calc(var(--vstp-button-radius) - 4px));background:rgba(255,255,255,.14);color:var(--vstp-button-text)}
.vstp-floating .vstp-button-label{color:var(--vstp-button-text)}.vstp-floating .vstp-button-count{background:var(--vstp-button-text);color:var(--vstp-button-bg)}
@media(min-width:1101px){
	.vstp-floating.vstp-desktop-compact .vstp-button-count,.vstp-floating.vstp-desktop-icon .vstp-button-label,.vstp-floating.vstp-desktop-icon .vstp-button-count{display:none}
	.vstp-floating.vstp-desktop-icon{width:var(--vstp-desktop-button-size);padding:6px}
	.vstp-floating.vstp-desktop-tab{height:auto;min-width:0;padding:13px 7px;gap:0;writing-mode:vertical-rl;text-orientation:mixed}.vstp-floating.vstp-desktop-tab .vstp-calendar-icon,.vstp-floating.vstp-desktop-tab .vstp-button-count{display:none}
}
@media(min-width:801px) and (max-width:1100px){
	.vstp-floating{min-width:var(--vstp-tablet-button-size);height:var(--vstp-tablet-button-size)}
	.vstp-floating-right{right:var(--vstp-tablet-button-offset)}.vstp-floating-left{left:var(--vstp-tablet-button-offset)}
	.vstp-floating .vstp-calendar-icon{display:grid;width:calc(var(--vstp-tablet-button-size) - 12px);height:calc(var(--vstp-tablet-button-size) - 12px)}
	.vstp-floating .vstp-button-label,.vstp-floating .vstp-button-count{display:grid}
	.vstp-floating.vstp-tablet-compact .vstp-button-count,.vstp-floating.vstp-tablet-icon .vstp-button-label,.vstp-floating.vstp-tablet-icon .vstp-button-count{display:none}
	.vstp-floating.vstp-tablet-icon{width:var(--vstp-tablet-button-size);padding:6px}
	.vstp-floating.vstp-tablet-tab{height:auto;min-width:0;padding:13px 7px;gap:0;writing-mode:vertical-rl;text-orientation:mixed}.vstp-floating.vstp-tablet-tab .vstp-calendar-icon,.vstp-floating.vstp-tablet-tab .vstp-button-count{display:none}
}
@media(max-width:800px){
	.vstp-floating{top:var(--vstp-mobile-top,68%);min-width:var(--vstp-mobile-button-size);height:var(--vstp-mobile-button-size);padding:6px 9px 6px 6px;gap:8px;writing-mode:horizontal-tb;text-orientation:mixed}
	.vstp-floating-right{right:var(--vstp-mobile-button-offset);left:auto}.vstp-floating-left{right:auto;left:var(--vstp-mobile-button-offset)}
	.vstp-floating .vstp-calendar-icon{display:grid;width:calc(var(--vstp-mobile-button-size) - 12px);height:calc(var(--vstp-mobile-button-size) - 12px)}
	.vstp-floating .vstp-button-label,.vstp-floating .vstp-button-count{display:grid;color:var(--vstp-button-text)}
	.vstp-floating.vstp-mobile-compact .vstp-button-count,.vstp-floating.vstp-mobile-icon .vstp-button-label,.vstp-floating.vstp-mobile-icon .vstp-button-count{display:none}
	.vstp-floating.vstp-mobile-icon{width:var(--vstp-mobile-button-size);padding:6px}
	.vstp-floating.vstp-mobile-tab{height:auto;min-width:0;padding:13px 7px;gap:0;writing-mode:vertical-rl;text-orientation:mixed}.vstp-floating.vstp-mobile-tab .vstp-calendar-icon,.vstp-floating.vstp-mobile-tab .vstp-button-count{display:none}.vstp-floating.vstp-mobile-tab .vstp-button-label{display:block;font-size:10px}
	.vstp-floating-left.vstp-mobile-tab{transform:translateY(-50%) rotate(180deg)}
}

/* Version 2.8: one responsive, editable button icon. */
.vstp-floating .vstp-button-icon{display:grid!important;flex:0 0 calc(var(--vstp-desktop-button-size) - 12px)!important;width:calc(var(--vstp-desktop-button-size) - 12px)!important;height:calc(var(--vstp-desktop-button-size) - 12px)!important;border-radius:var(--vstp-icon-radius)!important;background-color:var(--vstp-icon-bg)!important;background-image:var(--vstp-desktop-icon-image)!important;background-position:center!important;background-repeat:no-repeat!important;background-size:var(--vstp-desktop-icon-size) var(--vstp-desktop-icon-size)!important;overflow:hidden!important}
@media(min-width:1101px){.vstp-floating .vstp-button-icon.vstp-desktop-icon-none{display:none!important}}
@media(min-width:801px) and (max-width:1100px){.vstp-floating .vstp-button-icon{flex-basis:calc(var(--vstp-tablet-button-size) - 12px)!important;width:calc(var(--vstp-tablet-button-size) - 12px)!important;height:calc(var(--vstp-tablet-button-size) - 12px)!important;background-image:var(--vstp-tablet-icon-image)!important;background-size:var(--vstp-tablet-icon-size) var(--vstp-tablet-icon-size)!important}.vstp-floating .vstp-button-icon.vstp-tablet-icon-none{display:none!important}}
@media(max-width:800px){.vstp-floating .vstp-button-icon{flex-basis:calc(var(--vstp-mobile-button-size) - 12px)!important;width:calc(var(--vstp-mobile-button-size) - 12px)!important;height:calc(var(--vstp-mobile-button-size) - 12px)!important;background-image:var(--vstp-mobile-icon-image)!important;background-size:var(--vstp-mobile-icon-size) var(--vstp-mobile-icon-size)!important}.vstp-floating .vstp-button-icon.vstp-mobile-icon-none,.vstp-floating.vstp-mobile-tab .vstp-button-icon{display:none!important}}

/* Version 2.8.1: polished panel geometry and restrained media. */
.vstp-panel{overflow:hidden!important;border-radius:var(--vstp-panel-radius) 0 0 var(--vstp-panel-radius)!important;border:1px solid rgba(23,32,51,.09)!important}
.vstp-panel-left{border-radius:0 var(--vstp-panel-radius) var(--vstp-panel-radius) 0!important}
.vstp-panel .vstp-panel-header{position:relative!important;z-index:2!important;margin:12px 12px 4px!important;padding:15px 16px!important;border:1px solid rgba(23,32,51,.07)!important;border-radius:16px!important;box-shadow:0 8px 24px rgba(23,32,51,.06)!important}
.vstp-panel .vstp-panel-heading>.vstp-calendar-icon{border-radius:12px!important}
.vstp-panel .vstp-panel-header>button{border-radius:12px!important}
.vstp-panel .vstp-event{border-radius:var(--vstp-radius)!important}
.vstp-panel .vstp-image{height:150px!important;aspect-ratio:auto!important;margin:0!important;border-radius:calc(var(--vstp-radius) - 1px) calc(var(--vstp-radius) - 1px) 0 0!important}
.vstp-panel .vstp-image img{width:100%!important;height:100%!important;object-fit:cover!important}
.vstp-panel .vstp-event.has-image .vstp-event-body{padding-top:16px!important}
@media(max-width:800px){.vstp-panel{border-radius:var(--vstp-panel-radius) var(--vstp-panel-radius) 0 0!important}.vstp-panel .vstp-panel-header,.vstp-panel-left .vstp-panel-header{margin:14px 10px 4px!important;padding:12px 13px!important;border-radius:max(8px,calc(var(--vstp-panel-radius) - 7px))!important}.vstp-panel .vstp-image{height:128px!important}}

/* Version 3.0: optional typography and role colors. */
.vstp-list,.vstp-panel,.vstp-floating,.vstp-inline-button{font-family:var(--vstp-font,inherit)!important}
.vstp-panel .vstp-panel-header small{color:var(--vstp-kicker-color)!important;font-size:var(--vstp-kicker-size)!important}
.vstp-panel .vstp-panel-header h2{color:var(--vstp-panel-title-color)!important;font-size:var(--vstp-panel-title-size)!important}
.vstp-panel .vstp-panel-header p{color:var(--vstp-count-color)!important;font-size:var(--vstp-count-size)!important}
.vstp-event h3,.vstp-panel .vstp-event h3{color:var(--vstp-event-title-color)!important;font-size:var(--vstp-title-size)!important}
.vstp-date,.vstp-date strong,.vstp-date small,.vstp-location,.vstp-panel .vstp-date,.vstp-panel .vstp-date strong,.vstp-panel .vstp-date small,.vstp-panel .vstp-location,.vstp-tags span{color:var(--vstp-meta-color)!important;font-size:var(--vstp-meta-size)!important}
.vstp-description,.vstp-description p,.vstp-no-details,.vstp-panel .vstp-description,.vstp-panel .vstp-description p{color:var(--vstp-description-color)!important;font-size:var(--vstp-description-size)!important}
.vstp-link{background:var(--vstp-link-bg)!important;color:var(--vstp-link-text)!important;font-size:var(--vstp-link-size)!important}
.vstp-floating,.vstp-inline-button{font-size:var(--vstp-button-font-size)!important}

/* Version 3.2: independent surfaces and text-only buttons. */
.vstp-panel .vstp-panel-header,.vstp-panel-style-adaptive .vstp-panel-header,.vstp-panel-style-light .vstp-panel-header,.vstp-panel-style-accent .vstp-panel-header{background:var(--vstp-header-bg)!important}
.vstp-panel .vstp-panel-header>button{background:var(--vstp-close-bg)!important}
.vstp-filters button{background:var(--vstp-filter-bg)!important}.vstp-filters button:hover,.vstp-filters button.is-active{background:var(--vstp-filter-active-bg)!important}
@media(min-width:1101px){.vstp-floating.vstp-desktop-text .vstp-button-icon,.vstp-floating.vstp-desktop-text .vstp-button-count{display:none!important}.vstp-floating.vstp-desktop-text{padding:6px 14px}}
@media(min-width:801px) and (max-width:1100px){.vstp-floating.vstp-tablet-text .vstp-button-icon,.vstp-floating.vstp-tablet-text .vstp-button-count{display:none!important}.vstp-floating.vstp-tablet-text{padding:6px 14px}}
@media(max-width:800px){.vstp-floating.vstp-mobile-text .vstp-button-icon,.vstp-floating.vstp-mobile-text .vstp-button-count{display:none!important}.vstp-floating.vstp-mobile-text{padding:6px 13px;writing-mode:horizontal-tb}.vstp-floating-left.vstp-mobile-text{transform:translateY(-50%)}}

/* Version 3.4: crisp text rendering and graphic-friendly media. */
.vstp-list,.vstp-panel,.vstp-floating,.vstp-inline-button{text-rendering:optimizeLegibility;-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto;font-synthesis:none}
.vstp-event,.vstp-panel,.vstp-panel .vstp-panel-header{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.vstp-image{display:grid;place-items:center;background:var(--vstp-image-bg,#fff)!important}
.vstp-image.vstp-image-contain img,.vstp-image.vstp-image-auto.is-graphic img{width:100%!important;height:100%!important;padding:14px;object-fit:contain!important;transform:none!important}
.vstp-image.vstp-image-cover img,.vstp-image.vstp-image-auto:not(.is-graphic) img{width:100%!important;height:100%!important;padding:0;object-fit:cover!important}
.vstp-event:hover .vstp-image.vstp-image-contain img,.vstp-event:hover .vstp-image.vstp-image-auto.is-graphic img{transform:none!important}

/* Version 3.5: independent button placement for desktop, tablet and mobile. */
@media(min-width:1101px){
	.vstp-floating.vstp-desktop-position-top_left{top:var(--vstp-desktop-button-offset)!important;right:auto!important;bottom:auto!important;left:var(--vstp-desktop-button-offset)!important;transform:none!important}
	.vstp-floating.vstp-desktop-position-top_center{top:var(--vstp-desktop-button-offset)!important;right:auto!important;bottom:auto!important;left:50%!important;transform:translateX(-50%)!important}
	.vstp-floating.vstp-desktop-position-top_right{top:var(--vstp-desktop-button-offset)!important;right:var(--vstp-desktop-button-offset)!important;bottom:auto!important;left:auto!important;transform:none!important}
	.vstp-floating.vstp-desktop-position-middle_left{top:50%!important;right:auto!important;bottom:auto!important;left:var(--vstp-desktop-button-offset)!important;transform:translateY(-50%)!important}
	.vstp-floating.vstp-desktop-position-middle_right{top:50%!important;right:var(--vstp-desktop-button-offset)!important;bottom:auto!important;left:auto!important;transform:translateY(-50%)!important}
	.vstp-floating.vstp-desktop-position-bottom_left{top:auto!important;right:auto!important;bottom:var(--vstp-desktop-button-offset)!important;left:var(--vstp-desktop-button-offset)!important;transform:none!important}
	.vstp-floating.vstp-desktop-position-bottom_center{top:auto!important;right:auto!important;bottom:var(--vstp-desktop-button-offset)!important;left:50%!important;transform:translateX(-50%)!important}
	.vstp-floating.vstp-desktop-position-bottom_right{top:auto!important;right:var(--vstp-desktop-button-offset)!important;bottom:var(--vstp-desktop-button-offset)!important;left:auto!important;transform:none!important}
	.vstp-floating.vstp-desktop-tab.vstp-desktop-position-top_left,.vstp-floating.vstp-desktop-tab.vstp-desktop-position-middle_left,.vstp-floating.vstp-desktop-tab.vstp-desktop-position-bottom_left{transform:rotate(180deg)!important}.vstp-floating.vstp-desktop-tab.vstp-desktop-position-middle_left{transform:translateY(-50%) rotate(180deg)!important}
}
@media(min-width:801px) and (max-width:1100px){
	.vstp-floating.vstp-tablet-position-top_left{top:var(--vstp-tablet-button-offset)!important;right:auto!important;bottom:auto!important;left:var(--vstp-tablet-button-offset)!important;transform:none!important}
	.vstp-floating.vstp-tablet-position-top_center{top:var(--vstp-tablet-button-offset)!important;right:auto!important;bottom:auto!important;left:50%!important;transform:translateX(-50%)!important}
	.vstp-floating.vstp-tablet-position-top_right{top:var(--vstp-tablet-button-offset)!important;right:var(--vstp-tablet-button-offset)!important;bottom:auto!important;left:auto!important;transform:none!important}
	.vstp-floating.vstp-tablet-position-middle_left{top:50%!important;right:auto!important;bottom:auto!important;left:var(--vstp-tablet-button-offset)!important;transform:translateY(-50%)!important}
	.vstp-floating.vstp-tablet-position-middle_right{top:50%!important;right:var(--vstp-tablet-button-offset)!important;bottom:auto!important;left:auto!important;transform:translateY(-50%)!important}
	.vstp-floating.vstp-tablet-position-bottom_left{top:auto!important;right:auto!important;bottom:var(--vstp-tablet-button-offset)!important;left:var(--vstp-tablet-button-offset)!important;transform:none!important}
	.vstp-floating.vstp-tablet-position-bottom_center{top:auto!important;right:auto!important;bottom:var(--vstp-tablet-button-offset)!important;left:50%!important;transform:translateX(-50%)!important}
	.vstp-floating.vstp-tablet-position-bottom_right{top:auto!important;right:var(--vstp-tablet-button-offset)!important;bottom:var(--vstp-tablet-button-offset)!important;left:auto!important;transform:none!important}
	.vstp-floating.vstp-tablet-tab.vstp-tablet-position-top_left,.vstp-floating.vstp-tablet-tab.vstp-tablet-position-middle_left,.vstp-floating.vstp-tablet-tab.vstp-tablet-position-bottom_left{transform:rotate(180deg)!important}.vstp-floating.vstp-tablet-tab.vstp-tablet-position-middle_left{transform:translateY(-50%) rotate(180deg)!important}
}
@media(max-width:800px){
	.vstp-floating.vstp-mobile-position-top_left{top:var(--vstp-mobile-button-offset)!important;right:auto!important;bottom:auto!important;left:var(--vstp-mobile-button-offset)!important;transform:none!important}
	.vstp-floating.vstp-mobile-position-top_center{top:var(--vstp-mobile-button-offset)!important;right:auto!important;bottom:auto!important;left:50%!important;transform:translateX(-50%)!important}
	.vstp-floating.vstp-mobile-position-top_right{top:var(--vstp-mobile-button-offset)!important;right:var(--vstp-mobile-button-offset)!important;bottom:auto!important;left:auto!important;transform:none!important}
	.vstp-floating.vstp-mobile-position-middle_left{top:50%!important;right:auto!important;bottom:auto!important;left:var(--vstp-mobile-button-offset)!important;transform:translateY(-50%)!important}
	.vstp-floating.vstp-mobile-position-middle_right{top:50%!important;right:var(--vstp-mobile-button-offset)!important;bottom:auto!important;left:auto!important;transform:translateY(-50%)!important}
	.vstp-floating.vstp-mobile-position-bottom_left{top:auto!important;right:auto!important;bottom:var(--vstp-mobile-button-offset)!important;left:var(--vstp-mobile-button-offset)!important;transform:none!important}
	.vstp-floating.vstp-mobile-position-bottom_center{top:auto!important;right:auto!important;bottom:var(--vstp-mobile-button-offset)!important;left:50%!important;transform:translateX(-50%)!important}
	.vstp-floating.vstp-mobile-position-bottom_right{top:auto!important;right:var(--vstp-mobile-button-offset)!important;bottom:var(--vstp-mobile-button-offset)!important;left:auto!important;transform:none!important}
	.vstp-floating.vstp-mobile-tab.vstp-mobile-position-top_left,.vstp-floating.vstp-mobile-tab.vstp-mobile-position-middle_left,.vstp-floating.vstp-mobile-tab.vstp-mobile-position-bottom_left{transform:rotate(180deg)!important}
	.vstp-floating.vstp-mobile-tab.vstp-mobile-position-middle_left{transform:translateY(-50%) rotate(180deg)!important}
}

/* Version 4.0: reusable calendar views, month filters and category colors. */
.vstp-list[data-vstp-list] .vstp-calendar-results>.vstp-grid{grid-template-columns:repeat(var(--vstp-calendar-columns,var(--vstp-columns)),minmax(0,1fr))}
.vstp-calendar-title{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:0 0 18px}.vstp-calendar-title h2{margin:0;color:var(--vstp-text);font-size:clamp(23px,3vw,36px);line-height:1.05;letter-spacing:-.04em}.vstp-calendar-title small{color:var(--vstp-muted);font-size:11px}
.vstp-category-filters button{border-color:color-mix(in srgb,var(--vstp-category-color,var(--vstp-accent)) 30%,transparent)}.vstp-category-filters button:hover,.vstp-category-filters button.is-active{border-color:var(--vstp-category-color,var(--vstp-accent));background:var(--vstp-category-color,var(--vstp-accent))!important;color:#fff}.vstp-month-filters{margin-top:-9px}.vstp-month-filters button{padding:6px 11px;font-size:10px}
.vstp-list[data-vstp-list] .vstp-event{border-top:4px solid var(--vstp-category-color,var(--vstp-accent))!important}.vstp-list[data-vstp-list] .vstp-tags span{background:color-mix(in srgb,var(--vstp-category-color,var(--vstp-accent)) 12%,transparent);color:var(--vstp-category-color,var(--vstp-accent))!important}.vstp-list[data-vstp-list] .vstp-date b{background:var(--vstp-category-color,var(--vstp-accent))!important}
.vstp-calendar-style-accent .vstp-event:before{content:"";position:absolute;z-index:0;inset:0 auto 0 0;width:7px;background:var(--vstp-category-color,var(--vstp-accent))}.vstp-calendar-style-accent .vstp-event-body{position:relative;z-index:1}.vstp-calendar-style-compact .vstp-calendar-results>.vstp-grid{grid-template-columns:1fr!important;gap:8px}.vstp-calendar-style-compact .vstp-event{display:grid;grid-template-columns:auto 1fr;box-shadow:none!important}.vstp-calendar-style-compact .vstp-image{width:145px;height:100%;min-height:140px;aspect-ratio:auto}.vstp-calendar-style-compact .vstp-event-body{padding:14px 16px!important}.vstp-calendar-style-compact .vstp-description{display:none!important}
.vstp-filter-layout-sidebar .vstp-calendar-workflow{display:grid;grid-template-columns:minmax(150px,220px) minmax(0,1fr);gap:20px}.vstp-filter-layout-sidebar .vstp-calendar-filter-area{position:sticky;top:24px;align-self:start;padding:14px;border:1px solid rgba(23,32,51,.09);border-radius:var(--vstp-radius);background:var(--vstp-card-bg,var(--vstp-card))}.vstp-filter-layout-sidebar .vstp-filters{align-items:stretch;flex-direction:column;margin:0 0 14px;overflow:visible}.vstp-filter-layout-sidebar .vstp-filters:last-child{margin-bottom:0}.vstp-filter-layout-sidebar .vstp-filters button{width:100%;text-align:left}.vstp-filter-layout-sidebar .vstp-month-filters{margin-top:0}
.vstp-show-more{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:18px;padding:12px 16px;border:1px solid color-mix(in srgb,var(--vstp-accent) 35%,transparent);border-radius:999px;background:transparent;color:var(--vstp-text);font:800 12px/1 inherit;cursor:pointer}.vstp-show-more:hover{border-color:var(--vstp-accent);background:var(--vstp-accent);color:#fff}.vstp-show-more[hidden]{display:none}
@media(max-width:800px){.vstp-list[data-vstp-list] .vstp-calendar-results>.vstp-grid{grid-template-columns:1fr}.vstp-calendar-title{align-items:start;flex-direction:column;gap:5px}.vstp-filter-layout-sidebar .vstp-calendar-workflow{display:block}.vstp-filter-layout-sidebar .vstp-calendar-filter-area{position:static;margin-bottom:15px;padding:0;border:0;background:transparent}.vstp-filter-layout-sidebar .vstp-filters{align-items:center;flex-direction:row;overflow:auto}.vstp-filter-layout-sidebar .vstp-filters button{width:auto;text-align:center}.vstp-calendar-style-compact .vstp-event{display:block}.vstp-calendar-style-compact .vstp-image{width:100%;height:130px}}

/* Version 4.0.1: the floating panel is always a readable single-column view. */
.vstp-panel .vstp-list[data-vstp-list] .vstp-calendar-workflow{display:block!important}.vstp-panel .vstp-list[data-vstp-list] .vstp-calendar-filter-area{position:static!important;margin:0 0 10px!important;padding:0!important;border:0!important;background:transparent!important}.vstp-panel .vstp-list[data-vstp-list] .vstp-filters{align-items:center!important;flex-direction:row!important;margin:0 0 8px!important;overflow:auto!important}.vstp-panel .vstp-list[data-vstp-list] .vstp-filters button{width:auto!important;text-align:center!important}.vstp-panel .vstp-list[data-vstp-list] .vstp-calendar-results>.vstp-grid{grid-template-columns:minmax(0,1fr)!important}.vstp-panel .vstp-calendar-style-compact .vstp-event{display:block!important}.vstp-panel .vstp-calendar-style-compact .vstp-image{width:100%!important;height:128px!important;min-height:0!important}
