/**
 * pp-form-fields.css — Styles fuer erweiterte Formular-Feldtypen
 * PurePower Framework V1.0 Beta
 *
 * Sprint 61:   status_check, image_upload, voice_note, file_link, address, sections
 * Sprint 63.6.9: Repeatable Sections, Signature Pad, status_check 6 Werte
 *
 * WICHTIG: Diese Datei ersetzt FormRenderer::GenerateCSS() (inline).
 * Aenderungen hier UND in GenerateCSS() synchron halten!
 */

/* ── Status-Check Buttons (6 Werte) ─────────────────────────── */
.pp-status-check { display:flex; gap:6px; flex-wrap:wrap; }
.pp-status-btn { padding:8px 14px; border:2px solid #ccc; border-radius:6px; cursor:pointer; font-size:13px; font-weight:600; background:#f8f9fa; transition:all 0.2s; }
.pp-status-btn[aria-pressed='true'] { color:#fff; }
.pp-status-ok[aria-pressed='true'] { background:#198754; border-color:#198754; }
.pp-status-partial[aria-pressed='true'] { background:#ffc107; border-color:#ffc107; color:#212529; }
.pp-status-bad[aria-pressed='true'] { background:#dc3545; border-color:#dc3545; }
.pp-status-urgent[aria-pressed='true'] { background:#8b0000; border-color:#8b0000; animation:pp-pulse 1.5s infinite; }
.pp-status-na[aria-pressed='true'] { background:#6c757d; border-color:#6c757d; }
.pp-status-watch[aria-pressed='true'] { background:#0dcaf0; border-color:#0dcaf0; color:#212529; }
@keyframes pp-pulse { 0%,100%{opacity:1} 50%{opacity:0.7} }

/* ── Image Upload ────────────────────────────────────────────── */
.pp-image-upload-actions { display:flex; gap:8px; align-items:center; margin-bottom:8px; }
.pp-image-preview-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(100px,1fr)); gap:8px; }
.pp-image-preview-grid img { width:100%; height:100px; object-fit:cover; border-radius:4px; border:1px solid #dee2e6; }

/* ── Voice Note ──────────────────────────────────────────────── */
.pp-voice-controls { display:flex; gap:8px; align-items:center; }
.pp-voice-playback { display:flex; gap:8px; align-items:center; margin-top:8px; }
.pp-voice-audio { flex:1; height:36px; }
.pp-voice-record.pp-recording { background:#dc3545; color:#fff; animation:pp-pulse 1s infinite; }

/* ── File Link ───────────────────────────────────────────────── */
.pp-file-link { display:flex; gap:8px; align-items:center; }
.pp-file-link-input { flex:1; font-family:monospace; }

/* ── Address + Navigation ────────────────────────────────────── */
.pp-address-field { display:flex; flex-direction:column; gap:6px; }
.pp-address-row { display:flex; gap:6px; }
.pp-address-row-compact { display:flex; gap:6px; align-items:center; }
.pp-address-street { flex:1; }
.pp-address-city { flex:1; }
.pp-nav-links { display:flex; gap:6px; margin-top:4px; }
.pp-nav-link { font-size:12px; text-decoration:none; padding:3px 8px; border:1px solid #dee2e6; border-radius:4px; }
.pp-nav-link:hover { background:#e9ecef; }

/* ── Sektionen ───────────────────────────────────────────────── */
.pp-form-section { border:1px solid #dee2e6; border-radius:8px; margin-bottom:16px; overflow:hidden; }
.pp-section-header { display:flex; align-items:center; gap:8px; padding:12px 16px; background:#f8f9fa; border-bottom:1px solid #dee2e6; font-weight:600; font-size:14px; }
.pp-section-collapsible .pp-section-header { cursor:pointer; user-select:none; }
.pp-section-collapsible .pp-section-header:hover { background:#e9ecef; }
.pp-section-toggle { margin-left:auto; font-size:10px; transition:transform 0.2s; }
.pp-section-collapsed .pp-section-toggle { transform:rotate(-90deg); }
.pp-section-collapsed .pp-section-body { display:none; }
.pp-section-collapsed .pp-section-desc { display:none; }
.pp-section-icon { font-size:16px; }
.pp-section-desc { padding:8px 16px; font-size:12px; color:#6c757d; border-bottom:1px solid #f0f0f0; }
.pp-section-body { padding:16px; }

/* ── Repeatable Sections ─────────────────────────────────────── */
.pp-repeatable-container { margin-bottom:16px; }
.pp-repeatable-instance { position:relative; }
.pp-repeatable-add { display:block; width:100%; text-align:center; border:2px dashed #dee2e6; padding:10px; border-radius:8px; color:#6c757d; cursor:pointer; transition:all 0.2s; }
.pp-repeatable-add:hover { border-color:#0d6efd; color:#0d6efd; background:#f8f9ff; }
.pp-repeatable-add:disabled { opacity:0.5; cursor:not-allowed; }
.pp-repeatable-remove { font-size:11px; padding:2px 8px !important; }
.pp-ml-auto { margin-left:auto; }

/* ── Signature Pad ───────────────────────────────────────────── */
.pp-signature { display:flex; flex-direction:column; gap:8px; }
.pp-signature-pad { border:2px solid #dee2e6; border-radius:6px; background:#fff; cursor:crosshair; touch-action:none; width:100%; max-width:400px; height:150px; }
.pp-signature-pad:hover { border-color:#0d6efd; }
.pp-signature-actions { display:flex; gap:8px; }
.pp-signature-preview { margin-top:4px; }
.pp-signature-img { max-width:200px; height:auto; border:1px solid #dee2e6; border-radius:4px; }
