﻿            .cookie-banner{
                --blue:#1e6fd8;
                --blue-dark:#1559b3;
                --panel-bg: rgba(255,255,255,0.98);
                --text:#0b2540;
                --muted:#6b7b8f;
                --shadow: 0 6px 20px rgba(16,40,80,0.42);
                --disabled-track:#d9dfe6;
                --disabled-dot:#f6f7f9;
            }

            /* Container vlevo dole */
            .cookie-banner{
                position: fixed;
                left: 20px;
                bottom: 20px;
                width: 380px;
                max-width: calc(100% - 40px);
                background: var(--panel-bg);
                color: var(--text);
                border-radius: 12px;
                box-shadow: var(--shadow);
                padding: 18px;
                font-family: Inter, Roboto, Arial, sans-serif;
                z-index: 9999;
                opacity: 0;
                transform: translateX(-18px);
                pointer-events: none;
            }

            /* Animace při zobrazení */
            @keyframes slideInFromLeft {
                0% {
                    transform: translateX(-120%);
                    opacity: 0;
                }
                60% {
                    transform: translateX(8px);
                    opacity: 1;
                }
                100% {
                    transform: translateX(0);
                    opacity: 1;
                }
            }

            .cookie-banner.show{
                animation: slideInFromLeft .48s cubic-bezier(.2,.9,.3,1) forwards;
                pointer-events: auto;
            }

            @media (prefers-reduced-motion: reduce){
                .cookie-banner{
                    transition:none;
                    animation:none;
                    opacity:1;
                    transform:none;
                    pointer-events:auto;
                }
            }

            .cookie-header{
                display:flex;
                align-items:center;
                gap:12px;
                margin-bottom:8px;
            }

            .cookie-title{
                font-weight:700;
                font-size:16px;
            }

            .cookie-desc{
                font-size:13px;
                color:var(--muted);
                margin-bottom:12px;
            }

            .cookie-row{
                display:flex;
                align-items:center;
                justify-content:space-between;
                padding:10px 0;
                border-top:1px solid rgba(11,37,64,0.04);
            }

            .cookie-row:first-of-type{
                border-top: none;
            }

            .cookie-label{
                display:flex;
                flex-direction:column;
                gap:4px;
            }

            .cookie-label .name{
                font-weight:600;
                font-size:14px;
            }

            .cookie-label .small{
                font-size:12px;
                color:var(--muted);
            }

            /* Switch */
            .switch{
                --w:52px;
                --h:30px;
                position:relative;
                display:inline-block;
                width:var(--w);
                height:var(--h);
            }

            .switch input{
                display:none;
            }

            .slider{
                position:absolute;
                inset:0;
                background: #e6eefc;
                border-radius:999px;
                transition: background .22s ease, box-shadow .22s ease;
                display:flex;
                align-items:center;
                padding:4px;
                box-sizing:border-box;
            }

            .switch input:checked + .slider{
                background: linear-gradient(90deg,var(--blue),var(--blue-dark));
                box-shadow: 0 2px 8px rgba(30,111,216,0.28);
            }

            .slider::before{
                content: "";
                width:22px;
                height:22px;
                background:#fff;
                border-radius:50%;
                box-shadow: 0 2px 6px rgba(11,37,64,0.12);
                transform: translateX(0);
                transition: transform .22s cubic-bezier(.2,.9,.3,1), background .22s;
                display:block;
            }

            .slider::after{
                content: "✕";
                color: var(--blue-dark);
                font-weight:700;
                font-size:14px;
                position:absolute;
                left:10px;
                top:50%;
                transform: translateY(-50%);
                transition: opacity .18s ease, transform .18s ease;
                opacity:1;
            }

            .switch input:checked + .slider::before{
                transform: translateX(calc(var(--w) - var(--h)));
            }

            .switch input:checked + .slider::after{
                opacity:0;
                transform: translateY(-50%) scale(.8);
            }

            .switch input:focus + .slider{
                box-shadow: 0 0 0 4px rgba(30,111,216,0.12);
            }

            /* Disabled (technické) styling */
            .switch.disabled .slider{
                background: var(--disabled-track);
                box-shadow: none;
                cursor: default;
            }

            .switch.disabled .slider::before{
                background: var(--disabled-dot);
                box-shadow: none;
                transform: translateX(calc(var(--w) - var(--h)));
            }

            .switch.disabled .slider::after{
                opacity:0;
            }

            .switch.disabled input:checked + .slider{
                background: var(--disabled-track);
            }

            .switch.disabled input:disabled + .slider{
                pointer-events: none;
            }

            /* Buttons */
            .cookie-actions{
                display:flex;
                gap:8px;
                margin-top:12px;
                justify-content:flex-end;
            }

            .btn{
                padding:8px 12px;
                border-radius:8px;
                font-weight:600;
                font-size:13px;
                cursor:pointer;
                border: none;
            }

            .btn-ghost{
                background:transparent;
                color:var(--muted);
            }

            .btn-primary{
                background:var(--blue);
                color:#fff;
                box-shadow: 0 6px 18px rgba(30,111,216,0.14);
            }

            .btn-danger{
                background:#f3f4f6;
                color:var(--text);
            }

            @media (max-width:420px){
                .cookie-banner{
                    left:10px;
                    right:10px;
                    width:auto;
                    padding:14px;
                }
            }
