/* src/style.css - V34.0 (FIX FINAL BUTOANE) */

/* BLOCHEAZĂ BOUNCE PE MOBIL */
html, body {
    height: 100%;
    margin: 0;
    padding: 0;
    overflow: hidden;
    position: fixed;
    inset: 0;
    font-family: 'Inter', sans-serif;
    -webkit-tap-highlight-color: transparent;
    overscroll-behavior: none;
}

/* CONTAINER FAB (Ancorat de App-Root) */
.fab-container {
    position: absolute;
    bottom: 1.5rem;
    right: 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    z-index: 100;
}

@media (max-width: 768px) {
    .fab-container {
        bottom: 5rem;
    }
}

.fab-container button {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    display: flex;          /* Aici era conflictul */
    align-items: center;
    justify-content: center;
    color: white;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

/* === FIXUL ESTE AICI === */
/* Această regulă forțează ascunderea chiar dacă regula de mai sus zice display: flex */
.fab-container button.hidden {
    display: none !important;
}

#btn-voice { background-color: #ef4444; }
#fab-add { background-color: #2563eb; }

/* TIMELINE STYLING */
.timeline-card {
    background: white;
    border-radius: 16px;
    padding: 16px;
    margin-bottom: 12px;
    border-left: 4px solid #3b82f6;
    box-shadow: 0 2px 10px rgba(0,0,0,0.03);
    transition: transform 0.2s;
}

.mic-active {
    animation: pulse-red 1.5s infinite;
    background-color: #dc2626 !important;
}

@keyframes pulse-red {
    0% { box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.7); }
    70% { box-shadow: 0 0 0 15px rgba(239, 68, 68, 0); }
    100% { box-shadow: 0 0 0 0 rgba(239, 68, 68, 0); }
}

/* CARD TASK STYLING */
.task-row { 
    transition: all 0.2s ease;
    background-color: white;
    border-radius: 12px;
    border: 1px solid #e2e8f0;
    padding: 12px; 
    display: flex; align-items: center; gap: 12px;
}

.strategic-border { border-left: 4px solid #2563eb; }
.maintenance-border { border-left: 4px solid #cbd5e1; }

.task-completed { opacity: 0.6; background-color: #f8fafc; border-left-color: #22c55e !important; }

/* UTILS */
.animate-fade-in { animation: fadeIn 0.3s ease-in-out; }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }

.active-tab { color: #2563eb !important; }

/* ==========================================
   HARTA CORPULUI (BODY MAP) - ADAUGĂ ASTA LA FINAL
   ========================================== */
.body-container svg {
    height: 380px; /* Înălțime fixă pentru a nu ocupa tot ecranul */
    width: auto;
    margin: 0 auto;
    display: block;
    filter: drop-shadow(0 4px 6px rgba(0,0,0,0.05));
}

.body-part { 
    fill: #f1f5f9;     /* Culoarea "gri" de bază (Slate-100) */
    stroke: #cbd5e1;   /* Conturul gri mai închis */
    stroke-width: 1.5; 
    transition: all 0.2s ease; 
    cursor: pointer; 
}

.body-part:hover { 
    fill: #e2e8f0;     /* Culoare la hover */
}

/* Culorile pentru durere (nivel 1-5) */
.pain-1 { fill: #fef08a !important; stroke: #eab308 !important; } /* Galben */
.pain-2 { fill: #fdba74 !important; stroke: #f97316 !important; } /* Portocaliu deschis */
.pain-3 { fill: #fb923c !important; stroke: #ea580c !important; } /* Portocaliu */
.pain-4 { fill: #f87171 !important; stroke: #dc2626 !important; } /* Roșu deschis */
.pain-5 { fill: #991b1b !important; stroke: #7f1d1d !important; } /* Roșu închis */