/* --- FUNDAMENTY MODUŁU --- */
.fin-section { 
    margin: 0; /* Usuwamy zewnętrzne marginesy, bo sekcja komitetu ma swoje */
    padding: 10px 0;
    font-family: 'Inter', system-ui, sans-serif; 
}
.fin-container { display: flex; flex-direction: column; gap: 20px;}

/* --- BAZA KARTY --- */
.fin-card {
   padding: 10px;
   flex: 1; 
   border-radius: 8px; 
   overflow: hidden;
   display: flex; 
   flex-direction: column; 
   box-shadow: 0 10px 30px rgba(0,0,0,0.1);
   transition: transform 0.3s ease; 
   border: 1px solid rgba(0,0,0,0.05);
}

/* Wariant 1: POMNIK (Ciemny/Złoty) - SACRUM */
.fin-card--monument { background: #1a1a1a; color: #fff; }
/* Wariant 2: KOMITET (Jasny/Srebrny) - OFFICIUM */
.fin-card--office { background: #fdfdfd; color: #333;}

/* --- UKŁAD SPLIT (OPIS | DANE) --- */
.fin-split { display: flex; flex-wrap: wrap; border-radius: 8px;}
/* Zmiana proporcji 40/60 */
.fin-info { 
    flex: 0 0 40%; /* Sztywne 40% na komputerze */
    padding: 30px; 
    display: flex;
    flex-direction: column;
    justify-content: space-between; /* To "wypchnie" adres banku na sam dół */
    border-right: 1px solid rgba(255,255,255,0.05);
}
.fin-data { flex: 0 0 60%; padding: 30px; background: rgba(255,255,255,0.02); display: flex; flex-direction: column; gap: 15px; }

.fin-card--office .fin-info { border-right: 1px solid rgba(0,0,0,0.05); }
.fin-card--office .fin-data { background: rgba(0,0,0,0.02); }

/* --- ELEMENTY WEWNĄTRZ --- */
.fin-title { font-size: 1.3rem; font-weight: 700; margin-bottom: 15px; color: #d4af37; }
.fin-card--office .fin-title { color: #222; }
.fin-text { font-size: 1rem; line-height: 1.6; opacity: 0.8; margin-bottom: 0; }

/* --- PRZEŁĄCZNIK TABS --- */
.fin-tabs { display: flex; gap: 5px; background: #000; padding: 2px; border-radius: 2px; width: fit-content; }
.fin-tab-btn { 
    background: none; 
    border: none; 
    color: #d4af37; 
    padding: 6px 12px; 
    font-size: 0.7rem; 
    font-weight: 700; 
    cursor: pointer; 
    border-radius: 2px;
}
.fin-tab-btn.active { background: #d4af37; color: #000; }

/* --- POLA KOPIOWANIA --- */
.fin-copy-box {
   position: relative;
   padding: 20px 30px; 
   border-radius: 5px; 
   cursor: pointer; 
   background: rgba(255,255,255,0.05); ;
   transition: all 0.3s;
}
/* Ukryty komunikat, który pojawi się po skopiowaniu */
.fin-copy-box::after {
    content: 'SKOPIOWANO!';
    position: absolute;
    top: 25px;
    left: 10px;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0.8);
    color: #fff;
    padding: 8px 15px;
    border-radius: 4px;
    font-size: 0.8rem;
    /* font-weight: bold; */
    letter-spacing: 1px;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease;
}
/* Pokazanie komunikatu tylko dla klasy .copied */
.fin-copy-box.copied::after {
    opacity: 1;
}

/* W wariancie jasnym (Komitet) dymek może być ciemniejszy dla kontrastu */
.fin-card--office .fin-copy-box.copied::after {
    background: #222;
    color: #fff;
}

.fin-card--office .fin-copy-box { background: #fff; border: 1px solid #ddd; }
.fin-copy-box:hover { border-color: #d4af37; background: rgba(212,175,55,0.1); }

.fin-label { display: block; font-size: 0.65rem; text-transform: uppercase; color: #d4af37; margin-bottom: 5px; }
.fin-card--office .fin-label { color: #666; }
.fin-val { font-family: 'Roboto Mono', monospace; font-size: 1.1rem; font-weight: 500; }
#nr-pl, #nr-kom, #nr-iban {font-size: 1.4rem;}
/* --- FEEDBACK KOPIOWANIA --- */
.fin-copy-box.copied { background: #d4af37 !important; color: #000 !important; }
.fin-copy-box.copied .fin-label { color: rgba(0,0,0,0.6); }

/* --- RESPONSYWNOŚĆ --- */
@media (max-width: 1280px) {
    /* .fin-info { border-right: none; border-bottom: 1px solid rgba(255,255,255,0.1); } */
}
@media (max-width: 1024px) {
   .fin-split {flex-direction: column;}
}
@media (max-width: 768px) {
    .fin-info, .fin-data {
        padding: 20px;
    }
    .fin-copy-box {
        padding: 15px;
    }
}
@media (max-width: 600px) {
    .fin-info, .fin-data {
        padding: 10px;
    }
}