.cfkr-wrap { margin-block: 24px; font-family: Helvetica, Arial, sans-serif; color: #333; }
.cfkr-wrap *, .cfkr-wrap *::before, .cfkr-wrap *::after { box-sizing: border-box; }
.cfkr-wrap [hidden] { display: none !important; }
.cfkr { width: 100%; overflow: visible; border: 1px solid #d9ded6; border-radius: 12px; background: #fff; }
.cfkr-main { padding: 25px 24px; }
.cfkr-heading { padding-left: 7px; margin: 0 0 25px; font-size: 21px; line-height: 1.3; font-weight: 700; color: #1a1a1a; }
.cfkr-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 20px; row-gap: 21px; }
.cfkr-field { position: relative; min-width: 0; }
.cfkr-label-row { display: flex; align-items: center; gap: 5px; min-height: 20px; }
.cfkr-field-label { display: block; padding-left: 7px; margin-bottom: 8px; font-size: 13px; line-height: 20px; font-weight: 600; color: #333; }
.cfkr-label-row .cfkr-field-label { margin-bottom: 8px; }
.cfkr-label-sub { font-size: 12px; font-weight: 400; color: #858585; }
.cfkr-info-button { width: 16px; height: 16px; padding: 0; margin: -8px 0 0; border: 1px solid #9aa49b; border-radius: 50%; background: #fff; color: #566357; font: 600 11px/14px Arial, sans-serif; text-align: center; cursor: pointer; }
.cfkr-control-wrap { position: relative; }
.cfkr .cfkr-field-control { display: block; width: 100%; min-width: 0; height: 46px; min-height: 46px; max-height: 46px; padding: 0 13px; border: 1px solid #cdd2cb; border-radius: 7px; background: #fff; color: #333; box-shadow: none; font: 400 13px/1.3 Helvetica, Arial, sans-serif; }
.cfkr .cfkr-control-wrap input.cfkr-field-control { padding-right: 36px; }
.cfkr .cfkr-field-control:focus-visible, .cfkr-info-button:focus-visible, .cfkr a:focus-visible, .cfkr summary:focus-visible, .cfkr-categories a:focus-visible { outline: 2px solid #387d00; outline-offset: 2px; }
.cfkr .cfkr-field-control[aria-invalid="true"] { border-color: #b33a2b; }
.cfkr-unit { position: absolute; right: 13px; top: 50%; transform: translateY(-50%); color: #626a61; font-size: 13px; pointer-events: none; }
.cfkr-tooltip { position: absolute; z-index: 5; top: 20px; left: 0; width: min(320px, 100%); margin: 0; padding: 10px 12px; border: 1px solid #cdd2cb; border-radius: 7px; background: #fff; box-shadow: 0 4px 15px #0002; font-size: 12px; line-height: 1.5; }
.cfkr-error { display: block; margin-top: 5px; color: #a22f21; font-size: 12px; line-height: 1.4; }
.cfkr-result { min-height: 210px; padding: 23px 24px; border-top: 1px solid #d9ded6; border-radius: 0 0 11px 11px; background: #f7f9f6; }
.cfkr-result-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 20px; align-items: start; }
.cfkr-result-primary { padding-left: 7px; }
.cfkr-result-label { display: block; max-width: 28ch; font-size: 13px; line-height: 1.4; }
.cfkr-result-value { display: block; min-height: 37px; margin-top: 5px; font-size: 28px; line-height: 1.3; font-weight: 700; color: #387d00; overflow-wrap: anywhere; }
.cfkr-metrics { display: grid; gap: 12px; padding-top: 2px; }
.cfkr-metric { display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: baseline; gap: 0 10px; font-size: 12px; line-height: 1.4; color: #666; }
.cfkr-metric output { font-size: 13px; font-weight: 600; color: #333; }
.cfkr-status { min-height: 35px; margin: 9px 7px 0; font-size: 12px; line-height: 1.45; color: #50594e; }
.cfkr-status.cfkr-safety-blocked { color: #7c3c10; font-weight: 600; }
.cfkr .cfkr-button { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 46px; margin-top: 14px; padding: 10px 15px; border: 0; border-radius: 7px; background: #387d00; color: #fff; font-size: 13px; font-weight: 600; line-height: 1.4; text-align: center; text-decoration: none; }
.cfkr .cfkr-button:hover { background: #2c6400; color: #fff; }
.cfkr-details { margin-top: 13px; font-size: 12px; line-height: 1.5; }
.cfkr-details summary { display: list-item; width: fit-content; cursor: pointer; color: #485344; }
.cfkr-details-body { max-width: 75ch; padding-top: 5px; }
.cfkr-details-body p { margin: 8px 0; }
.cfkr-facts { margin: 8px 0; padding-left: 20px; }
.cfkr-facts li + li { margin-top: 5px; }
.cfkr-categories { margin-top: 20px; }
.cfkr-categories h3 { margin: 0 0 11px; font-size: 14px; line-height: 1.4; font-weight: 600; color: #333; }
.cfkr-category-links { display: flex; flex-wrap: wrap; gap: 8px; }
.cfkr-category-links a { display: inline-flex; align-items: center; min-height: 34px; padding: 5px 10px; border: 1px solid #d3d9cf; border-radius: 6px; background: #fff; color: #387d00; font-size: 12px; line-height: 1.3; text-decoration: none; }
.cfkr-category-links a:hover { border-color: #387d00; text-decoration: underline; }
@media (max-width: 640px) {
  .cfkr-main { padding: 24px 20px; }
  .cfkr-result { padding: 23px 20px; }
  .cfkr-fields, .cfkr-result-grid { grid-template-columns: minmax(0, 1fr); row-gap: 21px; }
  .cfkr-result-grid { row-gap: 15px; }
  .cfkr-tooltip { width: min(320px, 100%); }
}
