@charset "UTF-8";
/* ===== POUZE TARTEAUCITRON SPECIFICKÉ STYLY ===== */

:root {
    --color-transparent: transparent;
    --color-white: #fff;
    --color-light: #F8F5F1;
    --color-medium: #EAE6DF;
    --color-pulse-red: #B71234;
    --color-rose-red: #F1D0D6;
    --color-medical-blue: #3DB7E4;
    --color-skin-beige: #F1CDAF;
    --color-heart-red: #5E172D;
    --color-bandage-white: #EAE6DF;
    --color-urgent-blue: #003145;
    --color-urgent-blue-60: #66838F;
    --color-urgent-blue-10: #E5EAEC;
}

#tarteaucitron *{
 font-family: 'Fira Sans', Helvetica, Arial, sans-serif;
 -webkit-font-smoothing: antialiased;
 background-color: #fff;
 color: var(--color-urgent-blue)
}

#tarteaucitronRoot ul{
 padding: 0;
}

.tarteaucitronDetails.tarteaucitronInfoBox{
 display: none;
}

.tarteaucitronH3{
 display: block;
}

.tarteaucitron-toggle-group{
 display: block;
 margin-top:10px;
}

#tarteaucitronSave{
 background-color: #fff;
}

.tarteaucitronMainLine .tarteaucitronH1{
 width: 100%;
 text-align: left;
}


/* Bootstrap třídy se aplikují automaticky */

/* ===== BACKDROP ===== */
#tarteaucitronBack {
    background: #000;
    display: none;
    height: 100%;
    left: 0;
    opacity: 0.6;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 2147483646;
    pointer-events: none !important; /* Zakáže všechny kliknutí na backdrop */
}

/* ===== MAIN MODAL ===== */
#tarteaucitron {
    display: none; /* Výchozí skrytý */
    max-height: 85vh;
    left: 50% !important;
    top: 50% !important;
    bottom: auto !important;
    transform: translate(-50%, -50%) !important;
    margin: 0 !important;
    padding: 0;
    position: fixed;
    width: 860px !important;
    max-width: 95%;
    z-index: 2147483647;
    background: #fff;
    border-radius: 8px;
    border: 2px solid #e0e0e0;
}

/* Když je viditelný, použij flexbox */
#tarteaucitron[style*="display: block"],
#tarteaucitron[style*="opacity: 1"] {
    display: flex !important;
    flex-direction: column;
    left: 50% !important;
    top: 50% !important;
    bottom: auto !important;
    transform: translate(-50%, -50%) !important;
}

/* ===== CLOSE BUTTON ===== */
#tarteaucitronClosePanel {
    background: transparent;
    color: #fff;
    cursor: pointer;
    font-size: 28px;
    font-weight: 400;
    padding: 5px;
    position: absolute;
    right: 15px;
    top: 15px;
    border: none;
    z-index: 15;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    transition: background-color 0.2s ease;
    line-height: 1;
}

#tarteaucitronClosePanel:hover {
    background: rgba(255, 255, 255, 0.2);
}

/* Nahradit text křížkem */
#tarteaucitronClosePanel::before {
    content: '×';
    display: block;
    font-size: 32px;
    line-height: 1;
}

/* Skrýt původní text "Zavřít" */
#tarteaucitronClosePanel {
    font-size: 0;
}

/* ===== HEADER - FIXNÍ NAHOŘE ===== */
.tarteaucitronMainLine {
    background: linear-gradient(135deg, #0a364f 0%, #1a5270 100%);
    padding: 25px 20px;
    border-radius: 8px 8px 0 0;
    flex-shrink: 0;
    position: relative;
    z-index: 10;
}

.tarteaucitronH1 {
    font-size: 24px;
    font-weight: 700;
    color: #fff;
    margin: 0 0 15px 0;
    text-align: center;
}

#tarteaucitronInfo {
    display: none !important;
}

.tarteaucitronH2 {
    font-size: 16px;
    font-weight: 600;
    color: #fff;
    margin: 15px 0 0 0;
    text-align: center;
}

.tarteaucitronMainLine .tarteaucitronName {
 min-width: auto;
 text-align: start;
 margin-top: 15px;
}

.tarteaucitronMainLine .tarteaucitronAsk {
    display: flex;
    gap: 10px;
    justify-content: center;
    margin-top: 15px;
}

.tarteaucitronMainLine .tarteaucitronAsk button {
    background: #fbd600;
    color: #000;
    font-weight: 600;
    padding: 10px 20px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 14px;
    border: 0;
}

.tarteaucitronMainLine .tarteaucitronAsk button:hover {
    background: #e5c400;
}

/* ===== SERVICES WRAPPER - SCROLLOVATELNÝ ===== */
#tarteaucitronServices {
    background-color: #fff;
    padding: 0;
    overflow-y: auto !important;
    overflow-x: hidden;
    flex: 1;
    min-height: 0; /* Důležité pro správné scrollování ve flexboxu */
}

/* Scrollbar styling */
#tarteaucitronServices::-webkit-scrollbar {
    width: 10px;
}

#tarteaucitronServices::-webkit-scrollbar-track {
    background: #f5f5f5;
}

#tarteaucitronServices::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 5px;
}

#tarteaucitronServices::-webkit-scrollbar-thumb:hover {
    background: #999;
}

/* ===== BORDER CONTAINER ===== */
.tarteaucitronBorder {
    background: #fff;
    padding: 0;
    min-height: 0;
}

/* ===== CATEGORIES ===== */
.tarteaucitronHidden {
    display: none !important;
}

.tarteaucitronTitle {
    background: #f8f9fa;
    border-bottom: 1px solid #e0e0e0;
    padding: 0;
    margin: 0;
    position: sticky;
    top: 0;
    z-index: 5;
    display: block;
}

.tarteaucitronTitle button {
    width: 100%;
    text-align: left;
    padding: 15px 20px;
    background: #f8f9fa;
    cursor: pointer;
    font-size: 15px;
    font-weight: 600;
    color: #333;
    display: flex;
    align-items: center;
    border: 0;
}

.tarteaucitronTitle button:hover {
    background: #f0f0f0;
}

.tarteaucitronPlus {
    margin-right: 10px;
}

.tarteaucitronPlus::before {
    content: '?';
    display: inline-block;
    transition: transform 0.3s;
}

.tarteaucitronTitle button[aria-expanded="true"] .tarteaucitronPlus::before {
    transform: rotate(90deg);
}

/* ===== LINES ===== */
.tarteaucitronLine {
    background: #fff;
    border-left: 4px solid transparent;
    border-bottom: 1px solid #e0e0e0;
    padding: 15px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

.tarteaucitronLine:hover {
    background: #f9f9f9;
}

.tarteaucitronLine .tarteaucitronName {
    flex: 1;
    min-width: 300px;
}

.tarteaucitronH3 {
    font-size: 15px;
    font-weight: 600;
    color: #333;
    margin-bottom: 5px;
}

/* ===== BOOTSTRAP SWITCH CUSTOMIZATION ===== */
.tarteaucitronAsk .form-switch {
    margin-bottom: 0;
}

.form-check.form-switch .form-check-input{
    background-color: var(--color-urgent-blue-10) !important;
    border-color: var(--color-urgent-blue-60); !important;
    border-width: 2px;
    width: 52px  !important;
    height: 32px  !important;
}

.form-check label.form-check-label{
    display: none;
}


.tarteaucitronAsk{
    padding: 0 0 0 15px;
}

.tarteaucitronIsAllowed .form-check-input:checked {
    background-color: var(--color-urgent-blue-10);
    border-color: var(--color-urgent-blue-60);    
}

.form-switch .form-check-input {
     
    --bs-form-switch-bg: url("data:image/svg+xml;charset=UTF-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><circle cx='8' cy='8' r='6' fill='%2366838F'/><path d='M6 6 L10 10 M10 6 L6 10' stroke='%23E5EAEC' stroke-width='1.2' stroke-linecap='round'/></svg>") !important;
}

.form-switch .form-check-input:checked {
    background-position: right center;
    --bs-form-switch-bg: url("data:image/svg+xml;charset=UTF-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='3' fill='%2366838F'/></svg>") !important;
}


.form-check-input[type=checkbox] {
    border-color: var(--color-urgent-blue-60);
    height:24px;
    width: 24px;    
}
.form-check-input:checked[type=checkbox] {
    --bs-form-check-bg-image: url("data:image/svg+xml;charset=UTF-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'><path fill='none' stroke='%2366838F' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/></svg>");
}


/* ===== MANDATORY ===== */
#tarteaucitronServices_mandatory {
    background: #f0f0f0;
    padding: 15px 20px;
    border-bottom: 2px solid #e0e0e0;
}

#tarteaucitronServices_mandatory .tarteaucitronH3 {
    font-size: 14px;
    color: #666;
}

#tarteaucitronServices_mandatory .tarteaucitronAsk {
    display: none !important;
}

/* ===== SAVE BUTTON - FIXNÍ DOLE ===== */
#tarteaucitronSave {
    text-align: center;
    padding-bottom: 20px;
    flex-shrink: 0;
    position: relative;
    z-index: 10;
}

#tarteaucitronSaveButton {
    background: #0a364f;
    color: #fff;
    font-weight: 700;
    padding: 12px 40px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 16px;
    border: 0;
}

#tarteaucitronSaveButton:hover {
    background: #0c4059;
}

/* ===== READMORE LINKS ===== */
.tarteaucitronStatusInfo {
    font-size: 12px;
    color: #999;
    margin-top: 5px;
}

.tarteaucitronReadmoreInfo,
.tarteaucitronReadmoreOfficial {
    font-size: 12px;
    color: #0a364f;
    text-decoration: underline;
}

.tarteaucitronReadmoreSeparator {
    color: #ccc;
}

/* ===== MOBILE ===== */
@media screen and (max-width: 767px) {
    #tarteaucitron {
        width: 100% !important;
        left: 0 !important;
        margin: 0 !important;
        bottom: 0 !important;
        top: 0 !important;
        border-radius: 0;
        max-width: 100%;
        max-height: 100vh;
    }

    .tarteaucitronLine {
        flex-direction: column;
        align-items: flex-start;
    }

    .tarteaucitronAsk {
        width: 100%;
        margin-top: 10px;
    }
}

/* ===== BANNER ===== */
#tarteaucitronAlertBig {
    background-color: var(--color-urgent-blue);
    color: #fff;
    display: none;
    position: fixed;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    padding: 25px 20px;
    z-index: 2147483645;
    text-align: center;
}

#tarteaucitronDisclaimerAlert {
    font-size: 15px;
    color: #fff;
    margin-bottom: 15px;
}

#tarteaucitronAlertBig button {
    background: #fbd600;
    color: #000;
    font-weight: 600;
    padding: 10px 20px;
    border-radius: 5px;
    margin: 5px;
    cursor: pointer;
    border: 0;
}

#tarteaucitronAlertBig button:hover {
    background: #e5c400;
}

/* ===== FIX PRO HLAVNÍ OFFSET LINE ===== */
#tarteaucitronMainLineOffset {
    margin: 0 !important;
    border: 0 !important;
}

/* ===== RESET INLINE HEIGHTS ===== */
#tarteaucitronServices[style*="height"] {
    height: auto !important;
}

/* ===== KLIKATELNÉ KATEGORIE ===== */

/* Skrýt tlačítko "Spravovat služby" */
.tarteaucitron-toggle-group {
    display: none !important;
}

/* Ikonka collapse/expand pro kategorie - SVG */
.tarteaucitronLine:has(.tarteaucitron-toggle-group) .tarteaucitronH3::before {
    content: '';
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-right: 8px;
    transition: transform 0.3s ease;
    background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23666666" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 18 15 12 9 6"></polyline></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    vertical-align: middle;
}

/* Rotace ikonky když je rozbaleno */
.tarteaucitronLine.category-expanded .tarteaucitronH3::before {
    transform: rotate(90deg);
}

/* Styl pro klikatelné názvy kategorií */
.tarteaucitronLine .tarteaucitronH3 {
    cursor: pointer !important;
    transition: color 0.2s ease;
    user-select: none;
}

.tarteaucitronLine .tarteaucitronH3:hover {
    color: #0a364f !important;
}

/* Hover efekt na ikonku */
.tarteaucitronLine .tarteaucitronH3:hover::before {
    background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%230a364f" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 18 15 12 9 6"></polyline></svg>');
}

/* Celá oblast názvu kategorie jako klikatelná */
.tarteaucitronLine:has(.tarteaucitron-toggle-group) .tarteaucitronName {
    cursor: pointer;
}

/* ===== ANIMACE PRO COLLAPSE/EXPAND SLUŽEB ===== */

/* ZJEDNODUŠENÁ VERZE - BEZ max-height animací */
/* Služby se zobrazí/skryjí okamžitě bez konfliktu */

ul[id^="tarteaucitronServices_"] {
    /* Defaultně skryté - TAC nastaví display: none */
}

/* Když TAC nastaví display: block, zobrazit s animací */
ul[id^="tarteaucitronServices_"][style*="display: block"] {
    animation: slideDown 0.3s ease-out;
}

@keyframes slideDown {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Animace pro jednotlivé řádky služeb */
ul[id^="tarteaucitronServices_"] > li {
    animation: fadeIn 0.3s ease-out;
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

/* ===== FIX: Zobrazit kategorie i když mají class="tarteaucitronHidden" ===== */
/* KRITICKÉ: Toto pravidlo musí být NA KONCI aby přebilo .tarteaucitronHidden */
li[id^="tarteaucitronServicesTitle_"][style*="display: block"].tarteaucitronHidden {
    display: block !important;
}

/* Alternativní specifická pravidla pro každou kategorii */
#tarteaucitronServicesTitle_api[style*="display: block"],
#tarteaucitronServicesTitle_video[style*="display: block"],
#tarteaucitronServicesTitle_analytic[style*="display: block"],
#tarteaucitronServicesTitle_social[style*="display: block"],
#tarteaucitronServicesTitle_ads[style*="display: block"],
#tarteaucitronServicesTitle_other[style*="display: block"],
#tarteaucitronServicesTitle_comment[style*="display: block"],
#tarteaucitronServicesTitle_support[style*="display: block"],
#tarteaucitronServicesTitle_google[style*="display: block"] {
    display: block !important;
}