/* Küchenmodelle v3.7 — reliability, accessibility and authority-tool layer. */

/* HTML's hidden state must win over component display rules such as .km-btn. */
.km-theme [hidden]{display:none!important}

/* Stronger contrast on pale statistic and preview surfaces. */
.km-section:not(.km-dark) .km-stat-band strong{color:#5f3d1d}
.km-section:not(.km-dark) .km-stat-band span{color:#34443b}
.km-section:not(.km-dark) .km-feature-card>span,
.km-section:not(.km-dark) .km-link-card>b{color:#704820}

/* Stable media geometry prevents layout movement on the model archive. */
.km-model-image{display:block;aspect-ratio:8/5;overflow:hidden;background:#e9e2d7}
.km-model-image img{width:100%;height:100%;aspect-ratio:8/5;object-fit:cover}

/* Authority pages and interactive planning aids. */
.km-v37-tool-shell{max-width:1040px;margin-inline:auto}
.km-v37-tool{border:1px solid #d9cdbd;border-radius:28px;background:linear-gradient(145deg,#fff,#f7f0e6);box-shadow:0 24px 70px rgba(20,31,25,.09);overflow:hidden}
.km-v37-tool-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:start;padding:30px 32px;background:#173027;color:#fff}
.km-v37-tool-head h2{margin:7px 0 10px;color:#fff;font-size:clamp(30px,4vw,46px)}
.km-v37-tool-head p{max-width:740px;margin:0;color:#d5ded8}
.km-v37-tool-badge{display:inline-flex;padding:9px 12px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.07);color:#f0d3a3;font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}
.km-budget-tool-form{padding:30px 32px}
.km-budget-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.km-budget-tool-grid label{display:grid;gap:8px;color:#29372f;font-size:13px;font-weight:850}
.km-budget-tool-grid select{width:100%;min-height:50px;padding:12px 14px;border:1px solid #cec2b2;border-radius:13px;background:#fff;color:#17281f;font:inherit}
.km-budget-tool-grid select:focus{outline:3px solid rgba(158,109,52,.18);border-color:#8a5a28}
.km-budget-tool-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:24px}
.km-budget-result{margin:0 32px 32px;padding:24px;border:1px solid #d5c2a6;border-left:6px solid #8a5a28;border-radius:18px;background:#fff}
.km-budget-result>span{display:block;color:#704820;font-size:10px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}
.km-budget-result strong{display:block;margin-top:7px;color:#17281f;font:700 clamp(28px,4vw,42px)/1.15 Georgia,"Times New Roman",serif}
.km-budget-result p{margin:10px 0 0!important;color:#405047!important;font-size:15px!important;line-height:1.65}
.km-budget-result small{display:block;margin-top:12px;color:#5f6963;line-height:1.55}
.km-v37-check-panel{padding:26px;border:1px solid #ddd1c1;border-radius:22px;background:#fff}
.km-v37-check-panel h3{margin-top:0}
.km-v37-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;padding:0;list-style:none}
.km-v37-check-grid li{position:relative;padding:12px 12px 12px 42px;border:1px solid #e7ded2;border-radius:13px;color:#34443b;font-size:14px;line-height:1.5}
.km-v37-check-grid li:before{content:"✓";position:absolute;left:13px;top:12px;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#ede2d2;color:#704820;font-weight:900}
.km-v37-note{margin-top:22px;padding:18px 20px;border-left:5px solid #8a5a28;border-radius:0 15px 15px 0;background:#f6efe5;color:#405047;font-size:14px;line-height:1.65}
.km-v37-topic-card:focus-visible,.km-budget-tool-form select:focus-visible{outline:3px solid #b67b36;outline-offset:3px}
.km-side-card>a{display:block}
.km-side-card>a+a{margin-top:10px}

@media(max-width:760px){
  .km-v37-tool-head{grid-template-columns:1fr;padding:24px 22px}
  .km-v37-tool-badge{justify-self:start}
  .km-budget-tool-form{padding:24px 22px}
  .km-budget-tool-grid,.km-v37-check-grid{grid-template-columns:1fr}
  .km-budget-result{margin:0 22px 24px;padding:20px}
}

@media print{
  .km-site-header,.km-footer,.km-actions,.km-v36-footer-topics,.km-luxury-ticker{display:none!important}
  .km-section{padding:24px 0!important}
  .km-v37-check-panel{break-inside:avoid;box-shadow:none}
  .km-v37-check-grid li{break-inside:avoid}
}
