:root{--vlvg-accent:#c95f22;--vlvg-accent-dark:#a64613;--vlvg-ink:#222;--vlvg-muted:#6b6b6b;--vlvg-line:#e7e1db;--vlvg-paper:#fffdf9;--vlvg-soft:#f6f1ea;--vlvg-white:#fff}
.vlv-local-guides{max-width:1180px;margin:0 auto;padding:0 18px 70px;color:var(--vlvg-ink);font-family:inherit;box-sizing:border-box}.vlv-local-guides *{box-sizing:border-box}.vlvg-eyebrow{margin:0 0 6px;font-size:12px;letter-spacing:.14em;font-weight:800;color:var(--vlvg-accent)}
.vlvg-guide-tools{background:var(--vlvg-paper);border:1px solid var(--vlvg-line);border-radius:16px;padding:24px;margin:20px 0 26px;box-shadow:0 10px 30px rgba(40,30,20,.05)}.vlvg-tool-heading,.vlvg-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.vlvg-tool-heading h2,.vlvg-section-heading h2,.vlvg-saved-drawer h2,.vlvg-hub-head h2{margin:0;font-size:clamp(28px,4vw,44px);line-height:1.05;font-family:Georgia,'Times New Roman',serif;font-weight:700}.vlvg-tool-description{margin:8px 0 0!important;color:var(--vlvg-muted);max-width:760px;line-height:1.5}.vlvg-section-heading{margin:38px 0 16px;align-items:flex-end}.vlvg-section-heading p{margin:6px 0 0;color:var(--vlvg-muted);max-width:680px}.vlvg-section-count{font-size:13px;color:var(--vlvg-muted);white-space:nowrap}
.vlvg-saved-list-button,.vlvg-saved-fab,.vlvg-saved-actions button{border:0;border-radius:999px;background:var(--vlvg-accent);color:#fff;padding:11px 17px;font-weight:800;cursor:pointer}.vlvg-saved-count{display:inline-flex;min-width:24px;height:24px;align-items:center;justify-content:center;border-radius:999px;background:#fff;color:var(--vlvg-accent);margin-left:6px;padding:0 6px}.vlvg-filter-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}.vlvg-filter-button{appearance:none;border:1px solid #d9d2ca;background:#fff;color:var(--vlvg-ink);border-radius:999px;padding:8px 13px;font-size:13px;font-weight:700;cursor:pointer}.vlvg-filter-button:hover,.vlvg-filter-button.is-active{background:var(--vlvg-ink);border-color:var(--vlvg-ink);color:#fff}.vlvg-search-row{display:flex;gap:10px;margin-top:16px}.vlvg-search-row input{flex:1;border:1px solid #d9d2ca;border-radius:10px;padding:12px 14px;font-size:15px;background:#fff}.vlvg-map-jump{display:inline-flex;align-items:center;justify-content:center;border-radius:10px;border:1px solid #d9d2ca;padding:10px 14px;color:var(--vlvg-ink);text-decoration:none;font-weight:700;background:#fff}
.vlvg-map-section{margin:20px 0 45px}.vlvg-map-wrap{position:relative}.vlvg-events-map{height:470px;width:100%;border-radius:14px;border:1px solid var(--vlvg-line);overflow:hidden;background:#eee}.vlvg-map-empty{position:absolute;z-index:500;left:18px;right:18px;bottom:18px;background:rgba(255,255,255,.96);border:1px solid var(--vlvg-line);border-radius:10px;padding:12px 14px;font-size:13px;box-shadow:0 4px 18px rgba(0,0,0,.08)}
.vlvg-event-section{scroll-margin-top:24px}.vlvg-event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.vlvg-event-card{position:relative;border:1px solid var(--vlvg-line);border-radius:14px;background:#fff;padding:18px;box-shadow:0 5px 20px rgba(38,30,22,.045);scroll-margin-top:24px}.vlvg-event-card[hidden]{display:none!important}.vlvg-event-card-top{display:flex;gap:14px;align-items:flex-start}.vlvg-date-badge{width:55px;min-width:55px;border:1px solid #e1d8cf;border-radius:9px;background:var(--vlvg-soft);text-align:center;overflow:hidden}.vlvg-date-badge span{display:block;background:var(--vlvg-accent);color:#fff;font-size:10px;letter-spacing:.12em;padding:5px 4px;font-weight:800}.vlvg-date-badge strong{display:block;font-size:25px;line-height:1;padding:7px 3px 8px;font-family:Georgia,'Times New Roman',serif}.vlvg-event-card-headings{min-width:0}.vlvg-event-schedule{margin:0 0 5px!important;font-size:12px;color:var(--vlvg-accent);font-weight:800}.vlvg-event-card h3{font-size:20px!important;line-height:1.18!important;margin:0 0 6px!important;font-family:Georgia,'Times New Roman',serif}.vlvg-event-location{margin:0!important;font-size:13px;color:var(--vlvg-muted);line-height:1.4}.vlvg-event-tags{display:flex;flex-wrap:wrap;gap:5px;margin:14px 0 10px}.vlvg-event-tags span{font-size:10px;letter-spacing:.05em;font-weight:800;background:#f4eee7;color:#6d452d;border-radius:999px;padding:5px 8px}.vlvg-event-summary{border-top:1px solid #eee7e0;padding-top:10px;margin-top:10px}.vlvg-event-summary p,.vlvg-event-details p{font-size:13px;line-height:1.45;margin:5px 0!important}.vlvg-event-excerpt{color:#4f4b47}.vlvg-event-actions{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:14px}.vlvg-event-actions button,.vlvg-save-control{appearance:none;border:0;background:transparent;color:#4b4b4b;font-size:12px;font-weight:800;padding:6px 7px;border-radius:7px;cursor:pointer}.vlvg-event-actions button:hover,.vlvg-save-control:hover{background:#f4eee7;color:var(--vlvg-accent-dark)}.vlvg-save-control{display:inline-flex;gap:5px;align-items:center}.vlvg-save-control input{accent-color:var(--vlvg-accent);margin:0}.vlvg-save-control.is-saved{color:var(--vlvg-accent-dark);background:#fff2e8}.vlvg-event-details{margin-top:12px;padding:12px;border-radius:9px;background:var(--vlvg-soft)}.vlvg-detail-links{display:flex;gap:12px;flex-wrap:wrap}.vlvg-detail-links a{color:var(--vlvg-accent-dark);font-weight:700}.vlvg-no-results{text-align:center;padding:34px;color:var(--vlvg-muted)}
.vlvg-share-menu{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px;padding:9px;background:var(--vlvg-soft);border:1px solid var(--vlvg-line);border-radius:9px}.vlvg-share-menu[hidden]{display:none!important}.vlvg-share-menu button{appearance:none;border:1px solid #ddd3ca;background:#fff;color:#333;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:800;cursor:pointer}.vlvg-share-menu button:hover{border-color:var(--vlvg-accent);color:var(--vlvg-accent-dark)}
.vlvg-saved-fab{position:fixed;right:22px;bottom:22px;z-index:9998;box-shadow:0 10px 30px rgba(0,0,0,.22)}.vlvg-saved-overlay{position:fixed;inset:0;background:rgba(20,18,16,.42);z-index:9998}.vlvg-saved-drawer{position:fixed;top:0;right:0;width:min(450px,94vw);height:100vh;background:#fff;z-index:9999;box-shadow:-20px 0 50px rgba(0,0,0,.15);padding:22px;transform:translateX(105%);transition:transform .22s ease;display:flex;flex-direction:column}.vlvg-saved-drawer.is-open{transform:translateX(0)}.vlvg-saved-drawer-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--vlvg-line);padding-bottom:16px}.vlvg-saved-drawer-head h2{font-size:32px}.vlvg-close-drawer{border:0;background:transparent;font-size:34px;line-height:1;cursor:pointer}.vlvg-saved-items{overflow:auto;flex:1;padding:8px 0}.vlvg-empty-list{padding:18px 0;color:var(--vlvg-muted)}.vlvg-saved-item{padding:14px 0;border-bottom:1px solid #eee7e0}.vlvg-saved-item h3{font-size:17px!important;margin:0 0 5px!important}.vlvg-saved-item p{font-size:12px;margin:3px 0!important;color:var(--vlvg-muted);line-height:1.4}.vlvg-saved-address{color:#47413d!important}.vlvg-saved-excerpt{margin-top:7px!important}.vlvg-saved-item-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}.vlvg-saved-item-actions button,.vlvg-saved-item-actions a{font-size:12px;border:0;background:transparent;padding:0;color:var(--vlvg-accent-dark);font-weight:800;cursor:pointer;text-decoration:none}.vlvg-saved-actions{display:grid;gap:8px;border-top:1px solid var(--vlvg-line);padding-top:14px}.vlvg-saved-actions button{border-radius:9px}.vlvg-saved-actions .vlvg-clear-list{background:#f3efeb;color:#6b625c}.vlvg-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);background:#222;color:#fff;border-radius:999px;padding:9px 14px;font-size:13px;z-index:10001;opacity:0;pointer-events:none;transition:.2s}.vlvg-toast.is-visible{opacity:1;transform:translate(-50%,0)}
.vlvg-popup-title{font-weight:800;font-size:15px;margin:0 0 4px}.vlvg-popup-meta,.vlvg-popup-address{font-size:12px;margin:0 0 8px;color:#555}.vlvg-popup-event{padding:7px 0;border-top:1px solid #eee}.vlvg-popup-event:first-of-type{border-top:0}.vlvg-popup-event a{font-size:12px;font-weight:700;margin-right:8px;color:var(--vlvg-accent-dark)}.leaflet-popup-content{margin:14px 16px}.marker-cluster-small,.marker-cluster-medium,.marker-cluster-large{background-color:color-mix(in srgb,var(--vlvg-accent) 28%,transparent)}.marker-cluster-small div,.marker-cluster-medium div,.marker-cluster-large div{background-color:var(--vlvg-accent);color:#fff}.vlvg-event-card.vlvg-highlight{outline:3px solid color-mix(in srgb,var(--vlvg-accent) 35%,transparent);box-shadow:0 0 0 7px color-mix(in srgb,var(--vlvg-accent) 10%,transparent),0 8px 26px rgba(38,30,22,.08)}
.vlvg-home-promo{position:relative;overflow:hidden;background:#191715;color:#fff;border-radius:14px;padding:24px 22px;border-top:4px solid var(--vlvg-accent);box-shadow:0 8px 24px rgba(28,20,14,.12);font-family:inherit}.vlvg-home-promo:after{content:"";position:absolute;width:150px;height:150px;border-radius:50%;right:-80px;top:-85px;border:1px solid rgba(255,255,255,.08);box-shadow:0 0 0 28px rgba(255,255,255,.025),0 0 0 56px rgba(255,255,255,.018);pointer-events:none}.vlvg-home-promo-kicker{position:relative;z-index:1;margin-bottom:7px;font-size:11px;letter-spacing:.16em;font-weight:800;color:#e6a276}.vlvg-home-promo h3{position:relative;z-index:1;margin:0 0 10px!important;color:#fff!important;font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(25px,3vw,36px)!important;line-height:1.05!important}.vlvg-home-promo-copy{position:relative;z-index:1;margin:0 0 15px!important;max-width:620px;color:#e8e2dd;font-size:14px;line-height:1.5}.vlvg-home-promo-tags{position:relative;z-index:1;display:flex;gap:6px;flex-wrap:wrap;margin:0 0 17px}.vlvg-home-promo-tags span{border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:5px 8px;color:#f4efeb;font-size:10px;font-weight:700;line-height:1}.vlvg-home-promo-button{position:relative;z-index:1;display:inline-flex;align-items:center;gap:8px;background:var(--vlvg-accent);color:#fff!important;text-decoration:none!important;border-radius:8px;padding:11px 14px;font-size:13px;font-weight:800;line-height:1.1}.vlvg-home-promo-button:hover{background:var(--vlvg-accent-dark);color:#fff!important}.vlvg-home-promo-note{position:relative;z-index:1;margin:12px 0 0!important;color:#bdb4ad;font-size:11px;line-height:1.3}
.vlvg-hub{width:100%;max-width:1180px;margin:25px auto;padding:24px;border:1px solid var(--vlvg-line);background:var(--vlvg-paper);border-radius:16px;overflow:hidden}.vlvg-hub-head{margin-bottom:18px}.vlvg-hub-head h2{font-size:clamp(30px,5vw,52px);overflow-wrap:break-word}.vlvg-hub-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.vlvg-hub-card{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;min-width:0;min-height:108px;text-decoration:none!important;color:var(--vlvg-ink)!important;background:#fff;border:1px solid var(--vlvg-line);border-radius:12px;padding:18px}.vlvg-hub-card:hover{border-color:var(--vlvg-accent);box-shadow:0 5px 18px rgba(38,30,22,.05)}.vlvg-hub-card strong{display:block;max-width:100%;font-size:19px;line-height:1.22;overflow-wrap:anywhere}.vlvg-hub-card span{display:block;margin-top:8px;font-size:12px;line-height:1.25;color:var(--vlvg-muted);white-space:normal}
@media(max-width:900px){.vlvg-event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vlvg-tool-heading{align-items:flex-start}.vlvg-saved-list-button{display:none}}
@media(max-width:620px){.vlv-local-guides{padding-left:12px;padding-right:12px}.vlvg-guide-tools{padding:17px;border-radius:12px}.vlvg-event-grid{grid-template-columns:1fr}.vlvg-tool-heading,.vlvg-section-heading{display:block}.vlvg-section-count{display:block;margin-top:7px}.vlvg-search-row{display:grid;grid-template-columns:1fr}.vlvg-events-map{height:390px}.vlvg-saved-fab{right:12px;bottom:12px}.vlvg-event-card{padding:15px}.vlvg-filter-row{gap:6px}.vlvg-filter-button{font-size:12px;padding:7px 10px}.vlvg-home-promo{padding:20px 17px}.vlvg-home-promo h3{font-size:28px!important}.vlvg-hub-grid{grid-template-columns:1fr}.vlvg-hub{padding:17px}.vlvg-hub-card{min-height:0;padding:16px}}

/* Image-based sidebar guide hub. The supplied artwork has a small white edge;
   scale the entire image slightly so its visible frame matches the Halloween widget width. */
.vlvg-sidebar-image-widget{position:relative;width:109%;max-width:none;margin:0 0 0 -4.5%;line-height:0;overflow:visible}
.vlvg-sidebar-image-widget img{display:block;width:100%;height:auto;max-width:none;border:0;margin:0}
.vlvg-sidebar-hotspot{position:absolute;display:block;z-index:2;border-radius:12px;text-decoration:none!important;line-height:1;transition:background .15s ease,box-shadow .15s ease}
.vlvg-sidebar-hotspot:hover{background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 2px rgba(15,145,157,.22)}
.vlvg-sidebar-hotspot:focus-visible{outline:3px solid #0c8e9e;outline-offset:2px;background:rgba(255,255,255,.10)}

/* v1.2.3: responsive containment + category identity */
body.vlvg-plugin-page{overflow-x:hidden}
.vlv-local-guides,.vlvg-hub,.vlvg-guide-tools,.vlvg-map-section,.vlvg-event-sections,.vlvg-category-nav{width:100%;max-width:100%;min-width:0;box-sizing:border-box}
.vlv-local-guides{overflow-x:clip}
.vlv-local-guides img,.vlv-local-guides svg,.vlvg-hub img,.vlvg-hub svg{max-width:100%}
.vlvg-tool-heading>*,.vlvg-section-heading>*,.vlvg-search-row>*{min-width:0}
.vlvg-guide-tools{border-top:4px solid var(--vlvg-guide-color,var(--vlvg-accent));padding-top:20px}
.vlvg-search-row input{min-width:0;width:100%}
.vlvg-map-jump{white-space:nowrap}

/* Closed saved-list drawer is fully outside the viewport and cannot create horizontal scrolling. */
.vlvg-saved-drawer{right:0;width:min(450px,calc(100vw - 16px));max-width:calc(100vw - 16px);transform:translate3d(110%,0,0);visibility:hidden;opacity:0;pointer-events:none;overflow-x:hidden;transition:transform .22s ease,opacity .18s ease,visibility 0s linear .22s}
.vlvg-saved-drawer.is-open{transform:translate3d(0,0,0);visibility:visible;opacity:1;pointer-events:auto;transition:transform .22s ease,opacity .18s ease}
.vlvg-saved-overlay[hidden]{display:none!important}

/* The approved two-column sidebar artwork is cropped to its content frame, so it can fill the sidebar at 100% without causing overflow. */
.vlvg-sidebar-image-widget{position:relative;width:100%;max-width:100%;margin:0;line-height:0;overflow:hidden}
.vlvg-sidebar-image-widget img{display:block;width:100%;height:auto;max-width:100%;border:0;margin:0}

/* Reusable guide/category navigation using the same category colors as the sidebar artwork. */
.vlvg-category-nav{margin:0 auto 18px;padding:0}
.vlvg-category-nav-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.vlvg-category-link{display:flex;align-items:center;min-width:0;min-height:72px;padding:12px 14px;border:2px solid var(--vlvg-category-color);border-radius:13px;background:#fff;color:var(--vlvg-ink)!important;text-decoration:none!important;box-shadow:0 3px 12px rgba(30,25,20,.025);transition:transform .15s ease,box-shadow .15s ease,background .15s ease}
.vlvg-category-link:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(30,25,20,.07)}
.vlvg-category-link.is-current{box-shadow:inset 0 0 0 2px var(--vlvg-category-color),0 6px 18px rgba(30,25,20,.06)}
.vlvg-category-label{min-width:0;font-size:14px;font-weight:800;line-height:1.16;overflow-wrap:anywhere}

/* Hub cards reuse the same category colors without decorative icon circles. */
.vlvg-hub-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.vlvg-hub-card{min-width:0;min-height:126px;border:2px solid var(--vlvg-category-color);padding:15px;overflow:hidden}
.vlvg-hub-card strong{margin-top:0;font-size:18px;line-height:1.18;overflow-wrap:anywhere}
.vlvg-hub-card>span:last-child{margin-top:6px}
.vlvg-hub-card:hover{border-color:var(--vlvg-category-color)}

/* Avoid fixed minimum widths from forcing page overflow on laptops. */
.vlvg-event-grid{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:100%}
.vlvg-event-card{min-width:0;overflow-wrap:anywhere}
.vlvg-event-card-top,.vlvg-event-card-headings{min-width:0}
.vlvg-event-location,.vlvg-event-excerpt,.vlvg-event-details{overflow-wrap:anywhere}
.vlvg-events-map{max-width:100%}

@media(max-width:1180px){
  .vlv-local-guides{padding-left:14px;padding-right:14px}
  .vlvg-hub{margin-left:auto;margin-right:auto}
  .vlvg-hub-grid,.vlvg-category-nav-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
  .vlvg-hub-grid,.vlvg-category-nav-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vlvg-event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vlvg-tool-heading{align-items:flex-start;flex-wrap:wrap}
}
@media(max-width:620px){
  .vlvg-hub-grid,.vlvg-category-nav-grid,.vlvg-event-grid{grid-template-columns:1fr}
  .vlvg-category-link{min-height:60px}
  .vlvg-search-row{grid-template-columns:1fr}
  .vlvg-saved-drawer{width:calc(100vw - 8px);max-width:calc(100vw - 8px);padding:18px}
}


/* v1.2.6: Keep My VLV List visible while the reader scrolls. */
.vlvg-saved-fab{
  position:fixed;
  right:0;
  top:50%;
  bottom:auto;
  transform:translateY(-50%);
  z-index:9997;
  border-radius:14px 0 0 14px;
  padding:13px 16px;
  box-shadow:0 8px 26px rgba(0,0,0,.20);
  max-width:min(190px,calc(100vw - 24px));
  white-space:nowrap;
}
.vlvg-saved-fab:hover{filter:brightness(.96)}
@media(max-width:620px){
  .vlvg-saved-fab{
    right:12px;
    top:auto;
    bottom:12px;
    transform:none;
    border-radius:999px;
    padding:11px 15px;
    max-width:calc(100vw - 24px);
  }
}


/* v1.2.7: Mount the saved-list UI at document body level so theme wrappers cannot clip it. */
.vlvg-saved-overlay{background:rgba(20,18,16,.24)!important;z-index:2147483000!important}
.vlvg-saved-drawer{z-index:2147483001!important}
.vlvg-saved-fab{z-index:2147482999!important}
.vlvg-toast{z-index:2147483002!important}
body.vlvg-list-open{overflow:hidden}
@media(max-width:620px){body.vlvg-list-open{overflow:hidden}}


/* v1.2.8: Scroll the entire My VLV List drawer, including the action buttons. */
.vlvg-saved-drawer{
  height:100vh;
  height:100dvh;
  max-height:100vh;
  max-height:100dvh;
  box-sizing:border-box;
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  padding-bottom:calc(22px + env(safe-area-inset-bottom, 0px));
  display:block;
}
.vlvg-saved-drawer-head{
  position:sticky;
  top:-22px;
  z-index:3;
  background:#fff;
  padding-top:22px;
}
.vlvg-saved-items{
  overflow:visible;
  flex:none;
  padding:8px 0;
}
.vlvg-saved-actions{
  position:static;
  margin-top:0;
  padding-bottom:2px;
}
@media(max-width:620px){
  .vlvg-saved-drawer{
    padding-bottom:calc(18px + env(safe-area-inset-bottom, 0px));
  }
  .vlvg-saved-drawer-head{
    top:-18px;
    padding-top:18px;
  }
}


/* v1.2.9: custom Share My VLV List panel with email, link and social options. */
.vlvg-list-share-overlay{position:fixed;inset:0;background:rgba(20,18,16,.32);z-index:2147483002}.vlvg-list-share-overlay[hidden]{display:none!important}
.vlvg-list-share-dialog{position:fixed;left:50%;top:50%;transform:translate(-50%,-46%) scale(.98);width:min(430px,calc(100vw - 28px));max-height:calc(100dvh - 36px);overflow:auto;background:#fff;border:1px solid var(--vlvg-line);border-radius:18px;box-shadow:0 24px 70px rgba(0,0,0,.25);padding:22px;z-index:2147483003;opacity:0;transition:opacity .16s ease,transform .16s ease;box-sizing:border-box}
.vlvg-list-share-dialog[hidden]{display:none!important}.vlvg-list-share-dialog.is-open{opacity:1;transform:translate(-50%,-50%) scale(1)}
.vlvg-list-share-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;border-bottom:1px solid var(--vlvg-line);padding-bottom:14px}.vlvg-list-share-head h2{font-family:Georgia,'Times New Roman',serif;font-size:28px;line-height:1.05;margin:0}.vlvg-list-share-close{appearance:none;border:0;background:transparent;color:#555;font-size:32px;line-height:1;cursor:pointer;padding:0 2px}.vlvg-list-share-copy{font-size:13px;line-height:1.5;color:var(--vlvg-muted);margin:14px 0 16px!important}
.vlvg-list-share-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.vlvg-list-share-grid button{appearance:none;border:1px solid var(--vlvg-line);background:var(--vlvg-paper);color:var(--vlvg-ink);border-radius:12px;padding:13px 12px;font-size:14px;font-weight:800;cursor:pointer;min-height:48px}.vlvg-list-share-grid button:hover,.vlvg-list-share-grid button:focus-visible{border-color:var(--vlvg-accent);color:var(--vlvg-accent-dark);outline:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--vlvg-accent) 18%,transparent)}
@media(max-width:480px){.vlvg-list-share-dialog{padding:18px}.vlvg-list-share-grid{grid-template-columns:1fr}.vlvg-list-share-head h2{font-size:25px}}


/* v1.3.0: Desktop mouse-wheel routing. The list scrolls under the pointer; the page/calendar scrolls outside it. */
@media (min-width:621px){
  body.vlvg-list-open{overflow-y:auto!important;overflow-x:hidden!important;}
  .vlvg-saved-overlay{pointer-events:none!important;}
  .vlvg-saved-drawer{pointer-events:auto;overscroll-behavior:contain;}
}
/* On touch screens keep the modal behavior to avoid accidental page movement behind the drawer. */
@media (max-width:620px){
  body.vlvg-list-open{overflow:hidden!important;}
  .vlvg-saved-overlay{pointer-events:auto;}
}
