    :root {
            --primary-color: #0d9488;
            --primary-light: #5eead4;
            --accent-color: #fcd34d;
            --bg-color: #f9fafb;
        }
        body { font-family: 'Inter', sans-serif; background-color: var(--bg-color); }
        .card { box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1); }
        .btn-primary { background-color: var(--primary-color); }
        .btn-primary:hover { background-color: #0f766e; }
        .modal-fade-enter-active, .modal-fade-leave-active { transition: opacity 0.3s ease; }
        .modal-fade-enter-from, .modal-fade-leave-to { opacity: 0; }
        #map { height: 400px; border-radius: 0.5rem; margin-top: 1rem; }
        /* Ensure Leaflet map does not overlay modals */
        .leaflet-container { z-index: 0; }

        /* Cores específicas para status */
        .status-vencida { background-color: #fbbf24; color: #78350f; }
        .status-logistica { background-color: #8b5cf6; color: white; }
        .status-marcacao { background-color: #f59e0b; color: #78350f; }
        .status-agendada { background-color: #3b82f6; color: white; }
        .status-instalada { background-color: #10b981; color: white; }
        .status-garantia { background-color: #6366f1; color: white; }

        /* Estilos para assinatura */
        .signature-pad {
            border: 2px dashed #cbd5e0;
            border-radius: 0.5rem;
            background: #f7fafc;
            cursor: crosshair;
        }
        .document-preview {
            background: white;
            border: 1px solid #e2e8f0;
            border-radius: 0.5rem;
            padding: 1.5rem;
            font-family: 'Times New Roman', serif;
        }