
.pm-logo {
    display: inline-flex; align-items: center; justify-content: center;
    border-radius: 8px; background: var(--pm, #888); color: #fff;
    font-weight: 700; line-height: 1; flex: 0 0 auto; overflow: hidden;
    box-shadow: 0 2px 6px rgba(37, 99, 235, .22);
}
.pm-logo i, .pm-logo svg { font-size: 1em; display: block; }
.pm-section { margin-top: 14px; }
.pm-section .pm-label,
.field-label.pm-label { font-size: 13px; color: var(--text-secondary, #4b6a9b); margin-bottom: 6px; }

.pm-list { display: flex; flex-wrap: wrap; gap: 10px; margin: 6px 0 2px; }
.pm-opt {
    display: flex; align-items: center; gap: 9px;
    padding: 9px 13px; border-radius: 12px; cursor: pointer;
    border: 1px solid var(--border, rgba(37, 99, 235, .18));
    background: var(--bg-secondary, #fff);
    color: var(--text-primary, #16305c);
    transition: border-color .15s, background .15s, box-shadow .15s, transform .15s;
    min-width: 150px; user-select: none;
}
.pm-opt:hover { border-color: var(--accent, #2563eb); transform: translateY(-1px); }
.pm-opt.on {
    border-color: var(--accent, #2563eb);
    background: rgba(37, 99, 235, .10);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, .12);
}
.pm-opt input { position: absolute; opacity: 0; width: 0; height: 0; pointer-events: none; }
.pm-name { font-size: 14px; font-weight: 600; }
.pm-tag {
    margin-left: auto; font-size: 11px; padding: 2px 8px; border-radius: 999px;
    color: #16a34a; background: rgba(34, 197, 94, .12); border: 1px solid rgba(34, 197, 94, .28);
}
.pm-tag.ghost { color: #c2740a; background: rgba(245, 166, 35, .14); border-color: rgba(245, 166, 35, .3); }


.stock-warn {
    display: inline-flex; align-items: center; gap: 5px;
    font-size: 11.5px; font-weight: 600; color: #d9480f;
    background: rgba(255, 122, 69, .12); border: 1px solid rgba(255, 122, 69, .3);
    padding: 2px 8px; border-radius: 999px;
}
.stock-left { font-size: 11.5px; color: var(--text-muted, #8aa6cd); }
.cart-line.over { border-color: rgba(229, 72, 77, .45); background: rgba(229, 72, 77, .06); }
.cart-line.over .cl-name { color: #d9480f; }
