/* ===== Bohrprotokoll-Modul ===== */
.bp-empty { background:var(--surface); border:1px dashed var(--border-strong); border-radius:var(--radius); padding:40px; text-align:center; color:var(--text-muted); }
.bp-empty .icon { width:30px; height:30px; color:var(--text-dim); margin-bottom:8px; }
.bp-spin { animation: bp-rot 1s linear infinite; }
@keyframes bp-rot { to { transform: rotate(360deg); } }
.bp-dim { color: var(--text-dim); font-size: 12.5px; }

/* Liste */
.bp-list-card { background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); overflow:hidden; }
.bp-table { width:100%; border-collapse:collapse; }
.bp-table th { text-align:left; font-size:12px; color:var(--text-muted); font-weight:600; padding:10px 12px; border-bottom:1px solid var(--border); }
.bp-table td { padding:10px 12px; border-bottom:1px solid var(--border); font-size:13.5px; }
.bp-row { cursor:pointer; }
.bp-row:hover { background:var(--brand-soft, #f0f9ff); }
.bp-nr { font-weight:700; }

/* Status-Badges */
.bp-status { display:inline-block; padding:2px 9px; border-radius:999px; font-size:11px; font-weight:600; }
.bp-status.st-entwurf { background:#f1f5f9; color:#475569; }
.bp-status.st-eingereicht { background:#dbeafe; color:#1d4ed8; }
.bp-status.st-in_nachbearbeitung { background:#fef3c7; color:#92400e; }
.bp-status.st-freigegeben { background:#dcfce7; color:#166534; }
.bp-status.st-exportiert { background:#ede9fe; color:#6d28d9; }

/* Kopf */
.bp-head { display:flex; align-items:center; margin-bottom:12px; }
.bp-back { }
.bp-ro { font-size:12.5px; color:var(--text-muted); margin:2px 0 14px; }

/* Meta-Felder */
.bp-meta { display:flex; flex-wrap:wrap; gap:14px; margin-bottom:18px; }
.bp-field { display:flex; flex-direction:column; gap:5px; flex:1; min-width:140px; }
.bp-field label { font-size:12px; font-weight:600; color:var(--text-muted); }
.bp-field input, .bp-field textarea { padding:8px 10px; border:1px solid var(--border-strong); border-radius:8px; font-size:14px; background:var(--surface); color:var(--text); font-family:inherit; }
.bp-field textarea { resize:vertical; }

/* Schicht-Tabelle */
.bp-tablewrap { overflow-x:auto; border:1px solid var(--border); border-radius:var(--radius); margin-bottom:10px; }
.bp-schicht { border-collapse:collapse; min-width:1500px; font-size:12px; }
.bp-schicht th { background:var(--brand-soft, #f0f9ff); color:var(--text-muted); font-weight:600; font-size:11px; padding:6px 4px; border:1px solid var(--border); white-space:nowrap; position:sticky; top:0; }
.bp-schicht td { border:1px solid var(--border); padding:2px; }
.bp-schicht input, .bp-schicht select { width:100%; min-width:60px; border:none; background:transparent; font-size:12px; padding:4px 5px; color:var(--text); font-family:inherit; }
.bp-schicht input:focus, .bp-schicht select:focus { outline:2px solid var(--brand, #0099CC); border-radius:4px; }
.bp-schicht input[type=number] { text-align:center; min-width:54px; }
.bp-rowdel { border:none; background:transparent; cursor:pointer; color:#dc2626; padding:4px; display:flex; }
.bp-rowdel .icon, .bp-rowdel svg { width:15px; height:15px; }

/* Grundwasser + Fotos */
.bp-grid2 { display:grid; grid-template-columns:1fr 1fr; gap:28px; margin-top:20px; align-items:start; }
.bp-sub { font-size:14px; font-weight:700; margin:0 0 10px; }
.bp-gw { display:flex; align-items:center; gap:10px; margin-bottom:8px; }
.bp-gw label { font-size:12px; color:var(--text-muted); width:80px; }
.bp-gw input { flex:1; padding:7px 9px; border:1px solid var(--border-strong); border-radius:7px; font-size:13px; background:var(--surface); color:var(--text); }

.bp-fotos { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:10px; }
.bp-foto { position:relative; width:110px; height:110px; border-radius:8px; overflow:hidden; border:1px solid var(--border); }
.bp-foto img { width:100%; height:100%; object-fit:cover; display:block; }
.bp-foto-del { position:absolute; top:4px; right:4px; width:22px; height:22px; border:none; border-radius:50%; background:rgba(0,0,0,.6); color:#fff; cursor:pointer; display:flex; align-items:center; justify-content:center; }
.bp-foto-del svg { width:13px; height:13px; }
.bp-foto-t { position:absolute; bottom:0; left:0; right:0; background:rgba(0,0,0,.55); color:#fff; font-size:11px; text-align:center; padding:1px 0; }
.bp-foto-add { display:inline-flex; align-items:center; gap:6px; cursor:pointer; }

@media (max-width:900px){ .bp-grid2 { grid-template-columns:1fr; } }
