.bw-uv { --bw-line:rgba(85,80,73,.38); --bw-soft:rgba(85,80,73,.19); background:transparent; color:inherit; font:inherit; width:100%; min-width:0; }
.bw-uv *, .bw-uv *::before { box-sizing:border-box; }
.bw-uv [hidden] { display:none!important; }
.bw-uv .bw-section { margin:0 0 1rem; padding:clamp(.7rem,2.5vw,1.5rem); border:1px solid var(--bw-line); border-radius:8px; background:transparent; }
.bw-uv .bw-section h2 { font:inherit; font-size:1.16rem; font-weight:600; text-align:center; margin:0 0 1.25rem; }
.bw-uv .bw-rail + .bw-rail { border-top:1px solid var(--bw-soft); margin-top:.9rem; padding-top:.9rem; }
.bw-uv .bw-head { display:flex; align-items:center; justify-content:space-between; gap:.5rem; margin-bottom:.45rem; }
.bw-uv .bw-head h3, .bw-uv .bw-field { font:inherit; font-size:.94rem; font-weight:600; margin:0; }
.bw-uv .bw-field { display:flex; align-items:center; flex-wrap:wrap; gap:.45rem .7rem; }
.bw-uv select,.bw-uv button { font:inherit; color:inherit; letter-spacing:normal; text-transform:none; }
.bw-uv select { background:transparent; border:1px solid var(--bw-line); border-radius:5px; padding:.4rem .5rem; width:auto; max-width:100%; }
.bw-uv option { background:Canvas; color:CanvasText; }
.bw-uv .bw-arrows { display:flex; gap:.3rem; }
.bw-uv .bw-arrows button { background:transparent; border:1px solid var(--bw-line); border-radius:5px; width:2.2rem; height:2.2rem; padding:0; font:1.5rem/1 sans-serif; cursor:pointer; }
.bw-uv button:disabled { opacity:.5; cursor:default; }
.bw-uv .bw-track { --bw-count:5.35; display:grid; grid-auto-flow:column; gap:8px; grid-auto-columns:calc((100% - (var(--bw-count) - 1)*8px)/var(--bw-count)); overflow-x:auto; padding:5px 4px 8px; scrollbar-width:thin; scroll-snap-type:x proximity; }
.bw-uv button.bw-card { display:flex; flex-direction:column; align-items:center; align-self:stretch; gap:.35rem; background:transparent; color:inherit; min-width:0; margin:0; padding:.45rem .35rem .6rem; border:1px solid var(--bw-soft); border-radius:6px; text-align:center; cursor:pointer; scroll-snap-align:start; box-shadow:none; }
.bw-uv .bw-card[aria-pressed=true] { border-color:currentColor; box-shadow:inset 0 0 0 1px currentColor; transform:scale(1.025); background:rgba(100,100,90,.065); }
.bw-uv .bw-card:hover:not(:disabled) { border-color:currentColor; }
.bw-uv :focus-visible { outline:2px solid currentColor; outline-offset:1px; }
.bw-uv .bw-media { width:100%; aspect-ratio:1.32; display:grid; place-items:center; overflow:hidden; }
.bw-uv .bw-media img { display:block; height:100%; width:100%; object-fit:contain; }
.bw-uv .bw-title { font-size:.86rem; line-height:1.28; overflow-wrap:anywhere; hyphens:auto; }
.bw-uv small { font-size:.75rem; line-height:1.25; opacity:.75; }
.bw-uv figure { margin:0 auto; max-width:76rem; }
.bw-uv .bw-stage { position:relative; aspect-ratio:3/2; background:#e0e0c8; overflow:hidden; }
/* Mobile clips the left third of this same 1536 × 1024 scene. */
.bw-uv .bw-scene { position:absolute; top:0; right:0; height:100%; aspect-ratio:3/2; background:url("wald.webp") center/100% 100% no-repeat; }
.bw-uv .bw-arrangement { position:absolute; aspect-ratio:4/5; }
.bw-uv .bw-fuss .bw-arrangement { width:40%; left:43.3%; top:5.65%; }
.bw-uv .bw-krone .bw-arrangement { width:34.16667%; left:49.25%; top:5.9%; }
/* Shadow coordinates share the forest's coordinate system, including its mobile crop. */
.bw-uv .bw-scene::before { content:""; position:absolute; inset:0; pointer-events:none; }
.bw-uv .bw-fuss .bw-scene::before {
 background:radial-gradient(ellipse 10% 1.8% at 66.6% 56.4%,rgba(45,28,13,.45),transparent 100%),
            radial-gradient(ellipse 16.5% 3.9% at 68.3% 55.8%,rgba(60,38,16,.36) 18%,transparent 100%);
}
.bw-uv .bw-krone .bw-scene::before {
 background:radial-gradient(ellipse 3.4% .65% at 66.65% 57.25%,rgba(38,24,13,.62) 25%,transparent 100%),
            radial-gradient(ellipse 5.9% 1.15% at 67.65% 57.05%,rgba(58,37,18,.40) 12%,transparent 100%);
}
.bw-uv .bw-stage img { display:block; position:absolute; margin:0; padding:0; border:0; max-width:none; height:auto; box-shadow:none; border-radius:0; }
.bw-uv .bw-fuss .bw-urne { width:69.53125%; left:22.65625%; top:13.125%; }
.bw-uv .bw-krone .bw-urne { width:77.109375%; left:12.65625%; top:21%; }
.bw-uv .bw-stage .bw-overlay { width:100%; inset:0; }
.bw-uv figcaption { padding:.85rem .3rem 0; text-align:center; display:grid; gap:.25rem; font-size:.92rem; line-height:1.4; }
.bw-uv .bw-status { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
@media(max-width:639px) {
 .bw-uv .bw-stage { aspect-ratio:1; }
 .bw-uv .bw-track { --bw-count:3.35; }
 .bw-uv .bw-card .bw-title { font-size:.8rem; }
 .bw-uv .bw-head { flex-wrap:wrap; }
 .bw-uv .bw-field { font-size:.85rem; }
}

.bw-uv .bw-background { margin-bottom:.8rem; }
.bw-uv [data-hintergrund="friedhof"] .bw-scene { background-image:url("friedhof.webp"); }

.bw-uv .bw-rose-filters { display:flex; gap:.4rem; overflow-x:auto; padding:.8rem 2px; margin:.5rem 0; border-top:1px solid var(--bw-soft); }
.bw-uv .bw-rose-filters button { flex:none; background:transparent; color:inherit; border:1px solid var(--bw-line); border-radius:5px; padding:.35rem .6rem; cursor:pointer; }
.bw-uv .bw-rose-filters button[aria-pressed=true] { border-color:currentColor; box-shadow:inset 0 0 0 1px currentColor; background:rgba(100,100,90,.065); }
