/*
 * Planungsgrundlage (Vermesser-DXF) — plan-survey-panel.js, Präfix eeps-.
 * Apple-Stil wie ee-plan-widget.css; Info-Icon kommt aus ee-electrical.css (.eep-i).
 * @since 2.25.765
 */
.eeps {
    --eeps-accent: var(--ees-accent, #0a84ff);
    --eeps-border: var(--ees-border, var(--ee-border-medium));
    --eeps-surface: var(--ees-surface, var(--ee-bg-elevated));
    --eeps-surface-2: var(--ees-surface-2, var(--ee-bg-primary));
    --eeps-dim: var(--ees-text-dim, #6e6e73);
    --eeps-text: var(--ees-text, var(--ee-text-primary));
    --eeps-warn: var(--ees-warn-soft, #fff4e0);
    --eeps-radius: 12px;
    font: 13px/1.45 -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", Arial, sans-serif;
    color: var(--eeps-text);
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.eeps-head { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.eeps-head h3 { margin: 0; font-size: 15px; font-weight: 600; display: inline-flex; align-items: center; gap: 6px; }
.eeps-h3 { font-weight: 600; margin: 0 0 8px; display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.eeps .eeps-i { margin-left: 4px; vertical-align: middle; }
.eeps-meta { color: var(--eeps-dim); font-size: 12px; }

.eeps-chip {
    display: inline-flex; align-items: center; padding: 2px 9px; border-radius: 999px;
    font-size: 11.5px; font-weight: 600; white-space: nowrap;
    background: var(--eeps-surface-2); color: var(--eeps-dim);
}
.eeps-chip.g { background: #e3f6e8; color: #1f7a3a; }
.eeps-chip.o { background: var(--eeps-warn); color: #9a5b00; }
.eeps-chip.r { background: #fde8e7; color: #b42318; }

.eeps-error, .eeps-ok {
    border-radius: 10px; padding: 9px 12px; display: flex; flex-direction: column; gap: 2px;
}
.eeps-error { background: #fde8e7; color: #8a1c13; }
.eeps-ok { background: #e3f6e8; color: #1f5f33; }

.eeps-warn { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.eeps-warn li {
    background: var(--eeps-warn); color: #6b4200; border-radius: 10px; padding: 7px 11px;
    display: flex; flex-direction: column; gap: 1px;
}
.eeps-warn em { font-style: normal; color: #8a5a00; font-size: 12px; }

.eeps-upload { display: flex; align-items: center; gap: 8px; }
.eeps-btn {
    appearance: none; border: 1px solid var(--eeps-border); background: var(--eeps-surface);
    color: var(--eeps-text); border-radius: 980px; padding: 7px 15px; font: inherit; font-weight: 500;
    cursor: pointer; text-decoration: none; display: inline-flex; align-items: center; gap: 6px;
    transition: background .15s ease, opacity .15s ease;
}
.eeps-btn:hover { background: var(--eeps-surface-2); }
.eeps-btn.p { background: var(--eeps-accent); border-color: var(--eeps-accent); color: var(--ee-text-on-accent); }
.eeps-btn.p:hover { filter: brightness(1.06); }
.eeps-btn.s { padding: 4px 11px; font-size: 12px; }
.eeps-btn[disabled], .eeps-btn.is-busy { opacity: .45; cursor: not-allowed; }
.eeps-btn:focus-visible, .eeps select:focus-visible, .eeps input:focus-visible {
    outline: 3px solid rgba(10, 132, 255, .35); outline-offset: 1px;
}
.eeps-link { appearance: none; border: 0; background: none; padding: 0; color: var(--eeps-accent); font: inherit; font-weight: 600; cursor: pointer; text-align: left; }

.eeps-sel {
    border: 1px solid var(--eeps-border); border-radius: var(--eeps-radius);
    padding: 12px 14px; background: var(--eeps-surface); display: flex; flex-direction: column; gap: 12px;
}
.eeps-sum { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 8px; }
.eeps-kv { background: var(--eeps-surface-2); border-radius: 10px; padding: 8px 10px; display: flex; flex-direction: column; gap: 2px; }
.eeps-kv > span { color: var(--eeps-dim); font-size: 11.5px; display: flex; align-items: center; }
.eeps-kv > b { font-weight: 600; }

.eeps-map { width: 100%; border-collapse: collapse; font-size: 12.5px; }
.eeps-map th { text-align: left; color: var(--eeps-dim); font-weight: 500; padding: 6px 8px; border-bottom: 1px solid var(--eeps-border); white-space: nowrap; }
.eeps-map td { padding: 6px 8px; border-bottom: 1px solid var(--eeps-surface-2); vertical-align: middle; }
.eeps-samples { color: var(--eeps-dim); max-width: 260px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.eeps select, .eeps input[type="text"] {
    font: inherit; border: 1px solid var(--eeps-border); border-radius: 8px; padding: 5px 8px;
    background: var(--eeps-surface); color: var(--eeps-text); min-width: 0;
}
.eeps-form { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 10px; }
.eeps-form label { display: flex; flex-direction: column; gap: 4px; color: var(--eeps-dim); font-size: 12px; }
.eeps-form label > input, .eeps-form label > select { color: var(--eeps-text); font-size: 13px; }
.eeps-hint { color: #9a5b00; font-size: 11.5px; }
.eeps-actions { display: flex; align-items: center; justify-content: flex-end; gap: 10px; flex-wrap: wrap; }
.eeps-need { color: #9a5b00; font-size: 12px; }

.eeps-list { display: flex; flex-direction: column; gap: 4px; }
.eeps-row {
    display: grid; grid-template-columns: minmax(0, 1fr) auto auto auto auto; align-items: center; gap: 8px;
    padding: 7px 10px; border-radius: 10px;
}
.eeps-row:hover { background: var(--eeps-surface-2); }
.eeps-row.is-sel { background: rgba(10, 132, 255, .08); }
.eeps-row .eeps-link { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

@media (max-width: 720px) {
    .eeps-row { grid-template-columns: 1fr auto; }
    .eeps-row .eeps-meta { grid-column: 1 / -1; }
    .eeps-map th:nth-child(3), .eeps-map td:nth-child(3) { display: none; }
}
@media (prefers-reduced-motion: reduce) { .eeps-btn { transition: none; } }

/* Flurkarte (Hintergrund), plan-cadastral-panel.js (2.25.860) */
.eecm-host { margin-top: 12px; }
.eecm-pv { position: relative; margin: 8px 0; border: 1px solid #d5dbe1; border-radius: 6px; overflow: hidden; background: var(--ee-bg-elevated); }
.eecm-pv img { display: block; width: 100%; height: auto; user-select: none; }
.eecm-pv.is-pick { cursor: crosshair; outline: 2px solid #f59e0b; }
.eecm-pin { position: absolute; transform: translate(-50%, -50%); width: 18px; height: 18px; border-radius: 50%; background: #dc2626; color: var(--ee-text-on-accent); font: 600 11px/18px sans-serif; text-align: center; pointer-events: none; box-shadow: 0 0 0 2px #fff; }
.eecm-pt { display: flex; flex-wrap: wrap; gap: 6px 10px; align-items: center; margin: 6px 0; }
.eecm-pt input { width: 130px; }
.eecm-progress { display: flex; gap: 8px; align-items: center; margin: 6px 0; }
.eecm-progress progress { flex: 1; }
.eecm-show { display: inline-flex; gap: 4px; align-items: center; }
