.cka-box {
  margin-top: 14px;
  padding: 16px;
  border: 1px solid var(--line, #dedbd6);
  border-radius: 7px;
  background: #fff;
}

.cka-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.cka-head h3 { margin: 0; font-size: 14px; letter-spacing: 0; }
.cka-head button { flex: none; }
.cka-list { display: grid; gap: 8px; }

.cka-address {
  display: grid;
  width: 100%;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 9px;
  padding: 11px;
  border: 1px solid var(--line, #dedbd6);
  border-radius: 6px;
  color: inherit;
  background: var(--paper, #f7f6f3);
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.cka-address.on { border-color: var(--ink, #211f1c); box-shadow: inset 0 0 0 1px var(--ink, #211f1c); }
.cka-radio { width: 14px; height: 14px; margin-top: 2px; border: 1px solid #8d8982; border-radius: 50%; background: #fff; }
.cka-address.on .cka-radio { border: 4px solid var(--ink, #211f1c); }
.cka-address b { display: block; font-size: 12.5px; }
.cka-address small { display: block; margin-top: 3px; color: var(--muted, #77736d); font-size: 11.5px; line-height: 1.45; }
.cka-empty, .cka-message { margin: 0; color: var(--muted, #77736d); font-size: 12px; line-height: 1.5; }
.cka-message { margin-top: 8px; }
.cka-message.err { color: #a33131; }
.cka-message.ok { color: #27613f; }

.cka-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 13px;
  padding-top: 13px;
  border-top: 1px solid var(--line, #dedbd6);
}

.cka-form[hidden] { display: none; }
.cka-field { min-width: 0; }
.cka-field-wide { grid-column: 1 / -1; }
.cka-field label { display: block; margin-bottom: 6px; font-size: 10px; font-weight: 700; text-transform: uppercase; }
.cka-field input { width: 100%; height: 42px; padding: 0 11px; border: 1px solid var(--line, #dedbd6); border-radius: 6px; font: inherit; font-size: 12px; }
.cka-save { display: flex; grid-column: 1 / -1; align-items: center; gap: 8px; font-size: 12px; }
.cka-save input { width: 16px; height: 16px; }
.cka-form-actions { display: flex; grid-column: 1 / -1; gap: 8px; }
.cka-form-actions .btn { min-height: 40px; }

@media (max-width: 520px) {
  .cka-box { padding: 13px; }
  .cka-head { align-items: flex-start; }
  .cka-form { grid-template-columns: 1fr; }
  .cka-field-wide, .cka-save, .cka-form-actions { grid-column: auto; }
  .cka-form-actions { flex-direction: column; }
}
