/* KEV-Preisblätter Tool – nativ eingebettet, Farbwelt aus dem Theme (:root) geerbt.
   Akzente: --green (#69a42c) für CTAs, --green-d für Text-Akzente, --green-l/--cream als Flächen. */
.gkev{
  --acc:var(--green-d);
  --sum:var(--cream);
  --final:var(--green-l);
  font-family:'Inter',system-ui,sans-serif;
  color:var(--ink);max-width:1080px;margin:0 auto;line-height:1.5;
}
.gkev *{box-sizing:border-box}
.gkev h3,.gkev h4{margin:0;font-weight:800;letter-spacing:-.01em;color:var(--navy)}
.gkev small{color:var(--muted);font-weight:400;display:block;font-size:.78em;line-height:1.35}

/* Kopf */
.gkev-head{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center;margin-bottom:20px}
.gkev-head-actions{display:flex;gap:8px;flex-wrap:wrap}
.gkev-btn{cursor:pointer;border-radius:10px;font:inherit;font-size:.86rem;font-weight:700;padding:9px 15px;border:1px solid var(--line);background:#fff;color:var(--ink);transition:background .15s,border-color .15s}
.gkev-btn:hover{border-color:var(--green);background:var(--green-l)}
.gkev-btn:focus-visible{outline:2px solid var(--green-d);outline-offset:2px}
.gkev-btn-primary{background:var(--green);border-color:var(--green);color:#fff}
.gkev-btn-primary:hover{background:var(--green-d);border-color:var(--green-d);color:#fff}

/* Meta */
.gkev-meta{display:grid;grid-template-columns:2fr 1fr 1.4fr .8fr;gap:12px;padding:16px;background:var(--sum);border:1px solid var(--line);border-radius:var(--radius,16px);margin-bottom:26px}
.gkev-field label{display:block;font-size:.75rem;font-weight:700;color:var(--muted);margin-bottom:4px}
.gkev-field input{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:9px;font:inherit;font-size:.9rem;background:#fff}
.gkev-field input:focus-visible{outline:2px solid var(--green-d);outline-offset:1px;border-color:var(--green-d)}

/* Tabs */
.gkev-tabs{display:flex;gap:6px;border-bottom:2px solid var(--line)}
.gkev-tab{cursor:pointer;border:none;background:none;font:inherit;padding:10px 16px 12px;display:flex;gap:9px;align-items:baseline;color:var(--muted);border-bottom:3px solid transparent;margin-bottom:-2px;transition:color .15s}
.gkev-tab:hover{color:var(--ink)}
.gkev-tab:focus-visible{outline:2px solid var(--green-d);outline-offset:-2px}
.gkev-tab.is-active{color:var(--acc);border-bottom-color:var(--green)}
.gkev-tab-no{font-size:1.25rem;font-weight:800;letter-spacing:-.02em}
.gkev-tab-label{font-size:.84rem;font-weight:700}
@media(max-width:760px){.gkev-tab-label{display:none}.gkev-meta{grid-template-columns:1fr 1fr}}

/* Sheets */
.gkev-sheet{display:none;padding-top:24px}
.gkev-sheet.is-active{display:block}
.gkev-sheet-head h3{font-size:1.12rem}
.gkev-sheet-head p{color:var(--muted);font-size:.9rem;margin:6px 0 0;max-width:72ch}
.gkev-block-title{display:flex;align-items:center;gap:10px;font-size:.95rem;margin:26px 0 10px}
.gkev-block-title span{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:7px;background:var(--green);color:#fff;font-size:.8rem;font-weight:800}

/* Tabellen */
.gkev-table{width:100%;border-collapse:collapse;font-size:.9rem;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.gkev-table th{background:var(--sum);font-size:.76rem;font-weight:700;color:var(--muted);text-align:left;padding:9px 10px;border-bottom:1px solid var(--line)}
.gkev-table td{padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:middle}
.gkev-table tbody tr:last-child td,.gkev-table tfoot tr:last-child td{border-bottom:none}
.gkev-oz{width:52px;font-variant-numeric:tabular-nums;color:var(--muted);font-weight:700;font-size:.82rem}
.gkev-in{white-space:nowrap}
.gkev-in input{width:110px;padding:7px 9px;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:.9rem;text-align:right;font-variant-numeric:tabular-nums;background:#fff}
.gkev-in input:focus-visible{outline:2px solid var(--green-d);outline-offset:1px;border-color:var(--green-d)}
.gkev-table-z .gkev-in input{width:84px}
.gkev-out{text-align:right;font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}
.gkev-inline-pct{color:var(--muted);font-weight:700}
.gkev-row-sum td{background:var(--sum);font-weight:700}
.gkev-row-final td{background:var(--final);font-weight:800;color:var(--navy)}
.gkev-subin{margin-top:6px;font-size:.82rem;color:var(--muted)}
.gkev-subin input{width:96px;padding:5px 8px;border:1px solid var(--line);border-radius:7px;font:inherit;text-align:right}

/* Blatt 223 */
.gkev-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:20px 0 10px;flex-wrap:wrap}
.gkev-hint{font-size:.8rem;color:var(--muted)}
.gkev-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.gkev-table-223{min-width:960px}
.gkev-table-223 th{white-space:nowrap}
.gkev-table-223 input{width:80px;padding:6px 7px;border:1px solid var(--line);border-radius:7px;font:inherit;font-size:.86rem;text-align:right;font-variant-numeric:tabular-nums}
.gkev-table-223 input.gkev-txt{width:100%;min-width:170px;text-align:left}
.gkev-table-223 input.gkev-oz-in{width:64px;text-align:left}
.gkev-table-223 input.gkev-unit{width:58px;text-align:center}
.gkev-table-223 input.is-derived{color:var(--green-d);background:var(--green-l)}
.gkev-table-223 .gkev-del{cursor:pointer;border:none;background:none;color:var(--muted);font-size:1rem;padding:4px 6px;border-radius:7px}
.gkev-table-223 .gkev-del:hover{color:#a83232;background:#f8ecec}
.gkev-table-223 .gkev-ep,.gkev-table-223 .gkev-gp{text-align:right;font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}

/* Fußnote */
.gkev-note{margin-top:30px;padding:14px 16px;border:1px solid var(--line);border-left:4px solid var(--green);border-radius:10px;background:var(--sum);font-size:.82rem;color:var(--muted)}
.gkev-note strong{color:var(--ink)}

/* Druck: nur das aktive Blatt, sauberes Formblatt-Layout */
@media print{
  body *{visibility:hidden}
  .gkev,.gkev *{visibility:visible}
  .gkev{position:absolute;left:0;top:0;width:100%;max-width:none}
  .gkev-head-actions,.gkev-tabs,.gkev-toolbar,.gkev-del{display:none !important}
  .gkev-sheet{display:none !important}
  .gkev-sheet.is-active{display:block !important;padding-top:8px}
  .gkev-table{border-radius:0}
  .gkev input{border:none !important;background:none !important;padding:0}
  .gkev-note{page-break-inside:avoid}
}
