.kd-wrap{--kd-deep:#143333;--kd-accent:#568B78;--kd-soft:#EDF4F0;--kd-border:#D5E1DA;--kd-text:#4D625B;max-width:1320px;margin:0 auto;padding:65px 24px 70px;font-family:Inter,Arial,sans-serif;color:var(--kd-deep)}
.kd-wrap *{box-sizing:border-box}
.kd-header{max-width:770px;margin:0 0 34px}
.kd-eyebrow{display:flex;align-items:center;gap:12px;letter-spacing:1.7px;font-size:11px;font-weight:700;color:var(--kd-accent);margin-bottom:14px}
.kd-eyebrow span{display:inline-block;width:32px;height:1px;background:var(--kd-accent)}
.kd-header h2{font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:clamp(32px,4vw,47px);line-height:1.1;margin:0 0 12px;color:var(--kd-deep)}
.kd-header p,.kd-aside p{color:var(--kd-text);line-height:1.65;margin:0}
.kd-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(270px,0.9fr);gap:24px;align-items:start}
.kd-search{background:var(--kd-soft);border:1px solid #E0EBE4;border-radius:12px;padding:26px}
.kd-form{margin:0}
.kd-mode{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:22px}
.kd-mode label{font-size:13px;display:inline-flex;align-items:center;gap:7px;color:var(--kd-deep);font-weight:600;cursor:pointer}
.kd-mode input{accent-color:var(--kd-deep)}
.kd-field{display:flex;flex-direction:column;gap:8px;min-width:0}
.kd-field label{font-size:13px;font-weight:600;line-height:1.35;color:var(--kd-deep)}
.kd-field label span{color:var(--kd-accent)}
.kd-field input,.kd-field select{background:#FFF!important;color:var(--kd-deep)!important;border:1px solid var(--kd-border)!important;border-radius:5px!important;padding:12px 14px!important;width:100%;min-height:48px!important;font-size:15px!important;font-family:Inter,Arial,sans-serif!important;box-shadow:none!important;line-height:1.35!important}
.kd-field input:focus,.kd-field select:focus{outline:2px solid #A7C6B5;outline-offset:1px}
.kd-field-county{margin-bottom:16px}
.kd-name-fields{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(150px,0.75fr);gap:16px}
.kd-id-fields[hidden],.kd-name-fields[hidden],.kd-feedback[hidden],.kd-matches[hidden]{display:none!important}
.kd-submit{width:100%!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:11px;margin:22px 0 11px!important;border-radius:5px!important;background:var(--kd-deep)!important;border:1px solid var(--kd-deep)!important;color:white!important;font-family:Inter,Arial,sans-serif!important;font-size:15px!important;font-weight:600!important;padding:14px 17px!important;min-height:50px!important;cursor:pointer!important;transition:background .15s}
.kd-submit:hover{background:#24584C!important}
.kd-submit:disabled{opacity:.65;cursor:progress!important}
.kd-lens{font-size:25px;font-weight:400;line-height:.6}
.kd-arrow{font-size:21px;line-height:1}
.kd-hint{font-size:12px;color:#6D8078;line-height:1.6;margin:0}
.kd-feedback{font-size:13px;line-height:1.55;margin-top:17px;padding:12px 14px;border-radius:6px;background:#FFF;color:var(--kd-deep);border:1px solid var(--kd-border)}
.kd-feedback.kd-error{color:#873A32;border-color:#E7C8C3;background:#FFF7F6}
.kd-matches{margin-top:17px;display:grid;gap:9px}
.kd-result{background:#FFF;border:1px solid var(--kd-border);padding:13px 15px;border-radius:6px;text-decoration:none!important;display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--kd-deep)!important}
.kd-result:hover{border-color:var(--kd-accent);background:#FAFCFB}
.kd-result strong{font-size:14px;display:block;line-height:1.4}
.kd-result small{display:block;color:var(--kd-text);font-size:12px;line-height:1.5;margin-top:3px}
.kd-aside{background:#FFF;border:1px solid var(--kd-border);border-radius:12px;padding:25px}
.kd-aside h3{font-family:'DM Serif Display',Georgia,serif;font-size:25px;font-weight:400;line-height:1.15;color:var(--kd-deep);margin:0 0 10px}
.kd-aside>p:first-of-type{font-size:14px;margin-bottom:20px}
.kd-portal{display:flex;justify-content:space-between;align-items:center;gap:14px;border-bottom:1px solid var(--kd-border);padding:15px 0;text-decoration:none!important;color:var(--kd-deep)!important;font-size:14px;font-weight:600}
.kd-portal:hover{color:var(--kd-accent)!important}
.kd-portal span:last-child{font-size:20px;color:var(--kd-accent)}
.kd-disclaimer{font-size:12px!important;margin-top:24px!important;color:#677A72!important}
.kd-contact{display:inline-block;margin-top:20px;color:#21614D!important;font-size:13px;font-weight:700;text-decoration:none!important;line-height:1.55}
.kd-contact:hover{text-decoration:underline!important}
@media(max-width:900px){.kd-layout{grid-template-columns:1fr}.kd-header{margin-bottom:25px}.kd-search,.kd-aside{padding:22px}}
@media(max-width:600px){.kd-wrap{padding:45px 15px}.kd-name-fields{grid-template-columns:1fr;gap:14px}.kd-search,.kd-aside{padding:18px;border-radius:9px}.kd-mode{gap:10px;flex-direction:column}.kd-header h2{font-size:34px}}
/* Wersja 1.1: informacja pomocnicza przy liście obrębów. */
.kd-region-note{display:block;font-size:12px;color:#657A70;line-height:1.5;margin-top:1px}
.kd-region-fallback[hidden],.kd-name-fields select[hidden]{display:none!important}

/* Wersja 1.2: lista gmin nad listą obrębów. */
.kd-name-fields .kd-field-commune{grid-column:1/-1}
.kd-field-commune[hidden]{display:none!important}
