.details-card { padding:1rem; border:1px solid #e5e5e5; border-radius:10px; max-width:900px; background:#fff; }
.header h2 { margin:0; font-weight:700; }
.sub-id { color:#9aa3b2; font-size:.72rem; margin-top:.15rem; }
.meta-line { color:#6b7280; font-size:.85rem; margin-top:.25rem; }
.status-badge { margin-top:.5rem; display:flex; gap:.5rem; align-items:center; }
.badge { display:inline-block; padding:.2rem .5rem; border-radius:999px; font-size:.75rem; color:#fff; }
.badge-new { background:#2da44e; }
.badge-locked { background:#9a6700; }
.lock-note { color:#9a6700; font-size:.85rem; }

.view-grid { display:grid; grid-template-columns: repeat(2, minmax(280px, 1fr)); gap:.75rem 1rem; margin-top:1rem; }
.view-item { background:#f9fafb; border:1px solid #eef1f5; border-radius:8px; padding:.6rem .7rem; }
.view-label { color:#6b7280; font-size:.78rem; }
.view-value { font-size:.95rem; color:#111827; margin-top:.15rem; }

.section-title { margin-top:1.1rem; font-size:1.05rem; color:#374151; }

.edit-grid { display:grid; grid-template-columns: repeat(2, minmax(260px, 1fr)); gap:.75rem 1rem; margin-top:.5rem; }
.form-field { display:flex; flex-direction:column; gap:.35rem; }
.compact .input { max-width: 280px; }
.span-2 { grid-column: 1 / -1; }

/* Bazowy wygląd pól w edycji */
.input { padding:.45rem .55rem; border:1px solid #d1d5db; border-radius:6px; background:#fff; color:#111827; }

/* Kontrast dla daty */
.is-editable .input[type="date"] { color:#0f172a; }
.is-locked .input[type="date"] { color:#6b7280; }

/* Aktywne (edycja dozwolona) – podświetlenie focus */
.is-editable .input { border-color:#c7d2fe; background:#ffffff; }
.is-editable .input:focus { outline:none; border-color:#2563eb; box-shadow:0 0 0 3px rgba(37,99,235,.15); }

/* Adres – mocniejsze wyróżnienie przy edycji */
.accent-edit .input { border-color:#2563eb; background:#eef2ff; color:#0f172a; }
.accent-edit .input:focus { border-color:#1d4ed8; box-shadow:0 0 0 3px rgba(29,78,216,.18); }

/* Zablokowane (brak edycji) */
.is-locked .input { background:#f3f4f6; color:#6b7280; cursor:not-allowed; }

.actions { display:flex; gap:.6rem; align-items:center; margin-top:.25rem; }

/* Przycisk */
.btn { background:#007bff; color:#fff; border:none; padding:.35rem .65rem; border-radius:4px; cursor:pointer; font-size:.85rem; }
.btn:hover { background:#0056b3; }
.btn[disabled] { opacity:.6; cursor:not-allowed; }
.btn-primary { background:#2563eb; }
.btn-primary:hover { background:#1d4ed8; }

/* Spinner w przycisku */
.spinner {
    display:inline-block;
    width:14px; height:14px;
    border:2px solid rgba(255,255,255,.6);
    border-top-color:#fff;
    border-radius:50%;
    margin-right:.5rem;
    animation: spin 0.9s linear infinite;
    vertical-align:middle;
}
@keyframes spin { to { transform: rotate(360deg); } }