/* Tailwind/Tailwind Plus supplies visual styling. These rules provide dialog,
   slider, viewport and loading behavior independently of generated utilities. */
.ksw-ve-detail:not([open]){display:none!important}
.ksw-ve-detail[open]{display:block!important;position:fixed;inset:0;z-index:9999;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;overflow:hidden}
.ksw-ve-detail-viewport{width:100vw;height:100dvh;max-width:100vw;max-height:100dvh}
.ksw-ve-detail-shell{max-width:100vw;max-height:100dvh}
.ksw-ve-gallery{min-height:0;max-height:100dvh}
.ksw-ve-gallery-stage{min-height:0;overflow:hidden}
.ksw-ve-slide{display:none;min-width:0;min-height:0;overflow:hidden}
.ksw-ve-slide.is-active{display:grid;grid-template-rows:minmax(0,1fr) auto}
.ksw-ve-image-frame{width:100%;height:100%;max-width:100vw;max-height:calc(100dvh - 5rem);overflow:hidden}
.ksw-ve-popup-image{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}
.ksw-ve-thumb.is-active{--tw-ring-color:rgb(255 255 255);box-shadow:0 0 0 2px var(--tw-ring-color)}
.ksw-ve-dialog-backdrop{position:fixed;inset:0;z-index:9998;background:rgba(3,7,18,.8)}
.ksw-ve-detail.ksw-ve-dialog-fallback{position:fixed;inset:0;z-index:9999;display:block!important}
body.ksw-ve-dialog-open{overflow:hidden}
[hidden]{display:none!important}
/* Critical modal interaction rules; independent of Tailwind compilation. */
.ksw-ve-detail{pointer-events:auto}
.ksw-ve-detail-viewport{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;pointer-events:auto}
.ksw-ve-detail-shell{position:relative;z-index:10000;pointer-events:auto}
.ksw-ve-detail-close{position:absolute;top:1rem;right:1rem;z-index:10002;display:inline-flex;width:2.75rem;height:2.75rem;align-items:center;justify-content:center;cursor:pointer;pointer-events:auto}
/* Result navigation and responsive filter drawer. On wide screens the filter
   drawer is positioned over the left side of the image grid, so opening it does
   not reduce the grid width. Below the desktop breakpoint it returns to normal
   flow above the images. */
.ksw-virtual-exhibition{position:relative}
.ksw-ve-overview-wrap{position:relative;min-width:0}
.ksw-ve-overview-wrap>.ksw-ve-overview{margin-top:0}
.ksw-ve-controls{position:relative;z-index:30;width:100%;margin:0 0 1.25rem;border:1px solid #d1d5db;background:#f9fafb;box-shadow:0 .75rem 2rem rgba(17,24,39,.10)}
.ksw-ve-search{display:block;max-width:36rem;margin:0 0 1rem;color:#374151;font-size:.82rem;font-weight:650}.ksw-ve-search span{display:block;margin-bottom:.35rem}.ksw-ve-search input{width:100%;border:1px solid #cbd5e1;border-radius:0;background:#fff;padding:.65rem .75rem;color:#111827}.ksw-ve-search input:focus{outline:2px solid #111827;outline-offset:1px}
.ksw-ve-filter-actions{display:flex;justify-content:flex-end;margin:.25rem 0 .75rem}.ksw-ve-clear-all{display:inline-flex;align-items:center;border:1px solid #9ca3af;background:#fff;padding:.45rem .7rem;color:#374151;font-size:.78rem;font-weight:650;cursor:pointer}.ksw-ve-clear-all:hover{background:#f3f4f6}.ksw-ve-clear-all:focus-visible{outline:2px solid #111827;outline-offset:2px}
.ksw-ve-controls>.ksw-ve-filter-group{margin-top:1.5rem}.ksw-ve-filter-group--untitled{border-top:1px solid #d1d5db;padding-top:1rem}.ksw-ve-filter-group--untitled+.ksw-ve-filter-group--untitled{margin-top:1rem}
.ksw-ve-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.ksw-ve-controls>.ksw-ve-search+.ksw-ve-filter-group{margin-top:1.5rem}
.ksw-ve-controls>noscript{display:block;margin-top:1.5rem}
.ksw-ve-filter-toggle[aria-expanded="true"]{background:#111827;color:#fff}
.ksw-ve-filter-toggle:focus-visible{outline:2px solid #111827;outline-offset:2px}
.ksw-ve-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem}
.ksw-ve-pagination--top{margin:1.5rem 0 1rem}
.ksw-ve-pagination--bottom{margin:1.75rem 0 0}
@media(min-width:64rem){
  .ksw-ve-filter-layout--drawer[data-ve-ready="1"] .ksw-ve-controls{position:absolute;top:0;left:0;width:min(24rem,38vw);max-height:min(72vh,44rem);margin:0;overflow:auto;overscroll-behavior:contain;box-shadow:0 1rem 2.75rem rgba(17,24,39,.22)}
  .ksw-virtual-exhibition[data-ve-filter-layout^="sidebar"] .ksw-ve-overview-wrap{display:grid;grid-template-columns:minmax(17rem,22rem) minmax(0,1fr);gap:clamp(1rem,2vw,2rem);align-items:start}
  .ksw-virtual-exhibition[data-ve-filter-layout^="sidebar"] .ksw-ve-controls,
  .ksw-virtual-exhibition[data-ve-filter-layout^="sidebar"] .ksw-ve-filter-stack{position:sticky;top:1rem;z-index:10;max-height:calc(100vh - 2rem);margin:0;overflow:auto;overscroll-behavior:contain;box-shadow:none}
  .ksw-virtual-exhibition[data-ve-filter-layout^="sidebar"] .ksw-ve-overview{min-width:0}
}
@media(max-width:63.999rem){
  .ksw-ve-controls{max-height:none;overflow:visible}
  .ksw-virtual-exhibition[data-ve-filter-layout^="sidebar"] .ksw-ve-overview-wrap{display:block}
  .ksw-virtual-exhibition[data-ve-filter-layout^="sidebar"] .ksw-ve-controls,
  .ksw-virtual-exhibition[data-ve-filter-layout^="sidebar"] .ksw-ve-filter-stack{position:relative;top:auto;max-height:none;margin-bottom:1.25rem;overflow:visible}
}
.ksw-ve-page-button{display:inline-flex;min-width:2.5rem;height:2.5rem;align-items:center;justify-content:center;border:1px solid #d1d5db;border-radius:0;background:#fff;padding:0 .65rem;font-size:.875rem;font-weight:600;color:#111827;cursor:pointer;text-decoration:none}
.ksw-ve-page-button:hover{background:#f9fafb}
.ksw-ve-page-button.is-current{border-color:#111827;background:#111827;color:#fff}
.ksw-ve-page-button:focus-visible{outline:2px solid #111827;outline-offset:2px}
.ksw-ve-page-ellipsis{display:inline-flex;min-width:2rem;height:2.5rem;align-items:center;justify-content:center;color:#6b7280}
.ksw-ve-page-prev,.ksw-ve-page-next{text-decoration:none}
.ksw-ve-page-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.ksw-ve-clover-host { width: 100%; height: 100%; min-height: 22rem; position: relative; }
.ksw-ve-clover-host .ksw-iiif-clover-stage { width: 100%; height: 100%; min-height: inherit; }
.ksw-ve-iiif-fallback { display: grid; place-items: center; width: 100%; min-height: 22rem; color: #fff; font-weight: 700; }

/* V5.15: plugin-local Clover mount layer. The CMS plugin no longer depends on
   semantic_content/iiif-viewer.js being updated in a second distribution. */
.ksw-ve-clover-host > .ksw-iiif-clover-stage{position:absolute;inset:0;z-index:2;display:block;width:100%;height:100%;min-height:inherit;background:#030712;overflow:hidden}
.ksw-ve-clover-host > .ksw-iiif-clover-stage > clover-viewer,
.ksw-ve-clover-host > .ksw-iiif-clover-stage > clover-image{display:block;width:100%;height:100%;min-height:inherit}
.ksw-ve-clover-fallback[hidden]{display:none!important}

/* V5.21: optional SKOS Collection navigation. Collections and structural
   concepts are disclosure/navigation rows; only real facet concepts receive
   checkboxes. */
.ksw-ve-tree-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}
.ksw-ve-tree-action{display:inline-flex;align-items:center;border:1px solid #d1d5db;border-radius:0;background:#fff;padding:.375rem .75rem;font-size:.75rem;font-weight:600;color:#374151;cursor:pointer}
.ksw-ve-tree-action:hover{background:#f9fafb}.ksw-ve-tree-action:focus-visible{outline:2px solid #111827;outline-offset:2px}
.ksw-ve-tree{display:grid;gap:.25rem;max-width:64rem}
.ksw-ve-tree-node{min-width:0}
.ksw-ve-tree-row{display:flex;min-height:2.1rem;align-items:center;gap:.45rem}
.ksw-ve-tree-toggle{display:inline-flex;width:1.7rem;height:1.7rem;flex:0 0 1.7rem;align-items:center;justify-content:center;border:0;border-radius:0;background:transparent;color:#4b5563;cursor:pointer}
.ksw-ve-tree-toggle:hover{background:#e5e7eb}.ksw-ve-tree-toggle:focus-visible{outline:2px solid #111827;outline-offset:1px}
.ksw-ve-tree-caret{display:block;font-size:1.25rem;line-height:1;transform:rotate(90deg);transition:transform .12s ease}
.ksw-ve-tree-toggle[aria-expanded="false"] .ksw-ve-tree-caret{transform:rotate(0deg)}
.ksw-ve-tree-spacer{display:inline-block;width:1.7rem;flex:0 0 1.7rem}
.ksw-ve-tree-children{margin-left:.8rem;padding-left:1.1rem;border-left:1px solid #d1d5db}
.ksw-ve-tree-navigation-label{font-size:.875rem;font-weight:700;color:#111827}
.ksw-ve-tree-node--ordered_collection>.ksw-ve-tree-row>.ksw-ve-tree-navigation-label::after{content:" ↕";font-weight:400;color:#6b7280}
.ksw-ve-tree-structural-label{font-size:.82rem;font-weight:600;color:#4b5563}
.ksw-ve-tree-option{display:inline-flex;min-width:0;align-items:center;gap:.45rem;border:1px solid #d1d5db;border-radius:0;background:#fff;padding:.34rem .7rem;font-size:.78rem;font-weight:500;color:#374151;cursor:pointer;box-shadow:0 1px 2px rgba(0,0,0,.03)}
.ksw-ve-tree-option:hover{background:#f9fafb}.ksw-ve-tree-option input{width:1rem;height:1rem;flex:0 0 auto;accent-color:#111827}.ksw-ve-tree-option span{min-width:0}.ksw-ve-tree-option output{color:#6b7280}
.ksw-ve-tree-node--unassigned{margin-top:.35rem;padding-top:.35rem;border-top:1px dashed #d1d5db}
.ksw-ve-tree-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(prefers-reduced-motion:reduce){.ksw-ve-tree-caret{transition:none}}
.ksw-ve-tree-option.is-empty{opacity:.55}

/* V5.31: gzp_catalog-inspired overview layouts and image-first popup variants. */
.ksw-ve-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(1rem,2.2vw,2rem);align-items:stretch}
.ksw-ve-grid-item{min-width:0;height:100%}
.ksw-ve-grid-item>.semantic-display-card{height:100%}
@media(min-width:40rem){
  .ksw-ve-grid--2,.ksw-ve-grid--3,.ksw-ve-grid--4,.ksw-ve-grid--5,.ksw-ve-grid--featured{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:64rem){
  .ksw-ve-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ksw-ve-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ksw-ve-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
  .ksw-ve-grid--5{grid-template-columns:repeat(5,minmax(0,1fr))}
  .ksw-ve-grid--featured{grid-template-columns:repeat(4,minmax(0,1fr))}
  .ksw-ve-grid--featured>.ksw-ve-grid-item:nth-child(10n+3),
  .ksw-ve-grid--featured>.ksw-ve-grid-item:nth-child(10n+4){grid-column:span 2}
  .ksw-ve-grid--featured>.ksw-ve-grid-item:nth-child(10n+3) .semantic-display-card-image,
  .ksw-ve-grid--featured>.ksw-ve-grid-item:nth-child(10n+4) .semantic-display-card-image{aspect-ratio:16/9}
}
@media(min-width:82rem){.ksw-ve-grid--5{gap:1.25rem}}

.ksw-ve-popup{border:0;background:transparent;color:#20251f}
.ksw-ve-popup::backdrop{background:rgba(18,22,18,.78);backdrop-filter:blur(2px)}
.ksw-ve-popup-viewport{padding:clamp(.5rem,2vw,2rem)}
.ksw-ve-popup-shell{--ve-paper:#f7f4ed;--ve-paper-2:#eee9de;--ve-ink:#1f2e22;--ve-muted:#687067;--ve-line:#d6d0c3;--ve-accent:#35533a;position:relative;width:min(92rem,100%);height:min(92dvh,58rem);overflow:hidden;border:1px solid rgba(64,70,61,.28);border-radius:0;background:var(--ve-paper);box-shadow:0 1.6rem 5rem rgba(0,0,0,.28)}
.ksw-ve-popup-close{top:.9rem;right:.9rem;width:2.65rem;height:2.65rem;border:1px solid rgba(255,255,255,.38);border-radius:0;background:rgba(27,34,29,.82);color:#fff;font:400 1.7rem/1 Arial,sans-serif;box-shadow:0 .2rem .7rem rgba(0,0,0,.2)}
.ksw-ve-popup-media{min-width:0;min-height:0;overflow:hidden;background:var(--ve-paper-2)}
.ksw-ve-popup-gallery{display:flex;width:100%;height:100%;min-height:0;max-height:none;flex-direction:column;background:var(--ve-paper-2);color:var(--ve-ink)}
.ksw-ve-popup-gallery-stage{position:relative;display:flex;min-height:0;flex:1;align-items:stretch;justify-content:center;overflow:hidden}
.ksw-ve-popup-slide{display:none;width:100%;height:100%;min-height:0;margin:0;grid-template-rows:minmax(0,1fr) auto auto}
.ksw-ve-popup-slide.is-active{display:grid}
.ksw-ve-popup-image-frame{display:flex;width:100%;height:100%;min-height:0;max-height:none;align-items:center;justify-content:center;overflow:hidden;padding:clamp(.65rem,1.6vw,1.4rem);background:linear-gradient(145deg,#eee9dd,#e3dccf)}
.ksw-ve-popup-image{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;box-shadow:0 .5rem 2rem rgba(48,44,34,.12)}
.ksw-ve-popup-caption{margin:0;padding:.55rem 1rem;border-top:1px solid rgba(72,72,62,.14);background:#f2eee6;color:#666c64;text-align:center;font-size:.78rem;line-height:1.4}
.ksw-ve-popup-gallery-prev,.ksw-ve-popup-gallery-next{position:absolute;top:50%;z-index:6;display:inline-flex;width:2.7rem;height:2.7rem;transform:translateY(-50%);align-items:center;justify-content:center;border:1px solid rgba(47,55,48,.16);border-radius:0;background:rgba(255,255,255,.9);color:#253229;font:400 2rem/1 Georgia,serif;box-shadow:0 .2rem .7rem rgba(0,0,0,.14);cursor:pointer}
.ksw-ve-popup-gallery-prev{left:.75rem}.ksw-ve-popup-gallery-next{right:.75rem}
.ksw-ve-popup-gallery-thumbnails{display:flex;gap:.55rem;overflow-x:auto;padding:.65rem .8rem;border-top:1px solid var(--ve-line);background:#f4f0e8}
.ksw-ve-popup-gallery-thumb{width:4.6rem;height:3.8rem;flex:none;overflow:hidden;border:2px solid transparent;border-radius:0;padding:0;background:#ddd6ca;cursor:pointer}
.ksw-ve-popup-gallery-thumb.is-active{border-color:var(--ve-accent);box-shadow:0 0 0 1px var(--ve-accent)}
.ksw-ve-popup-gallery-thumb img{width:100%;height:100%;object-fit:cover}

.ksw-ve-manifest-thumbnails{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.65rem .8rem;border-top:1px solid var(--ve-line);background:#f8f5ef}
.ksw-ve-manifest-thumb-list{display:flex;gap:.55rem;overflow-x:auto;scrollbar-width:thin}
.ksw-ve-manifest-thumb{position:relative;width:4.9rem;height:4.1rem;flex:none;overflow:hidden;border:2px solid transparent;border-radius:0;padding:0;background:#e3ddd1;cursor:pointer;box-shadow:0 1px 2px rgba(0,0,0,.08)}
.ksw-ve-manifest-thumb:hover{border-color:#7f8e80}.ksw-ve-manifest-thumb.is-active{border-color:var(--ve-accent);box-shadow:0 0 0 1px var(--ve-accent)}
.ksw-ve-manifest-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.ksw-ve-manifest-thumb span{display:grid;width:100%;height:100%;place-items:center;padding:.25rem;color:#4f574f;font-size:.7rem;text-align:center}
.ksw-ve-manifest-count{min-width:3.1rem;color:var(--ve-muted);font-size:.76rem;font-weight:650;text-align:right;white-space:nowrap}

.ksw-ve-popup-content{min-width:0;min-height:0;overflow-y:auto;background:var(--ve-paper);padding:clamp(1.5rem,3vw,3rem)}
.ksw-ve-popup-header{padding-right:2.5rem}
.ksw-ve-popup-kicker,.ksw-ve-popup-temporal{margin:0 0 .55rem;color:#697267;font-size:.78rem;font-weight:650;letter-spacing:.045em;text-transform:uppercase}
.ksw-ve-popup-title{margin:0;color:var(--ve-ink);font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.8rem,3.2vw,2.8rem);font-weight:500;line-height:1.08;letter-spacing:-.025em}
.ksw-ve-popup-title::after{content:"";display:block;width:3.4rem;height:1px;margin:1rem 0 0;background:#8a9a87}
.ksw-ve-popup-lead{margin:1.25rem 0 0;color:#3d463e;font-size:1rem;line-height:1.68}
.ksw-ve-popup-lead>:first-child{margin-top:0}.ksw-ve-popup-lead>:last-child{margin-bottom:0}
.ksw-ve-popup-meta{margin-top:1.6rem;padding-top:.35rem;border-top:1px solid var(--ve-line)}
.ksw-ve-popup-meta dl,.ksw-ve-popup-meta-list{margin:0}
.ksw-ve-popup-meta dl>div,.ksw-ve-popup-meta-list>div{display:grid;grid-template-columns:minmax(6.5rem,9.5rem) minmax(0,1fr);gap:1rem;padding:.7rem 0;border-bottom:1px solid rgba(100,100,90,.12)}
.ksw-ve-popup-meta dt,.ksw-ve-popup-meta-list dt{color:var(--ve-muted);font-size:.78rem;font-weight:650}
.ksw-ve-popup-meta dd,.ksw-ve-popup-meta-list dd{margin:0;color:#263027;font-size:.86rem;line-height:1.45}
.ksw-ve-popup a{color:#27462e;text-decoration-thickness:.08em;text-underline-offset:.18em}
.ksw-ve-popup-section{margin-top:1.8rem;padding-top:1.35rem;border-top:1px solid var(--ve-line)}
.ksw-ve-popup-section h3{margin:0 0 .85rem;color:var(--ve-ink);font-family:Georgia,"Times New Roman",serif;font-size:1.25rem;font-weight:500}
.ksw-ve-popup-description{color:#3e463f;font-size:.92rem;line-height:1.65}.ksw-ve-popup-description img{max-width:100%;height:auto}
.ksw-ve-popup-related{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.75rem}
.ksw-ve-popup-related article{overflow:hidden;border:1px solid var(--ve-line);border-radius:0;background:#fbf9f4}.ksw-ve-popup-related img{display:block;width:100%;height:7.5rem;object-fit:cover}.ksw-ve-popup-related article>div{padding:.7rem}.ksw-ve-popup-related h4{margin:0 0 .4rem;font-family:Georgia,"Times New Roman",serif;font-size:.95rem;font-weight:500}.ksw-ve-popup-related a{font-size:.78rem}
.ksw-ve-popup-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.7rem;padding-top:1.2rem;border-top:1px solid var(--ve-line)}
.ksw-ve-popup-actions a{display:inline-flex;align-items:center;gap:.6rem;border:1px solid #9ea89c;border-radius:0;background:#edf0e8;padding:.65rem .85rem;color:#29432e;font-size:.8rem;font-weight:700;text-decoration:none}.ksw-ve-popup-actions a:hover{background:#e2e8dd}

.ksw-ve-popup-portal{display:contents}
.ksw-ve-popup--profile .ksw-ve-popup-shell{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(20rem,.65fr);grid-template-rows:minmax(0,1fr)}
.ksw-ve-popup--profile .ksw-ve-popup-media{grid-column:1;grid-row:1}
.ksw-ve-popup--profile .ksw-ve-popup-content{grid-column:2;grid-row:1}
.ksw-ve-popup--profile .ksw-ve-popup-gallery{min-height:0}
.ksw-ve-popup--profile .ksw-ve-popup-image-frame{padding:clamp(1rem,2vw,2rem)}

.ksw-ve-popup--minimal .ksw-ve-popup-shell{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(19rem,.82fr);grid-template-rows:minmax(0,1fr)}
.ksw-ve-popup--minimal .ksw-ve-popup-media{grid-column:1;grid-row:1}
.ksw-ve-popup--minimal .ksw-ve-popup-content{grid-column:2;grid-row:1}
.ksw-ve-popup--minimal .ksw-ve-popup-image-frame{padding:clamp(1rem,2vw,2rem)}

.ksw-ve-popup--gallery .ksw-ve-popup-shell{display:grid;grid-template-rows:minmax(0,1fr) auto;height:min(94dvh,66rem);width:min(94rem,100%)}
.ksw-ve-popup--gallery .ksw-ve-popup-media{min-height:24rem}
.ksw-ve-popup--gallery .ksw-ve-popup-content{overflow:visible;padding:1.25rem clamp(1.25rem,3vw,2.5rem) 1.5rem;border-top:1px solid var(--ve-line)}
.ksw-ve-popup--gallery .ksw-ve-popup-gallery-summary{display:grid;grid-template-columns:minmax(14rem,.8fr) minmax(0,1.2fr);gap:clamp(1rem,3vw,3rem);align-items:start}
.ksw-ve-popup--gallery .ksw-ve-popup-title{font-size:clamp(1.55rem,2.6vw,2.25rem)}
.ksw-ve-popup--gallery .ksw-ve-popup-title::after{margin-top:.65rem}
.ksw-ve-popup-meta-inline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin:.15rem 0 0}
.ksw-ve-popup-meta-inline>div{min-width:0;padding-left:.8rem;border-left:1px solid var(--ve-line)}
.ksw-ve-popup-meta-inline dt{color:var(--ve-muted);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.ksw-ve-popup-meta-inline dd{margin:.25rem 0 0;color:#283329;font-size:.82rem;line-height:1.35}
.ksw-ve-popup--gallery .ksw-ve-popup-lead{margin:.85rem 0 0;font-size:.9rem;line-height:1.55}
.ksw-ve-popup-gallery-details{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.9rem}
.ksw-ve-popup-disclosure{flex:1 1 14rem;border-top:1px solid var(--ve-line);padding-top:.55rem}.ksw-ve-popup-disclosure summary{cursor:pointer;color:#39473b;font-size:.8rem;font-weight:700}.ksw-ve-popup-disclosure[open] summary{margin-bottom:.65rem}.ksw-ve-popup-disclosure .ksw-ve-popup-description{font-size:.84rem}.ksw-ve-popup-disclosure .ksw-ve-popup-meta-list>div{grid-template-columns:minmax(6rem,8rem) 1fr;padding:.45rem 0}
.ksw-ve-popup-actions--gallery{margin-top:.8rem;padding-top:.8rem}

@media(max-width:56rem){
  .ksw-ve-popup-viewport{padding:0}
  .ksw-ve-popup-shell{width:100%;height:100dvh;max-width:none;max-height:none;border:0;border-radius:0}
  .ksw-ve-popup--profile .ksw-ve-popup-shell{grid-template-columns:1fr;grid-template-rows:minmax(48dvh,1fr) minmax(0,.9fr)}
  .ksw-ve-popup--profile .ksw-ve-popup-media{grid-column:1;grid-row:1}.ksw-ve-popup--profile .ksw-ve-popup-content{grid-column:1;grid-row:2}
  .ksw-ve-popup--minimal .ksw-ve-popup-shell{grid-template-columns:1fr;grid-template-rows:minmax(48dvh,1fr) minmax(0,.9fr)}
  .ksw-ve-popup--minimal .ksw-ve-popup-media{grid-column:1;grid-row:1}.ksw-ve-popup--minimal .ksw-ve-popup-content{grid-column:1;grid-row:2}
  .ksw-ve-popup--gallery .ksw-ve-popup-shell{height:100dvh;grid-template-rows:minmax(52dvh,1fr) auto}
  .ksw-ve-popup--gallery .ksw-ve-popup-content{max-height:48dvh;overflow-y:auto}
  .ksw-ve-popup--gallery .ksw-ve-popup-gallery-summary{grid-template-columns:1fr}.ksw-ve-popup-meta-inline{grid-template-columns:1fr 1fr}.ksw-ve-popup-meta-inline>div:nth-child(3){grid-column:1/-1}
  .ksw-ve-popup-meta dl>div,.ksw-ve-popup-meta-list>div{grid-template-columns:1fr;gap:.15rem}
}
@media(max-width:34rem){.ksw-ve-popup-content{padding:1.25rem}.ksw-ve-popup-meta-inline{grid-template-columns:1fr}.ksw-ve-popup-meta-inline>div:nth-child(3){grid-column:auto}.ksw-ve-manifest-thumb{width:4.3rem;height:3.6rem}}
@media(prefers-reduced-motion:reduce){.ksw-ve-popup *{scroll-behavior:auto!important}}

.ksw-ve-overview,.ksw-ve-static-overview{margin-top:1.5rem}

/* V5.32: square exhibition geometry, matching the supplied editorial templates. */
.ksw-ve-grid-item>.semantic-display-card,
.ksw-ve-grid-item .semantic-display-card-image,
.ksw-ve-grid-item .semantic-display-card-image-element,
.ksw-ve-static-card-image-wrap,
.ksw-ve-static-card-image,
.ksw-ve-static-card,
.ksw-ve-static-controls,
.ksw-ve-static-filter-toggle,
.ksw-ve-static-clear,
.ksw-ve-static-option,
.ksw-ve-static-search input,
.ksw-ve-static-pagination button,
.ksw-ve-page-button,
.ksw-ve-page-prev,
.ksw-ve-page-next,
.ksw-ve-popup-shell,
.ksw-ve-popup-close,
.ksw-ve-popup-gallery-prev,
.ksw-ve-popup-gallery-next,
.ksw-ve-popup-gallery-thumb,
.ksw-ve-manifest-thumb,
.ksw-ve-popup-related article,
.ksw-ve-popup-actions a,
.ksw-ve-static-detail-shell,
.ksw-ve-static-close,
.ksw-ve-static-gallery-prev,
.ksw-ve-static-gallery-next,
.ksw-ve-static-thumb,
.ksw-ve-static-related-card,
.ksw-ve-static-actions a,
.ksw-ve-tree-action,
.ksw-ve-tree-toggle,
.ksw-ve-tree-option,
.ksw-ve-static-tree-action {
  border-radius:0;
}
.ksw-ve-static{--ve-radius:0}


/* V5.41: keep the responsive filter drawer aligned with the first result row. */
.ksw-ve-overview-wrap>.ksw-ve-overview{margin-top:0}

/* V5.42: popup dialogs live outside the positioned result overlay and all package popup layouts share the improved shell. */

/* Vocabulary editorial notes (skos:note). Keyword/navigation notes stay out of the
   filter flow and are opened explicitly from a compact question-mark control. */
.ksw-ve-filter-option-wrap{position:relative;display:inline-flex;align-items:center;gap:.28rem;min-width:0}
.ksw-ve-note-popover-wrap{position:relative;display:inline-flex;flex:0 0 auto;align-items:center}
.ksw-ve-note-toggle{display:inline-flex;width:1.22rem;height:1.22rem;align-items:center;justify-content:center;border:1px solid #9ca3af;border-radius:50%;background:#fff;color:#4b5563;padding:0;font:700 .72rem/1 Arial,sans-serif;cursor:pointer}
.ksw-ve-note-toggle:hover{border-color:#4b5563;background:#f3f4f6;color:#111827}.ksw-ve-note-toggle:focus-visible{outline:2px solid #111827;outline-offset:2px}
.ksw-ve-note-popover{position:fixed;z-index:80;top:0;left:0;width:min(22rem,calc(100vw - 3rem));max-height:min(22rem,60vh);overflow:auto;border:1px solid #d1d5db;border-radius:0;background:#fff;padding:.7rem .8rem;color:#374151;font-size:.78rem;font-weight:400;line-height:1.5;box-shadow:0 .7rem 2rem rgba(17,24,39,.18)}
.ksw-ve-note-popover[hidden]{display:none!important}.ksw-ve-note-popover p{margin:.25rem 0}.ksw-ve-note-popover a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.ksw-ve-vocabulary-note{margin-top:.35rem;font-size:.9em;line-height:1.5;color:#4b5563}
.ksw-ve-group-note{margin:.35rem 0 .6rem;max-width:52rem;font-size:.82rem;line-height:1.5;color:#4b5563}


/* V5.50: selected facet category cards can also deselect their category. */
.ksw-ve-selected-categories{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:1rem;margin:1.5rem 0 1.75rem}
.ksw-ve-selected-categories[hidden]{display:none}
.ksw-ve-category-card{position:relative;display:flex;min-width:0;flex-direction:column;border:1px solid var(--ve-line,#d7d5cf);background:var(--ve-paper,#fff);padding:1.1rem 1.2rem;box-shadow:0 .35rem 1rem rgba(15,23,42,.06)}
.ksw-ve-category-card-remove{position:absolute;top:.65rem;right:.65rem;display:inline-flex;width:2rem;height:2rem;align-items:center;justify-content:center;border:1px solid #c7ccc4;background:#fff;color:#475569;font:700 1.25rem/1 sans-serif;cursor:pointer}.ksw-ve-category-card-remove:hover{background:#edf0e8;color:#1f2937}.ksw-ve-category-card-remove:focus-visible{outline:2px solid #29432e;outline-offset:2px}.ksw-ve-category-card-title{padding-right:2.3rem;margin:0;color:var(--ve-ink,#1f2937);font-family:Georgia,"Times New Roman",serif;font-size:1.2rem;font-weight:500;line-height:1.25}
.ksw-ve-category-card-note{margin:.7rem 0 0;color:#4b5563;font-size:.9rem;line-height:1.55;white-space:pre-line}
.ksw-ve-category-card-note>:first-child{margin-top:0}.ksw-ve-category-card-note>:last-child{margin-bottom:0}
.ksw-ve-category-card-actions{margin-top:auto;padding-top:1rem}
.ksw-ve-category-card-actions a{display:inline-flex;border:1px solid #9ea89c;background:#edf0e8;padding:.45rem .7rem;color:#29432e;font-size:.78rem;font-weight:700;text-decoration:none}
.ksw-ve-category-card-actions a:hover{background:#e2e8dd}

/* Card metadata: compact physical dimensions and clickable facet keywords. */
.ksw-ve-card-measurements{padding:.38rem .75rem .42rem;border-top:1px solid var(--ve-line,#e5e7eb);background:#fafafa;color:#6b7280;font-size:.72rem;line-height:1.25;text-align:right}
.ksw-ve-card-keywords{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.9rem}
.ksw-ve-card-keyword{display:inline-flex;align-items:center;border:1px solid #c7ccc4;background:#f6f7f4;padding:.28rem .5rem;color:#39473b;font-family:inherit;font-size:.72rem;font-weight:600;line-height:1.2;cursor:pointer;text-align:left}
.ksw-ve-card-keyword:hover{background:#e8ece5;color:#1f2937}.ksw-ve-card-keyword:focus-visible{outline:2px solid #29432e;outline-offset:2px}
.ksw-ve-category-card--with-banner{padding:0;overflow:hidden}
.ksw-ve-category-card-banner{width:100%;aspect-ratio:16/7;overflow:hidden;background:#f2f2f2}
.ksw-ve-category-card-banner img{display:block;width:100%;height:100%;object-fit:cover}
.ksw-ve-category-card--with-banner .ksw-ve-category-card-content{display:flex;flex:1 1 auto;flex-direction:column;padding:1.1rem 1.2rem}

/* V5.54.5: explicit separate-block filter stack.
   Block layouts do not use .ksw-ve-controls, so the continuous panel border,
   background and padding cannot leak into them. Every item in filter_blocks is
   rendered as a direct sibling fieldset. */
.ksw-ve-filter-stack{position:relative;z-index:10;width:100%;min-width:0;margin:0;padding:0;border:0;background:transparent;box-shadow:none}
.ksw-ve-filter-stack-search{max-width:none;margin:0 0 .85rem;border:1px solid #d1d5db;background:#fff;padding:.85rem .9rem;box-shadow:0 1px 3px rgba(17,24,39,.08)}
.ksw-ve-filter-stack-actions{margin:0 0 .65rem}
.ksw-ve-filter-stack-tree-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 .85rem}
.ksw-ve-filter-block{min-width:0;margin:0 0 .85rem;border:1px solid #d1d5db;background:#fff;padding:.9rem 1rem;box-shadow:0 1px 3px rgba(17,24,39,.08)}
.ksw-ve-filter-block:last-of-type{margin-bottom:0}
.ksw-ve-filter-block-legend{max-width:100%;padding:0;color:#111827;font-size:.82rem;font-weight:700;line-height:1.35}
.ksw-ve-filter-block>.ksw-ve-group-note{margin-top:.45rem}
.ksw-ve-filter-block>.ksw-ve-tree{margin-top:.65rem}
.ksw-ve-filter-block--plain>.ksw-ve-tree{margin-top:0}
.ksw-ve-filter-block-options{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.65rem}
.ksw-ve-filter-block--plain>.ksw-ve-filter-block-options{margin-top:0}
.ksw-ve-filter-stack>noscript{display:block;margin-top:.85rem}
