/* Sylius Brand Colors */
:root {
    --sylius-dark: #1E2E3E;
    --sylius-accent: #22b99a;
    --sylius-accent-hover: #1a8f78;

    /* Bootstrap overrides */
    --bs-primary: #22b99a;
    --bs-primary-rgb: 34, 185, 154;
    --bs-link-color: #22b99a;
    --bs-link-hover-color: #1a8f78;
    --bs-dark: #1E2E3E;
    --bs-dark-rgb: 30, 46, 62;
}

/* Button overrides */
.btn-primary {
    --bs-btn-bg: var(--sylius-accent);
    --bs-btn-border-color: var(--sylius-accent);
    --bs-btn-hover-bg: var(--sylius-accent-hover);
    --bs-btn-hover-border-color: var(--sylius-accent-hover);
    --bs-btn-active-bg: var(--sylius-accent-hover);
    --bs-btn-active-border-color: var(--sylius-accent-hover);
    --bs-btn-disabled-bg: var(--sylius-accent);
    --bs-btn-disabled-border-color: var(--sylius-accent);
}

.btn-outline-primary {
    --bs-btn-color: var(--sylius-accent);
    --bs-btn-border-color: var(--sylius-accent);
    --bs-btn-hover-bg: var(--sylius-accent);
    --bs-btn-hover-border-color: var(--sylius-accent);
    --bs-btn-active-bg: var(--sylius-accent-hover);
    --bs-btn-active-border-color: var(--sylius-accent-hover);
}

/* Navbar Sylius dark */
.navbar.bg-dark {
    background-color: var(--sylius-dark) !important;
}

/* Navbar logo styling */
.navbar-brand {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.navbar-logo-icon {
    height: 28px;
    width: auto;
}

.navbar-logo-text {
    font-weight: 600;
    font-size: 1.25rem;
    color: #fff;
}

/* Link colors */
a {
    color: var(--sylius-accent);
}

a:hover {
    color: var(--sylius-accent-hover);
}

/* Focus ring for accessibility */
.btn-primary:focus-visible {
    box-shadow: 0 0 0 0.25rem rgba(34, 185, 154, 0.5);
}

.btn-outline-primary:focus-visible {
    box-shadow: 0 0 0 0.25rem rgba(34, 185, 154, 0.5);
}

/* Quote form styling */
.quote-form-container {
    max-width: 1200px;
    margin: 0 auto;
}

.quote-preview {
    position: sticky;
    top: 20px;
}

.discount-warning {
    color: #856404;
    background-color: #fff3cd;
    border-color: #ffeeba;
    padding: 0.5rem;
    border-radius: 0.25rem;
    margin-top: 0.25rem;
}

.loading-indicator {
    opacity: 0.6;
    pointer-events: none;
}

/* Bottom Action Bar for mobile */
.quote-action-bar {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: #fff;
    border-top: 1px solid #dee2e6;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
    padding: 12px 0;
    padding-bottom: calc(12px + env(safe-area-inset-bottom));
    z-index: 1030;
}

/* Touch targets min 44px for accessibility */
.quote-action-bar .btn {
    min-height: 44px;
}

/* Content padding to prevent overlap with bottom bar */
.quote-form-wrapper {
    padding-bottom: 100px;
}

@media (min-width: 992px) {
    .quote-form-wrapper {
        padding-bottom: 0;
    }
}

/* Mobile service rows styling */
@media (max-width: 767.98px) {
    .service-row {
        background: #f8f9fa;
        border-radius: 8px;
        padding: 12px;
        margin-bottom: 12px;
    }

    .service-row .col-12 {
        margin-bottom: 8px;
    }

    .service-row .col-12:last-child {
        margin-bottom: 0;
    }
}

/* Desktop actions card styling - at bottom of form */
.quote-actions-card {
    background: linear-gradient(to bottom, #f8f9fa, #ffffff);
    border: 1px solid #dee2e6;
}
