.cp-wrap{position:relative;display:flex;align-items:center}
.cp-flag-sel{position:absolute;left:10px;top:50%;transform:translateY(-50%);font-size:18px;line-height:1;pointer-events:none;display:none;z-index:1}
.cp-flag-sel.visible{display:block}
.cp-search.cp-has-flag{padding-left:38px}
.cp-search{flex:1;min-width:0}
.cp-dropdown{display:none;position:absolute;top:calc(100% + 2px);left:0;right:0;background:var(--surface);border:0.5px solid var(--rule-strong);border-radius:6px;max-height:210px;overflow-y:auto;z-index:300;padding:3px 0;list-style:none;box-shadow:0 4px 24px rgba(26,26,26,0.10)}
.cp-dropdown.open{display:block}
.cp-option{padding:7px 11px;cursor:pointer;font-size:13px;display:flex;align-items:center;gap:8px;color:var(--ink);line-height:1.3;user-select:none}
.cp-option:hover,.cp-option.cp-hi{background:var(--paper-warm)}
.cp-flag{font-size:16px;line-height:1;flex-shrink:0;min-width:22px;display:inline-block}
.cp-code{font-weight:600;font-size:12px;min-width:34px;font-variant-numeric:tabular-nums;letter-spacing:0.04em}
.cp-name{color:var(--ink-soft);font-size:12px}
.cp-empty{padding:10px 12px;font-size:12px;color:var(--ink-mute);font-style:italic}
.field-hint{font-size:12px;color:var(--ink-mute);margin-top:4px}
.field-error{font-size:12px;color:var(--red);margin-top:4px;display:none}
.field-error.show{display:block}
.form-input.has-error{border-color:var(--red)}
