/*!
 * KARL ImmoSuite – Marktabgleich (Verkaufspreise, Ausgangswerte je PLZ, Import) und Verkaufspreis am Lead
 * (c) 2026 ROSE IT Management UG (haftungsbeschränkt) – Digitale Lösungen. Alle Rechte vorbehalten.
 */

/* ---------- Kopf, Filter ---------- */
.k-markt__intro{margin:-12px 0 18px;color:var(--k-muted)}
.k-markt__bar{gap:10px 22px}
.k-markt__bar label{display:flex;align-items:center;gap:10px;font-weight:500;font-size:13.5px;color:var(--k-ink)}

/* ---------- Kennzahlen (4 Spalten) ---------- */
.k-markt__kpis{grid-template-columns:repeat(4,minmax(0,1fr))}
.k-kpi--accent .k-kpi__value{color:var(--k-accent-text)}

/* ---------- Tabellen ---------- */
.k-markt__table td small{display:block;color:var(--k-muted);margin-top:2px;font-size:12.5px}
.k-markt__table th.k-markt__cb,.k-markt__table td.k-markt__cb{width:44px;padding-right:0}
.k-markt__cb input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--k-accent);cursor:pointer}
.k-markt__cb input:disabled{cursor:not-allowed}
.k-markt__table--groups{border-top:1px solid var(--k-line)}
.k-markt__table--groups tbody tr.is-off td{opacity:.6}
.k-markt__table--groups tbody tr.is-sel td{background:var(--k-accent-soft)}
.k-markt__median strong{color:var(--k-ink);font-weight:600}
.k-markt__area strong{color:var(--k-ink);font-variant-numeric:tabular-nums}
.k-markt__table .k-num{font-variant-numeric:tabular-nums}
.k-markt__dev{white-space:nowrap}
.k-markt__dev.is-far{color:var(--k-bad);font-weight:600}
.k-markt__hint{font-size:13.5px;line-height:1.55;margin:14px 0}
.k-markt__applybar{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.k-markt__applybar .k-btn[disabled]{opacity:.55;cursor:not-allowed;box-shadow:none;filter:none}
.k-markt__flushhead{padding:20px 24px 14px;margin:0}
.k-markt__sales .k-table th{border-top:1px solid var(--k-line)}
.k-markt__groups .k-tablewrap{margin:0 -24px;padding:0}
.k-markt__groups .k-table th:first-child,.k-markt__groups .k-table td:first-child{padding-left:24px}
.k-markt__groups .k-table th:last-child,.k-markt__groups .k-table td:last-child{padding-right:24px}
.k-markt__groups .k-empty{padding:12px 0 4px;text-align:left}

/* ---------- Import ---------- */
.k-markt__drop{position:relative;display:flex;align-items:center;gap:16px;padding:18px 20px;margin:0 0 16px;border:2px dashed #cfd5e1;border-radius:var(--k-r);background:var(--k-bg);cursor:pointer;transition:border-color .15s,background .15s}
.k-markt__drop:hover,.k-markt__drop.is-over{border-color:var(--k-accent);background:var(--k-accent-soft)}
.k-markt__drop:focus-within{outline:3px solid var(--k-accent);outline-offset:2px}
.k-markt__drop.has-file{border-style:solid;border-color:var(--k-accent);background:#fff}
.k-markt__drop input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.k-markt__dropicon{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fff;border:1px solid var(--k-line);color:var(--k-accent-text);font-size:20px;flex-shrink:0}
.k-markt__droptext{min-width:0}
.k-markt__droptext b{display:block;color:var(--k-ink);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.k-markt__droptext small{display:block;color:var(--k-muted);font-size:13px}
.k-markt__modes{display:flex;gap:6px 26px;flex-wrap:wrap;margin:0 0 4px}
.k-markt__modes .k-check{margin:0 0 8px;align-items:center}
.k-markt__modes .k-check input{margin:0}
.k-markt__clear{margin-top:16px;padding-top:14px;border-top:1px solid var(--k-line-2)}

/* ---------- Verkaufspreis am Lead ---------- */
.k-markt-sold.is-set{border-top:4px solid var(--k-ok)}
.k-markt-sold__fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0 14px}
.k-markt-euro{display:flex;align-items:stretch;border:1px solid #cfd5e1;border-radius:var(--k-r-sm);background:#fff;overflow:hidden;transition:border-color .15s,box-shadow .15s}
.k-markt-euro:focus-within{border-color:var(--k-accent);box-shadow:0 0 0 3px var(--k-accent-soft)}
.k-field .k-markt-euro input:not([type=checkbox]){flex:1;min-width:0;border:0;border-radius:0;box-shadow:none;text-align:right}
.k-field .k-markt-euro input:focus{box-shadow:none}
.k-markt-euro i{display:flex;align-items:center;padding:0 12px;font-style:normal;color:var(--k-muted);background:var(--k-bg);border-left:1px solid var(--k-line)}
.k-markt-sold__cmp{margin:0 0 14px;font-size:13.5px}

/* ---------- Responsiv ---------- */
@media (max-width:1280px){
	.k-markt__kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:860px){
	.k-markt__intro{margin:-8px 0 14px}
	.k-markt__bar{flex-direction:column;align-items:stretch;gap:10px}
	.k-markt__bar label{justify-content:space-between}
	.k-markt__bar select{flex:1;min-width:0;max-width:62%}
	.k-markt__kpis{gap:12px}
	.k-markt__flushhead{padding:16px 16px 10px}
	.k-markt__groups .k-tablewrap{margin:0 -16px}

	/* Tabellen als Karten */
	.k-markt__table thead{display:none}
	.k-markt__table,.k-markt__table tbody{display:block;width:100%}
	.k-markt__table tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 14px;padding:14px 16px;border-bottom:1px solid var(--k-line-2)}
	.k-markt__table tbody tr:hover{background:none}
	.k-markt__table td{display:block;border:0;padding:0!important;min-width:0}
	.k-markt__table td.k-num{text-align:left;white-space:normal}
	.k-markt__table td[data-label]::before{content:attr(data-label);display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--k-muted);margin-bottom:1px}

	.k-markt__table--groups{border-top:0}
	.k-markt__table--groups tr{grid-template-columns:26px minmax(0,1fr) minmax(0,1fr)}
	.k-markt__table--groups td.k-markt__cb{grid-column:1;grid-row:1/span 4;width:auto}
	.k-markt__table--groups .k-markt__area{grid-column:2}
	.k-markt__table--groups .k-markt__grp{grid-column:3;font-weight:500;color:var(--k-ink)}
	.k-markt__table--groups .k-markt__median strong{font-size:16px}

	.k-markt__table--sales .k-markt__obj{grid-column:1/-1;order:-1}
	.k-markt__table--sales .k-markt__date{order:0}

	.k-markt__drop{padding:14px}
	.k-markt__applybar .k-btn{width:100%;white-space:normal;text-align:center}
}
@media (max-width:420px){
	.k-markt__kpis .k-kpi__value{font-size:22px}
}
