.pk{position:relative}
.pk-list{position:absolute;z-index:20;left:0;right:0;top:calc(100% + 4px);max-height:min(360px,50vh);overflow:auto;margin:0;padding:6px;list-style:none;background:#fff;border:1px solid var(--field);border-radius:var(--r-md);box-shadow:0 8px 24px rgba(27,35,48,.14)}
.pk-list[hidden]{display:none}
.pk-g{position:sticky;top:-6px;z-index:1;margin:6px -6px 2px;padding:10px 16px;font-size:15px;font-weight:700;color:var(--ink);background:var(--tint);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.pk-g:first-child{margin-top:-6px;border-top:0;border-radius:var(--r-md) var(--r-md) 0 0}
.pk-o{display:flex;justify-content:space-between;gap:12px;align-items:baseline;padding:10px 10px 10px 16px;border-radius:8px;cursor:pointer;line-height:1.3}
.pk-o small{color:var(--mute);font-size:12px;white-space:nowrap}
.pk-o[aria-selected="true"]{background:var(--tint);color:var(--blued)}
/* Hover bare med mus. På iPhone gjør hover-stil at første trykk bare «holder over», og det trengs to trykk. */
@media (hover:hover){.pk-o:hover{background:var(--tint);color:var(--blued)}}
.pk-list,.pk-o{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.pk-empty{padding:12px 10px;color:var(--mute)}
.pk-clear{margin-top:6px;font-size:14px}
.pm-grp{border:1px solid var(--line);border-radius:var(--r-md);background:#fff}
.pm-grp>summary{cursor:pointer;padding:12px 14px;font-weight:700;display:flex;align-items:center;gap:12px;list-style:none}
.pm-grp>summary::-webkit-details-marker{display:none}
.pm-grp>summary>span:first-child{flex:1}
.pm-grp>summary::after{content:'+';flex:none;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:50%;font-size:18px;font-weight:600;line-height:1;color:var(--blued)}
.pm-grp[open]>summary::after{content:'\2212'}
.pm-grp>summary .pm-n{font-weight:600;color:var(--blued);font-size:13px}
.pm-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:2px 16px;padding:4px 14px 14px}
.pm-item{display:flex;gap:10px;align-items:flex-start;padding:8px 0;line-height:1.3}
.pm-item input{margin-top:3px;width:18px;height:18px;flex:none}
.pm-item[hidden],.pm-grp[hidden]{display:none}
.pk .in{scroll-margin-top:84px}
