/* ========================================
           WMSSE COMPLETE DESIGN SYSTEM
           Scalony z wszystkich production files
           ======================================== */
        
        :root {
            /* BRAND COLORS - z brandbook i live strony */
            --color-primary: #374e93;       /* Granatowy PANTONE 287 */
            --color-secondary: #0d9ea2;     /* Turkusowy PANTONE 3275 */
            --color-secondary-light: #1ba8ac;
            --color-accent: #c7d64f;        /* Jaskrawozielony PANTONE 389 */
            --color-accent-dark: #b3c445;
            --color-dark: #232a3a;          /* Ciemnoszary PANTONE 432 alt */
            --color-text: #323f3e;          /* z partners-grid */
            --color-text-light: #555555;
            --color-text-muted: #666666;
            
            /* BACKGROUNDS & BORDERS */
            --color-bg-light: #f4fafd;      /* z partners-grid */
            --color-bg-white: #ffffff;
            --color-border: #e8f4f5;        /* z partners-grid */
            --color-border-light: rgba(55, 78, 147, 0.15);
            
            /* STATUS COLORS */
            --color-success: #28a745;
            --color-error: #dc3545;
            --color-warning: #ffc107;
            --color-info: #17a2b8;
            
            /* TYPOGRAPHY - Poppins confirmed from live site */
            --font-primary: 'Poppins', Tahoma, Arial, 'Helvetica Neue', Helvetica, sans-serif;
            --font-email-safe: Arial, Helvetica, Tahoma, Verdana, sans-serif; /* for footers */
            --font-size-xs: 0.75rem;     /* 12px */
            --font-size-sm: 0.875rem;    /* 14px */
            --font-size-base: 1rem;      /* 16px */
            --font-size-lg: 1.125rem;    /* 18px */
            --font-size-xl: 1.25rem;     /* 20px */
            --font-size-2xl: 1.5rem;     /* 24px */
            --font-size-3xl: 1.875rem;   /* 30px */
            --font-weight-normal: 400;
            --font-weight-medium: 500;
            --font-weight-semibold: 600;
            --font-weight-bold: 700;
            --font-weight-black: 800;    /* z partners-grid */
            
            /* SPACING SYSTEM - unified z wszystkich plików */
            --space-1: 0.25rem;  /* 4px */
            --space-2: 0.5rem;   /* 8px */
            --space-3: 0.75rem;  /* 12px */
            --space-4: 1rem;     /* 16px */
            --space-5: 1.25rem;  /* 20px */
            --space-6: 1.5rem;   /* 24px */
            --space-8: 2rem;     /* 32px */
            --space-10: 2.5rem;  /* 40px */
            --space-12: 3rem;    /* 48px */
            
            /* GEOMETRY - z partners-grid jako standard */
            --border-radius: 1.4rem;        /* large radius */
            --border-radius-sm: 0.95rem;    /* medium radius */
            --border-radius-xs: 0.6rem;     /* small radius */
            --border-radius-email: 5px;     /* email-safe radius */
            --border-accent-width: 3px;     /* z mapy - uniwersalny accent */
            --border-section: 5px;          /* z emaili - lewy pasek sekcji */
            --border-width: 1px;
            --border-width-thick: 2px;
            
            /* SHADOWS - z partners-grid sophisticated system */
            --shadow-light: 0 2px 12px rgba(55,78,147,0.07);
            --shadow-medium: 0 8px 32px 0 rgba(55, 78, 147, 0.13);
            --shadow-strong: 0 18px 40px 0 rgba(13, 158, 162, 0.15), 0 8px 16px 0 rgba(55, 78, 147, 0.08), 0 2px 8px 0 rgba(35, 41, 58, 0.05);
            --shadow-brand: 0 4px 15px rgba(55, 78, 147, 0.12);
            --shadow-email: 0 4px 15px rgba(0, 0, 0, 0.05); /* uproszczony dla email */
            
            /* ANIMATIONS - z partners-grid */
            --animation-fast: 0.2s;
            --animation-normal: 0.3s;
            --animation-slow: 0.5s;
            --easing-smooth: cubic-bezier(0.4, 0, 0.2, 1);
            --easing-bounce: cubic-bezier(0.68, -0.55, 0.265, 1.55);
        }

        /* ========================================
           RESET & BASE
           ======================================== */

        /* ========================================
           TYPOGRAPHY SYSTEM
           ======================================== */
        
       .wmsse-h1 {
    font-size: clamp(1.5rem, 4vw, 2.25rem);
    font-weight: var(--font-weight-black);
    color: var(--color-primary);     /* ← ZMIENIONE na granatowy z brandbooka */
    line-height: 1.15;
    letter-spacing: -0.01em;
    margin-bottom: var(--space-6);
}

        .wmsse-h2 {
            font-size: var(--font-size-2xl);
            font-weight: var(--font-weight-semibold);
            color: var(--color-primary);
            line-height: 1.3;
            margin-bottom: var(--space-5);
        }

        .wmsse-h3 {
            font-size: var(--font-size-xl);
            font-weight: var(--font-weight-semibold);
            color: var(--color-secondary);
            line-height: 1.4;
            margin-bottom: var(--space-4);
        }

        .wmsse-text {
            font-size: var(--font-size-base);
            font-weight: var(--font-weight-normal);
            color: var(--color-text);
            line-height: 1.6;
            margin-bottom: var(--space-4);
        }

        .wmsse-text-large {
            font-size: var(--font-size-lg);
            line-height: 1.55;
        }

        .wmsse-text-small {
            font-size: var(--font-size-sm);
            color: var(--color-text-muted);
        }

        /* ========================================
           CORE COMPONENTS - WEB VERSION
           ======================================== */

        /* PANELS - podstawowy building block */
        .wmsse-panel {
            background: var(--color-bg-white);
            border-radius: var(--border-radius);
            box-shadow: var(--shadow-medium);
            border: var(--border-width-thick) solid var(--color-border);
            transition: all var(--animation-normal);
            overflow: hidden;
        }

        @media (hover: hover) {
            .wmsse-panel:hover {
                transform: translateY(-2px);
                box-shadow: var(--shadow-strong);
            }
        }

        .wmsse-panel-content {
            padding: var(--space-6);
        }

        /* ACCENT SECTIONS - kluczowy element brandingu */
        .wmsse-section-accent {
            border-left: var(--border-section) solid var(--color-secondary);
            background: var(--color-bg-white);
            padding: var(--space-6);
            border-radius: var(--border-radius-sm);
            box-shadow: var(--shadow-medium);
            transition: all var(--animation-normal);
        }

        @media (hover: hover) {
            .wmsse-section-accent:hover {
                transform: translateY(-2px);
                box-shadow: var(--shadow-brand);
            }
        }

        .wmsse-section-accent.primary {
            border-left-color: var(--color-primary);
        }

        .wmsse-section-accent.accent {
            border-left-color: var(--color-accent);
        }

        /* DATA GRIDS - z mapy z partners-grid styling */
        .wmsse-data-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
            gap: var(--space-4);
            margin: var(--space-5) 0;
        }

        .wmsse-data-item {
            background: var(--color-bg-white);
            padding: var(--space-4);
            border-radius: var(--border-radius-sm);
            border-left: var(--border-accent-width) solid var(--color-secondary);
            transition: all var(--animation-normal);
            box-shadow: var(--shadow-light);
        }

        @media (hover: hover) {
            .wmsse-data-item:hover {
                background: #f8fcfd;
                border-left-color: var(--color-secondary-light);
                transform: translateY(-1px) scale(1.02);
                box-shadow: var(--shadow-medium);
            }
        }

        .wmsse-data-label {
            font-size: var(--font-size-xs);
            color: var(--color-text-muted);
            margin-bottom: var(--space-1);
            text-transform: uppercase;
            letter-spacing: 0.5px;
            font-weight: var(--font-weight-medium);
        }

        .wmsse-data-value {
            font-size: var(--font-size-lg);
            font-weight: var(--font-weight-semibold);
            color: var(--color-secondary);
        }

        /* HIGHLIGHT BOXES - z mailingów */
        .wmsse-highlight-box {
            background: #f8fafc;
            padding: var(--space-5);
            border-radius: var(--border-radius-sm);
            border-left: var(--border-section) solid var(--color-accent);
            margin: var(--space-6) 0;
            transition: all var(--animation-normal);
        }

        @media (hover: hover) {
            .wmsse-highlight-box:hover {
                background: rgba(199, 214, 79, 0.05);
                transform: translateY(-1px);
                box-shadow: var(--shadow-light);
            }
        }

        .wmsse-highlight-value {
            font-size: var(--font-size-2xl);
            font-weight: var(--font-weight-bold);
            color: var(--color-secondary);
            margin-bottom: var(--space-2);
        }

        /* SEPARATORS - z mailingów */
        .wmsse-separator {
            height: 4px;
            background: linear-gradient(90deg, var(--color-accent) 0%, var(--color-secondary) 100%);
            border-radius: 2px;
            margin: var(--space-6) 0;
        }

        .wmsse-separator-thin {
            height: 2px;
            margin: var(--space-4) 0;
        }

        .wmsse-separator-centered {
            width: 200px;
            margin: var(--space-6) auto;
        }

        /* DECORATIVE DOTS - z mailingów */
        .wmsse-dots {
            display: flex;
            justify-content: center;
            gap: 6px;
            margin: var(--space-4) 0;
        }

        .wmsse-dot {
            width: 8px;
            height: 8px;
            background: var(--color-accent);
            border-radius: 50%;
        }

        /* TRIANGLE LISTS - z mailingów i design system */
        .wmsse-triangle-list {
            list-style: none;
            padding: 0;
            margin: var(--space-5) 0;
        }

        .wmsse-triangle-list li {
            position: relative;
            padding-left: 25px;
            margin-bottom: var(--space-3);
            color: var(--color-text-light);
            font-size: var(--font-size-base);
            line-height: 1.6;
        }

        .wmsse-triangle-list li::before {
            content: '\25B6'; /* Bezpieczny kod unicode dla znaku ▶ */
            position: absolute;
            left: 0;
            top: 2px; /* Drobna korekta pionowego wyrównania */
            color: var(--color-accent);
            font-size: 0.8rem;
            font-weight: bold;
        }

        /* BUTTONS - sophisticated z partners-grid */
        .wmsse-btn {
            display: inline-flex;
            align-items: center;
            gap: var(--space-2);
            padding: 0.75rem 1.5rem;
            border: none;
            border-radius: var(--border-radius-sm);
            font-family: var(--font-primary);
            font-weight: var(--font-weight-semibold);
            font-size: var(--font-size-base);
            text-decoration: none;
            cursor: pointer;
            transition: all var(--animation-fast);
            box-shadow: var(--shadow-light);
            position: relative;
            overflow: hidden;
        }

        .wmsse-btn-primary {
            background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-dark) 100%);
            color: white;
        }

        @media (hover: hover) {
            .wmsse-btn-primary:hover {
                background: linear-gradient(135deg, var(--color-secondary) 0%, #0b8a94 100%);
                transform: translateY(-2px) scale(1.05);
                box-shadow: var(--shadow-brand);
            }
        }

        .wmsse-btn-secondary {
            background: var(--color-secondary);
            color: white;
        }

        @media (hover: hover) {
            .wmsse-btn-secondary:hover {
                background: var(--color-secondary-light);
                transform: translateY(-2px);
            }
        }

        .wmsse-btn-accent {
            background: var(--color-accent);
            color: var(--color-primary);
        }

        .wmsse-btn-small {
            padding: 0.5rem 1rem;
            font-size: var(--font-size-sm);
            gap: var(--space-1);
        }

        /* FORMS */
        .wmsse-input {
            width: 100%;
            padding: var(--space-4);
            border: var(--border-width) solid var(--color-border);
            border-radius: var(--border-radius-sm);
            font-family: var(--font-primary);
            font-size: var(--font-size-base);
            transition: all var(--animation-fast);
            background: var(--color-bg-white);
        }

        .wmsse-input:focus {
            outline: none;
            border-color: var(--color-secondary);
            box-shadow: 0 0 0 3px rgba(13, 158, 162, 0.1);
        }

        .wmsse-label {
            display: block;
            font-weight: var(--font-weight-medium);
            color: var(--color-text);
            margin-bottom: var(--space-2);
            font-size: var(--font-size-sm);
        }

        /* ALERTS */
        .wmsse-alert {
            padding: var(--space-4);
            border-radius: var(--border-radius-xs);
            border-left: var(--border-accent-width) solid;
            margin: var(--space-4) 0;
            transition: all var(--animation-normal);
        }

        @media (hover: hover) {
            .wmsse-alert:hover {
                transform: translateY(-1px);
                box-shadow: var(--shadow-light);
            }
        }

        .wmsse-alert-success {
            background: rgba(40, 167, 69, 0.1);
            border-left-color: var(--color-success);
            color: #155724;
        }

        .wmsse-alert-error {
            background: rgba(220, 53, 69, 0.1);
            border-left-color: var(--color-error);
            color: #721c24;
        }

        .wmsse-alert-info {
            background: rgba(13, 158, 162, 0.1);
            border-left-color: var(--color-secondary);
            color: #0c5460;
        }

        .wmsse-alert-warning {
            background: #fff3cd;
            border: 1px solid #ffeaa7;
            border-left: var(--border-accent-width) solid var(--color-warning);
            color: #856404;
        }

        /* INFO PANELS - z mapy z sophisticated styling */
        .wmsse-info-panel {
            background: rgba(255, 255, 255, 0.98);
            backdrop-filter: blur(10px);
            border: var(--border-width) solid var(--color-border-light);
            border-radius: var(--border-radius);
            padding: var(--space-6);
            box-shadow: var(--shadow-strong);
            transition: all var(--animation-normal);
        }

        @media (hover: hover) {
            .wmsse-info-panel:hover {
                transform: translateY(-2px);
            }
        }

        /* TABLES - z mailingów */
        .wmsse-table {
            width: 100%;
            border-collapse: collapse;
            margin: var(--space-5) 0;
            background: var(--color-bg-white);
            border-radius: var(--border-radius-xs);
            overflow: hidden;
            box-shadow: var(--shadow-light);
        }

        .wmsse-table th {
            background: var(--color-primary);
            color: white;
            padding: var(--space-4);
            text-align: left;
            font-weight: var(--font-weight-semibold);
            font-size: var(--font-size-sm);
        }

        .wmsse-table td {
            padding: var(--space-3) var(--space-4);
            border-bottom: var(--border-width) solid var(--color-border);
            font-size: var(--font-size-sm);
        }

        @media (hover: hover) {
            .wmsse-table tbody tr:hover {
                background: var(--color-bg-light);
            }
        }

        /* PROGRAM TABLE - specific z mailingów */
        .wmsse-program-table {
            width: 100%;
            font-size: var(--font-size-sm);
            line-height: 1.7;
        }

        .wmsse-program-time {
            font-weight: var(--font-weight-bold);
            color: var(--color-primary);
            width: 90px;
            vertical-align: top;
            padding-right: var(--space-4);
        }

        /* ========================================
           EMAIL-SAFE COMPONENTS
           Wszystko z mailingów bez animacji
           ======================================== */

        /* EMAIL RESET */
        .wmsse-email-reset {
            -webkit-text-size-adjust: 100%;
            -ms-text-size-adjust: 100%;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            font-family: var(--font-primary);
        }

        .wmsse-email-table {
            border-collapse: collapse;
            mso-table-lspace: 0pt;
            mso-table-rspace: 0pt;
        }

        .wmsse-email-img {
            -ms-interpolation-mode: bicubic;
            border: 0;
            height: auto;
            line-height: 100%;
            outline: none;
            text-decoration: none;
            max-width: 100%;
            vertical-align: top;
        }

        /* EMAIL SECTIONS */
        .wmsse-email-section {
            border-left: var(--border-section) solid var(--color-secondary);
            background: var(--color-bg-white);
            padding: var(--space-6);
            margin: var(--space-4) 0;
        }

        .wmsse-email-section.primary {
            border-left-color: var(--color-primary);
        }

        .wmsse-email-section.accent {
            border-left-color: var(--color-accent);
        }

        /* EMAIL HIGHLIGHT BOX */
        .wmsse-email-highlight {
            background: #f8fafc;
            border-left: 6px solid var(--color-accent);
            padding: 20px;
            margin: 25px 0;
            border-radius: 0 var(--border-radius-email) var(--border-radius-email) 0;
        }

        .wmsse-email-highlight.secondary {
            border-left-color: var(--color-secondary);
        }

        /* EMAIL BUTTONS */
        .wmsse-email-btn {
            display: inline-block;
            padding: 14px 28px;
            background-color: var(--color-primary);
            color: #ffffff;
            text-decoration: none;
            border-radius: var(--border-radius-email);
            font-family: var(--font-primary);
            font-weight: var(--font-weight-semibold);
            text-align: center;
            border: none;
            min-height: 44px;
            box-sizing: border-box;
            line-height: 1.4;
        }

        .wmsse-email-btn.secondary {
            background-color: var(--color-secondary);
        }

        .wmsse-email-btn.accent {
            background-color: var(--color-accent);
            color: var(--color-primary);
        }

        /* EMAIL HEADER */
        .wmsse-email-header {
            background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%);
            color: white;
            padding: 30px;
            text-align: center;
        }

        /* EMAIL FOOTER */
        .wmsse-email-footer {
            background: linear-gradient(135deg, var(--color-dark) 0%, var(--color-primary) 100%);
            padding: 30px;
            text-align: center;
        }

        /* EMAIL FOOTER FONTS - safe fallback */
        .wmsse-email-footer,
        .wmsse-email-footer * {
            font-family: var(--font-email-safe);
        }

        /* EMAIL TRIANGLE LIST */
        .wmsse-email-triangle-list {
            list-style: none;
            padding-left: 0;
            margin: 20px 0;
        }

        .wmsse-email-triangle-list li {
            position: relative;
            padding-left: 25px;
            margin-bottom: 12px;
            color: var(--color-text-light);
            font-size: var(--font-size-base);
            line-height: 1.6;
        }

        .wmsse-email-triangle-list li::before {
            content: '\25B6'; /* Używamy tego samego bezpiecznego kodu */
            position: absolute;
            left: 0;
            top: 2px;
            color: var(--color-accent);
            font-size: 0.8rem;
            font-weight: bold;
        }

        /* ========================================
           RESPONSIVE GRID SYSTEM
           ======================================== */

        .wmsse-grid {
            display: grid;
            gap: var(--space-4);
        }

        .wmsse-grid-2 { grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); }
        .wmsse-grid-3 { grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }
        .wmsse-grid-4 { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); }

        /* MOBILE EMAIL RESPONSIVE - z mailingów */
        @media only screen and (max-width: 600px) {
            .wmsse-email-container { width: 100% !important; margin: 0 !important; }
            .wmsse-email-content { padding: 20px 15px !important; }
            .wmsse-email-header { padding: 25px 20px !important; }
            .wmsse-email-footer { padding: 20px !important; }
            .wmsse-email-btn { 
                display: block !important; 
                width: 100% !important; 
                max-width: 280px !important; 
                margin: 8px auto !important; 
            }
            .wmsse-program-table { font-size: 12px !important; }
            .wmsse-program-time { width: 70px !important; font-size: 11px !important; }
            .wmsse-triangle-list li { font-size: 13px !important; padding-left: 20px !important; }
            .wmsse-email-highlight { padding: 15px !important; margin: 15px 0 !important; }
            .wmsse-separator { margin: 15px 0 !important; }
        }

        @media (max-width: 768px) {
            .wmsse-grid-2,
            .wmsse-grid-3,
            .wmsse-grid-4 {
                grid-template-columns: 1fr;
            }
            
            .wmsse-data-grid {
                grid-template-columns: 1fr;
            }
            
            .wmsse-panel-content,
            .wmsse-section-accent {
                padding: var(--space-4);
            }
        }

        /* ========================================
           ACCESSIBILITY & PERFORMANCE
           z partners-grid best practices
           ======================================== */

        @media (prefers-reduced-motion: reduce) {
            *,
            *::before,
            *::after {
                animation-duration: 0.01ms !important;
                animation-iteration-count: 1 !important;
                transition-duration: 0.01ms !important;
                scroll-behavior: auto !important;
            }
        }

        @media (prefers-color-scheme: dark) {
            :root {
                --color-bg-white: var(--color-dark);
                --color-text: #e5eed6;
                --color-border: var(--color-accent);
            }
            
            .wmsse-panel {
                box-shadow: 0 6px 24px 0 rgba(55, 78, 147, 0.21);
            }
        }

        /* EMAIL DARK MODE - z mailingów */
        @media (prefers-color-scheme: dark) {
            .wmsse-email-container { background-color: var(--color-dark) !important; }
            .wmsse-email-content { background-color: var(--color-dark) !important; }
            .wmsse-email-section { background-color: var(--color-dark) !important; }
            .wmsse-email-highlight { background-color: #3c3c3c !important; }
            .wmsse-email-btn { background-color: var(--color-secondary) !important; }
        }


        /* ========================================
           UTILITY CLASSES
           ======================================== */

        .text-primary { color: var(--color-primary) !important; }
        .text-secondary { color: var(--color-secondary) !important; }
        .text-accent { color: var(--color-accent) !important; }
        .text-muted { color: var(--color-text-muted) !important; }

        .bg-primary { background-color: var(--color-primary) !important; }
        .bg-secondary { background-color: var(--color-secondary) !important; }
        .bg-accent { background-color: var(--color-accent) !important; }
        .bg-light { background-color: var(--color-bg-light) !important; }

        .border-primary { border-color: var(--color-primary) !important; }
        .border-secondary { border-color: var(--color-secondary) !important; }
        .border-accent { border-color: var(--color-accent) !important; }

        /* LOADING STATES - z mapy */
        .wmsse-loading {
            display: flex;
            align-items: center;
            justify-content: center;
            padding: var(--space-8);
        }

        .wmsse-spinner {
            width: 40px;
            height: 40px;
            border: 3px solid #f3f3f3;
            border-top: 3px solid var(--color-secondary);
            border-radius: 50%;
            animation: spin 1s linear infinite;
        }

        @keyframes spin {
            0% { transform: rotate(0deg); }
            100% { transform: rotate(360deg); }
        }

        /* ACCESSIBILITY HELPERS */
        .sr-only {
            position: absolute !important;
            width: 1px !important;
            height: 1px !important;
            padding: 0 !important;
            margin: -1px !important;
            overflow: hidden !important;
            clip: rect(0,0,0,0) !important;
            white-space: nowrap !important;
            border: 0 !important;
        }

        /* ========================================
           EMAIL MSO FIXES
           ======================================== */

        /* Outlook specific - z mailingów */
        .wmsse-outlook-fix {
            mso-line-height-rule: exactly;
        }

        .wmsse-no-link-underline {
            text-decoration: none !important;
        }
        

        /* CONTACT SECTIONS - fully rounded for visual consistency */
        .wmsse-section-contact {
            border-left: var(--border-section) solid var(--color-secondary);
            background: var(--color-bg-white);
            padding: var(--space-6);
            border-radius: var(--border-radius-sm);
            box-shadow: var(--shadow-medium);
            transition: all var(--animation-normal);
        }

        @media (hover: hover) {
            .wmsse-section-contact:hover {
                transform: translateY(-2px);
                box-shadow: var(--shadow-brand);
            }
        }

        .wmsse-section-contact.primary {
            border-left-color: var(--color-primary);
        }

        .wmsse-section-contact.accent {
            border-left-color: var(--color-accent);
        }
        
     /* ========================================
   WYSZUKIWARKA - POPRAWKI UX/UI v6.0
   ======================================== */

/* --- Poprawki Filtrów --- */
.wmsse-basic-filters-wrapper {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
    margin-bottom: var(--space-4);
}

.wmsse-main-filter-group {
    /* Pole główne jest teraz wyraźnie oddzielone */
}

/* --- Poprawki Przycisków --- */
.wmsse-search-actions {
    gap: var(--space-4); /* Zwiększony odstęp między przyciskami */
}

/* Nowa klasa dla mniejszych, zgrabniejszych przycisków */
.wmsse-btn.wmsse-btn-small {
    font-size: var(--font-size-sm); /* Mniejsza czcionka (14px) */
    padding: 0.65rem 1.25rem; /* Delikatnie zmniejszony padding */
}

/* ========================================
   WYSZUKIWARKA - PANCERNY KOD CSS v8.0
   ======================================== */

.wmsse-property-search .wmsse-basic-filters-wrapper {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
    margin-bottom: var(--space-4);
}

.wmsse-property-search .wmsse-search-actions {
    gap: var(--space-4);
    justify-content: flex-start;
}

.wmsse-property-search .wmsse-btn.wmsse-btn-small {
    font-size: var(--font-size-sm);
    padding: 0.65rem 1.25rem;
}

.wmsse-property-search .wmsse-btn.wmsse-btn-outline {
    background: transparent;
    border: 2px solid var(--color-secondary);
    color: var(--color-secondary);
    box-shadow: none;
}
.wmsse-property-search .wmsse-btn.wmsse-btn-outline:hover {
    background: var(--color-secondary);
    color: white;
    box-shadow: var(--shadow-light);
    transform: translateY(-2px);
}
.wmsse-property-search .wmsse-btn.wmsse-btn-outline.accent {
    border-color: var(--color-accent);
    color: var(--color-accent-dark);
}
.wmsse-property-search .wmsse-btn.wmsse-btn-outline.accent:hover {
    background: var(--color-accent);
    color: var(--color-primary);
}

.wmsse-property-search .wmsse-results-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
    gap: var(--space-6);
    margin-top: var(--space-5);
}

.wmsse-property-search .wmsse-property-card {
    background: var(--color-bg-white);
    border: 1px solid var(--color-border);
    border-radius: var(--border-radius-sm);
    box-shadow: var(--shadow-light);
    transition: all var(--animation-normal) var(--easing-smooth);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}
.wmsse-property-search .wmsse-property-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-medium);
    border-color: var(--color-border-light);
}

.wmsse-property-search .wmsse-card-header {
    padding: var(--space-5);
    background: var(--color-bg-light);
    border-bottom: 1px solid var(--color-border);
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: var(--space-3);
}

.wmsse-property-search .wmsse-card-title {
    margin: 0;
    font-weight: var(--font-weight-bold);
    color: var(--color-dark);
    font-size: var(--font-size-xl);
    line-height: 1.3;
}

.wmsse-property-search .wmsse-card-subtitle {
    font-size: var(--font-size-sm);
    color: var(--color-text-muted);
}

.wmsse-property-search .wmsse-card-type {
    background: var(--color-secondary);
    color: white;
    padding: var(--space-1) var(--space-3);
    border-radius: var(--border-radius-xs);
    font-size: var(--font-size-xs);
    font-weight: var(--font-weight-medium);
    text-transform: uppercase;
    white-space: nowrap;
    flex-shrink: 0;
}

.wmsse-property-search .wmsse-card-body {
    padding: var(--space-5);
    font-size: var(--font-size-sm);
    line-height: 1.6;
    color: var(--color-text-light);
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
    flex-grow: 1; 
}

.wmsse-property-search .wmsse-card-section { display: flex; align-items: flex-start; gap: var(--space-3); }
.wmsse-property-search .wmsse-card-icon { font-size: var(--font-size-xl); color: var(--color-secondary); margin-top: -2px; }
.wmsse-property-search .wmsse-card-label { color: var(--color-text-muted); font-size: var(--font-size-xs); margin-bottom: 2px; }
.wmsse-property-search .wmsse-card-value { color: var(--color-text); font-weight: var(--font-weight-medium); }
.wmsse-property-search .wmsse-card-value strong { color: var(--color-dark); font-weight: var(--font-weight-bold); }
.wmsse-property-search .wmsse-card-media-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-2); margin-top: var(--space-2); }
.wmsse-property-search .wmsse-media-item { display: flex; align-items: center; gap: var(--space-2); font-size: var(--font-size-sm); }
.wmsse-property-search .wmsse-card-footer { margin-top: auto; padding-top: var(--space-4); border-top: 1px solid var(--color-border); display: flex; flex-direction: column; gap: var(--space-3); }
.wmsse-property-search .wmsse-card-notes { font-style: italic; font-size: var(--font-size-xs); background: #fffacd; padding: var(--space-2) var(--space-3); border-radius: var(--border-radius-xs); border-left: 3px solid var(--color-warning); color: #856404; }
.wmsse-property-search .wmsse-card-map-link { color: var(--color-secondary); text-decoration: none; font-weight: var(--font-weight-semibold); align-self: flex-end; transition: color var(--animation-fast); }
.wmsse-property-search .wmsse-card-map-link:hover { color: var(--color-secondary-light); text-decoration: underline; }
.wmsse-property-search .wmsse-no-results { text-align: center; padding: var(--space-10) var(--space-5); color: var(--color-text-muted); }

/* --- Submenu uproszczone --- */
.wmsse-centered-menu {
  max-width: 1100px;
  margin: 32px auto 24px;
  padding: 0 16px;
}

.wmsse-submenu {
  display: block;
  list-style: none;
  margin: 0;
  padding: 0;
}

.wmsse-submenu > li {
  margin: 0 0 14px 0;
}
.wmsse-submenu > li:last-child {
  margin-bottom: 0;
}

/* Chip jako zwykły przycisk/link w kolorze brandowym */
.wmsse-chip {
  display: block;
  width: 100%;
  max-width: 980px;
  margin: 0 auto;
  padding: 12px 18px;
  border-radius: 8px;

  background: var(--color-secondary);
  color: #fff;
  text-decoration: none;
  font-weight: 500;
  transition: background .2s, transform .2s;
}

.wmsse-chip:hover,
.wmsse-chip:focus {
  background: var(--color-secondary-light, #1ba8ac); /* jeśli masz zdefiniowane */
  transform: translateY(-1px);
}

/* aktywny = taki sam, ale trochę pogrubiony */
.wmsse-chip.is-active {
  font-weight: 600;
}

/* === WMSSE: logo nad menu, więcej miejsca na menu (2025-09-17) === */
#page_header .container {
  display: flex;
  align-items: center;
  flex-wrap: wrap;              /* pozwala skoczyć w nowy rząd */
}

#page_header .navbar-brand {
  order: -1;                    /* przenosi logo NAD menu */
  flex: 0 0 100%;               /* cały rząd */
  display: flex;
  justify-content: center;
  padding: 8px 0;
}

#page_header .navbar-brand img {
  max-height: 56px;             /* ewentualnie 50–60px */
  height: auto;
  width: auto;
}

/* menu dostaje całą szerokość i nie wyjeżdża */
#page_header #mainnavigation {
  order: 0;
  flex: 1 1 auto;
  min-width: 0;                 /* anty-overflow */
}

#page_header #mainnavigation .navbar-nav {
  flex-wrap: wrap;              /* drugi rząd zamiast overflow */
  gap: 14px;
}

#page_header #mainnavigation .navbar-nav > li > a {
  white-space: nowrap;
  padding: 8px 10px;
}

/* drobne dogęszczenie na ciaśniejszych viewportach */
@media (max-width: 1400px) {
  #page_header #mainnavigation .navbar-nav { gap: 10px; }
  #page_header .navbar-brand img { max-height: 50px; }
}
@media (max-width: 1200px) {
  #page_header #mainnavigation .navbar-nav { gap: 8px; }
}