.zp{margin-bottom:14px}
.zp label{display:block;margin-bottom:6px}
.zp-box{position:relative;display:flex;align-items:stretch;height:54px;border:1.5px solid #cfdfbf;border-radius:14px;background:#fff;transition:border-color .15s,box-shadow .15s}
.zp-box:focus-within{border-color:#46821c;box-shadow:0 0 0 3px rgba(70,130,28,.18)}
.zp-btn{display:flex;align-items:center;gap:8px;padding:0 12px 0 14px;border:0;border-right:1.5px solid #e3eed7;background:#f6f9f1;border-radius:12.5px 0 0 12.5px;color:#24391b;font:600 16px/1 inherit;cursor:pointer;white-space:nowrap}
.zp-btn[hidden]{display:none}
.zp-btn:hover{background:#eef6e3}
.zp-btn:focus-visible{outline:2px solid #46821c;outline-offset:-2px}
.zp-flag{width:24px;height:16px;object-fit:cover;border-radius:3px;box-shadow:0 0 0 1px rgba(0,0,0,.12)}
.zp-chev{opacity:.6;transition:transform .15s}
.zp-btn[aria-expanded=true] .zp-chev{transform:rotate(180deg)}
.zp-input{flex:1;min-width:0;border:0;background:transparent;padding:0 16px;font-size:16px;color:#24391b;outline:0;height:auto;margin:0}
.zp-menu{position:absolute;z-index:30;top:calc(100% + 6px);left:0;width:min(340px,calc(100vw - 32px));background:#fff;border:1.5px solid #cfdfbf;border-radius:14px;box-shadow:0 14px 38px rgba(36,57,27,.18);overflow:hidden}
.zp-menu[hidden]{display:none}
.zp-search{width:100%;height:46px;border:0;border-bottom:1.5px solid #e3eed7;padding:0 14px;font-size:16px;outline:0;background:#fff;color:#24391b;margin:0}
.zp-menu ul{list-style:none;margin:0;padding:4px;max-height:264px;overflow-y:auto}
.zp-menu li{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:9px;cursor:pointer;font-size:15px;color:#24391b}
.zp-menu li img{width:24px;height:16px;object-fit:cover;border-radius:3px;box-shadow:0 0 0 1px rgba(0,0,0,.12);flex:none}
.zp-menu li .zp-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zp-menu li .zp-code{color:#6c7a62;font-variant-numeric:tabular-nums}
.zp-menu li:hover,.zp-menu li[aria-selected=true]{background:#eef6e3}
.zp-menu li.is-active{background:#46821c;color:#fff}.zp-menu li.is-active .zp-code{color:#e3f2d2}
.zp-menu .zp-none{padding:14px;color:#6c7a62;cursor:default}
.zp-help{font-size:13px;color:#6c7a62;margin:6px 0 0}
.zp-error{font-size:14px;color:#b3261e;margin:6px 0 0}
