/* Style dla przycisków w kalkulatorze konsolidacji */
.calc-loan-item {
    position: relative !important;
    padding: calc(var(--spacing-lg) + 0.5rem) var(--spacing-md) !important;
    background: var(--color-gray-100) !important;
    border-radius: var(--radius-md) !important;
    margin-bottom: var(--spacing-md) !important;
    border: 1px solid var(--color-gray-200) !important;
    transition: all 0.2s ease !important;
    width: 100% !important;
}

.calc-loan-item .calc-input-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    grid-template-rows: 1fr !important;
    gap: var(--spacing-md) !important;
    width: 100% !important;
    margin-bottom: 0 !important;
}

.calc-remove-loan {
    position: absolute !important;
    top: calc(var(--spacing-xs) - 0.25rem) !important;
    right: var(--spacing-xs) !important;
    background: transparent !important;
    color: #dc3545 !important;
    border: none !important;
    padding: var(--spacing-xs) !important;
    cursor: pointer !important;
    font-size: var(--font-size-sm) !important;
    font-weight: 500 !important;
    transition: all 0.2s ease !important;
    text-decoration: underline !important;
}

.calc-remove-loan:hover {
    color: #bb2d3b !important;
    background: transparent !important;
}

.calc-add-loan {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: var(--color-gray-100) !important;
    color: var(--color-primary) !important;
    border: 1px solid var(--color-gray-200) !important;
    padding: var(--spacing-md) !important;
    border-radius: var(--radius-md) !important;
    cursor: pointer !important;
    font-size: var(--font-size-base) !important;
    font-weight: 500 !important;
    margin-top: var(--spacing-md) !important;
    transition: all 0.2s ease !important;
    width: 100% !important;
}

.calc-add-loan::before {
    content: "+" !important;
    margin-right: var(--spacing-xs) !important;
    font-size: 1.2em !important;
    line-height: 1 !important;
}

.calc-add-loan:hover {
    background: var(--color-gray-200) !important;
    color: var(--color-primary) !important;
}

.calc-loans-list {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    background: var(--color-white) !important;
    padding: var(--spacing-md) !important;
    border-radius: var(--radius-md) !important;
    margin-bottom: var(--spacing-lg) !important;
    box-shadow: var(--shadow-sm) !important;
    width: 100% !important;
}

.calc-loans-list > h4 {
    width: 100% !important;
    text-align: left !important;
    color: var(--color-primary) !important;
    font-size: var(--font-size-xl) !important;
    margin: 0 0 var(--spacing-md) 0 !important;
    padding-bottom: var(--spacing-sm) !important;
    border-bottom: 2px solid var(--color-secondary) !important;
}

.calc-loan-type {
    position: relative !important;
    width: 100% !important;
}

.calc-loan-type label {
    display: block !important;
    margin-bottom: var(--spacing-xs) !important;
    color: var(--color-primary) !important;
    font-weight: 500 !important;
}

.calc-loan-type select {
    width: 100% !important;
    height: 52px !important;
    line-height: 1.2 !important;
    padding: 0.8rem 2rem 0.8rem 0.8rem !important;
    border: 1px solid var(--color-gray-200) !important;
    border-radius: var(--radius-sm) !important;
    background-color: var(--color-white) !important;
    color: var(--color-primary) !important;
    font-size: var(--font-size-base) !important;
    font-family: var(--font-family-base) !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    appearance: none !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 0.8rem center !important;
}

.calc-loan-type select:hover, .calc-loan-type select:focus {
    border-color: var(--color-secondary) !important;
    outline: none !important;
}

.calc-loan-type select option {
    padding: var(--spacing-sm) !important;
    background-color: var(--color-white) !important;
    color: var(--color-primary) !important;
}

.calc-loan-type::before {
    display: none !important;
}

/* Style dla pojedynczego kredytu */
.calc-loan-input {
    position: relative !important;
    width: 100% !important;
}

.calc-loan-input label {
    display: block !important;
    margin-bottom: var(--spacing-xs) !important;
    color: var(--color-primary) !important;
    font-weight: 500 !important;
}

.calc-loan-input input {
    width: 100% !important;
    height: 50px !important;
    padding: var(--spacing-sm) !important;
    border: 1px solid var(--color-gray-200) !important;
    border-radius: var(--radius-sm) !important;
    background-color: var(--color-white) !important;
    color: var(--color-primary) !important;
    font-size: var(--font-size-base) !important;
    font-family: var(--font-family-base) !important;
    transition: all 0.2s ease !important;
}

.calc-loan-input input:hover, .calc-loan-input input:focus {
    border-color: var(--color-secondary) !important;
    outline: none !important;
}

/* Style dla parametrów kredytu konsolidacyjnego */
.calc-consolidation-params {
    margin-top: var(--spacing-lg) !important;
    padding: var(--spacing-md) !important;
    background: var(--color-gray-100) !important;
    border-radius: var(--radius-md) !important;
    border: 1px solid var(--color-gray-200) !important;
}

.calc-consolidation-params h4 {
    margin-bottom: var(--spacing-md) !important;
    color: var(--color-primary) !important;
    font-size: var(--font-size-lg) !important;
}

.calc-consolidation-params .calc-input-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: var(--spacing-md) !important;
}

/* Style dla sekcji wynikowej */
.calc-results {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: var(--spacing-md) !important;
    margin-top: var(--spacing-lg) !important;
    padding: var(--spacing-md) !important;
    background: var(--color-white) !important;
    border-radius: var(--radius-md) !important;
    box-shadow: var(--shadow-sm) !important;
}

.calc-result-item {
    text-align: center !important;
}

.calc-result-item label {
    display: block !important;
    color: var(--color-primary) !important;
    font-weight: 500 !important;
    margin-bottom: var(--spacing-xs) !important;
}

.calc-result-item .value {
    font-size: var(--font-size-lg) !important;
    font-weight: 600 !important;
    color: var(--color-secondary) !important;
}

/* Style dla strzałek góra/dół */
.calc-number-spinner-down,
.calc-number-spinner-up {
    position: absolute !important;
    width: 50px !important;
    height: 50px !important;
    top: 24px !important; /* Uwzględniamy wysokość labela */
    background: var(--color-gray-100) !important;
    border: 1px solid var(--color-gray-200) !important;
    z-index: 1 !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--color-primary) !important;
    font-size: 10px !important;
    user-select: none !important;
    transition: all 0.2s ease !important;
    line-height: 1 !important;
}

/* Przycisk zmniejszania (po lewej) */
.calc-number-spinner-down {
    left: 0 !important;
    border-right: none !important;
    border-top-left-radius: var(--radius-sm) !important;
    border-bottom-left-radius: var(--radius-sm) !important;
}

/* Przycisk zwiększania (po prawej) */
.calc-number-spinner-up {
    right: 0 !important;
    border-left: none !important;
    border-top-right-radius: var(--radius-sm) !important;
    border-bottom-right-radius: var(--radius-sm) !important;
}

/* Hover dla przycisków */
.calc-number-spinner-down:hover,
.calc-number-spinner-up:hover {
    background-color: var(--color-gray-200) !important;
}

/* Active dla przycisków */
.calc-number-spinner-down:active,
.calc-number-spinner-up:active {
    background-color: var(--color-gray-300) !important;
    transform: translateY(1px) !important;
}

/* Ukrywamy domyślne strzałki */
.calc-loan-input input[type="number"]::-webkit-outer-spin-button,
.calc-loan-input input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

/* Firefox */
.calc-loan-input input[type="number"] {
    -moz-appearance: textfield !important;
    padding-right: 50px !important;
    padding-left: 50px !important;
    text-align: center !important;
}

/* Responsywność */
@media (max-width: 48rem) {
    .calc-loan-item .calc-input-grid {
        grid-template-columns: 1fr !important;
        grid-template-rows: auto !important;
    }
    
    .calc-consolidation-params .calc-input-grid {
        grid-template-columns: 1fr !important;
    }
    
    .calc-results {
        grid-template-columns: 1fr !important;
        gap: var(--spacing-sm) !important;
    }
    
    .calc-remove-loan {
        top: var(--spacing-xs) !important;
        right: var(--spacing-sm) !important;
    }

    .calc-loan-input {
        width: 100% !important;
    }

    .calc-loan-input input[type="number"] {
        width: 100% !important;
        padding-left: 40px !important;
        padding-right: 40px !important;
    }

    .calc-number-spinner-down,
    .calc-number-spinner-up {
        width: 40px !important;
    }

    .calc-result-item {
        width: 100% !important;
        padding: var(--spacing-md) !important;
        border-bottom: 1px solid var(--color-gray-200) !important;
    }

    .calc-result-item:last-child {
        border-bottom: none !important;
    }

    .calc-result-item .value {
        font-size: calc(var(--font-size-lg) * 1.2) !important;
    }
}

.calc-chart-wrapper {
    display: block !important;
    width: 100% !important;
    min-height: 300px !important;
    position: relative !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 0 !important;
    background: var(--color-white) !important;
    border-radius: var(--radius-md) !important;
    box-shadow: var(--shadow-sm) !important;
    overflow: visible !important;
}

.calc-chart-box {
    display: block !important;
    width: 100% !important;
    height: 300px !important;
    position: relative !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
}

#consolidation-chart {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    box-sizing: border-box !important;
    position: relative !important;
    z-index: 1 !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Dodajemy style dla rodzica */
.kk-calculator {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 20px !important;
    box-sizing: border-box !important;
    position: relative !important;
    overflow: visible !important;
}

/* Dodajemy style dla potencjalnych kontenerów WordPress */
.entry-content .kk-calculator,
.site-content .kk-calculator,
.post-content .kk-calculator,
.page-content .kk-calculator,
.content-area .kk-calculator,
.main-content .kk-calculator {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Wymuszamy szerokość dla wszystkich potencjalnych kontenerów nadrzędnych */
[class*="container"] .kk-calculator,
[class*="wrapper"] .kk-calculator,
[class*="row"] .kk-calculator,
[class*="col"] .kk-calculator {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Style dla przycisku obliczania */
.calc-calculate-button {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    background: var(--color-primary) !important;
    color: var(--color-white) !important;
    border: none !important;
    outline: none !important;
    padding: 1rem !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    font-size: 1.125rem !important;
    font-weight: 600 !important;
    margin: 2rem 0 !important;
    transition: all 0.2s ease !important;
    text-align: center !important;
    line-height: 1.5 !important;
    text-decoration: none !important;
    box-shadow: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    font-family: var(--font-family-base) !important;
}

.calc-calculate-button:hover {
    background: #0a1b2a !important;
    color: var(--color-white) !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    text-decoration: none !important;
}

.calc-calculate-button:focus,
.calc-calculate-button:active {
    background: var(--color-primary) !important;
    color: var(--color-white) !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    text-decoration: none !important;
} 
