/* Bloemenportret (sjabloon alp-bloemenportret): aanvulling op sterrenkaart.css (zelfde opmaak en klassen, alles binnen .alp-sk).
   Geen SVG-filters, blend-modes of backdrop-filter (Safari-tekenfout, zie CLAUDE.md). */
.alp-gb .sk-sheet,.alp-gb .sk-zoom__sheet{background:#f7f3ea;cursor:default}
.alp-gb .sk-art--print .sk-frame,.alp-gb .sk-art--print .sk-mat{background:#f7f3ea}
.alp-gb .sk-sheet canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:pan-y}
.alp-gb .sk-sheet canvas.is-grab{cursor:grab}
.alp-gb .sk-sheet canvas.is-drag{cursor:grabbing;touch-action:none}
.alp-gb .sk-sheet .sk-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;margin:0}
.alp-gb .sk-sheet .sk-loading[hidden]{display:none}
.alp-gb .sk-note.is-error{color:var(--fout-700)}

/* Personen */
.gb-people{list-style:none!important;margin:0 0 .75rem!important;padding:0!important;display:grid;gap:.6rem;counter-reset:gb}
.gb-person{border:1px solid var(--line);border-radius:4px;padding:.65rem .7rem .55rem;background:var(--papier-0,#fff);margin:0!important;counter-increment:gb;position:relative}
.gb-person__top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 2rem;gap:.45rem;align-items:center}
.alp-gb .gb-weg{all:unset;cursor:pointer;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;font-size:1.25rem;line-height:1;color:var(--inkt-600);border-radius:3px}
.alp-gb .gb-weg:hover,.alp-gb .gb-weg:focus-visible{background:var(--papier-100);color:var(--fout-700)}
.alp-gb .gb-weg:disabled{opacity:.3;cursor:default;background:none}
.gb-flowers{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.5rem}
.alp-gb .gb-flower{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:.3rem;font-size:.8125rem;line-height:1.2;color:var(--inkt-900);border:1px solid var(--line);border-radius:999px;padding:.15rem .7rem .15rem .25rem;background:#fff}
.alp-gb .gb-flower img{width:18px;height:28px;object-fit:contain;object-position:top;display:block}
.alp-gb .gb-flower[aria-checked=true]{border-color:var(--goud-600);background:var(--goud-100)}
.alp-gb .gb-flower:focus-visible{outline:2px solid var(--goud-400);outline-offset:1px}
.gb-tools{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem;margin-top:.5rem}
.alp-gb .gb-tool{all:unset;cursor:pointer;font-size:.8125rem;line-height:1.2;color:var(--inkt-900);border:1px solid var(--line);border-radius:3px;padding:.25rem .55rem;background:#fff}
.alp-gb .gb-tool:hover:not(:disabled),.alp-gb .gb-tool:focus-visible{border-color:var(--inkt-700)}
.alp-gb .gb-tool:disabled{opacity:.35;cursor:default}
.alp-gb .gb-tool[aria-pressed=true]{border-color:var(--goud-600);background:var(--goud-100)}
.alp-gb .gb-tool[hidden]{display:none}
.alp-sk label.gb-pos{display:flex;flex-direction:row;align-items:center;gap:.3rem;flex:1;min-width:150px;margin:0 0 0 .25rem;font-size:.625rem;color:var(--inkt-600)}
.alp-gb input[type=range]{-webkit-appearance:none;appearance:none;flex:1;min-width:0;height:1.5rem;background:transparent!important;border:0!important;padding:0!important;margin:0;cursor:pointer}
.alp-gb input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:2px;background:var(--papier-300)}
.alp-gb input[type=range]::-moz-range-track{height:4px;border-radius:2px;background:var(--papier-300)}
.alp-gb input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:1.05rem;height:1.05rem;border-radius:50%;background:var(--goud-700);border:2px solid #fff;box-shadow:0 1px 3px rgba(0,0,0,.25);margin-top:calc(2px - .525rem)}
.alp-gb input[type=range]::-moz-range-thumb{width:1.05rem;height:1.05rem;border-radius:50%;background:var(--goud-700);border:2px solid #fff;box-shadow:0 1px 3px rgba(0,0,0,.25)}
.alp-gb input[type=range]:focus-visible{outline:2px solid var(--goud-400)!important;outline-offset:2px}
.alp-gb .gb-add{width:100%;border-style:dashed!important;font-weight:500!important}
.alp-gb .gb-add:disabled{opacity:.5;cursor:default}
.gb-shuffle{display:flex;align-items:end}
.gb-shuffle .sk-btn{width:100%}
@media (max-width:480px){.gb-person__top{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 1.75rem}.alp-sk label.gb-pos{flex-basis:100%;margin:.15rem 0 0}}
.gb-beheer{margin-top:1.25rem;border:1px dashed var(--goud-400);border-radius:4px;padding:.75rem .9rem;background:var(--goud-100)}
.alp-sk .gb-beheer p{margin:0;font-size:.8125rem;line-height:1.4}
.alp-sk .gb-beheer .gb-beheer__kop{font-weight:600;color:var(--inkt-900)}
.alp-sk .gb-beheer .gb-beheer__uitleg{color:var(--inkt-600);margin:.2rem 0 .6rem}
.gb-beheer__rij{display:flex;flex-wrap:wrap;gap:.5rem}
.alp-gb .gb-beheer .sk-btn{font-size:.8125rem!important;padding:.45rem .8rem!important}
