/* Cookie Consent Custom Styles - Retro Gaming Theme */
:root {
    /* Main colors with accessible contrast */
    --cc-bg: #1a1a1a;
    --cc-text: #f0e674;
    --cc-btn-primary-bg: #f0e674;
    --cc-btn-primary-text: #000000;
    --cc-btn-primary-hover-bg: #fff5a0;
    --cc-btn-secondary-bg: #000000;
    --cc-btn-secondary-text: #f0e674;
    --cc-btn-secondary-hover-bg: #1a1a1a;
    --cc-toggle-bg-off: #000000;
    --cc-toggle-bg-on: #f0e674;
    --cc-toggle-bg-readonly: #454545;
    --cc-toggle-knob-bg: #000000;
    --cc-separator-border-color: #f0e674;
    --cc-overlay-bg: rgba(0, 0, 0, 0.85);
    --cc-cookie-category-block-bg: #000000;
    --cc-cookie-category-block-bg-hover: #1a1a1a;
}

/* Apply retro font to all cookie consent text */
#cc-main,
#cc-main * {
    font-family: 'Press Start 2P', monospace !important;
}

/* Base text color */
#cc-main {
    color: #f0e674 !important;
}

/* Title styling */
#cc-main .cm__title,
#cc-main .pm__title {
    font-size: 16px !important;
    line-height: 1.6 !important;
    margin-bottom: 1rem !important;
}

/* Description text */
#cc-main .cm__desc,
#cc-main .pm__desc,
#cc-main .pm__section-desc,
#cc-main .section__desc {
    font-size: 12px !important;
    line-height: 2 !important;
    letter-spacing: 0.5px !important;
    color: #fff5a0 !important;
    text-shadow: 2px 2px 0 #000000;
}

/* Section titles */
#cc-main .pm__section-title,
#cc-main .section__title {
    font-size: 12px !important;
    margin-bottom: 15px !important;
    color: #f0e674 !important;
}

/* All buttons base style */
#cc-main button {
    font-size: 11px !important;
    padding: 14px 24px !important;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: normal !important;
    transition: all 0.2s ease;
    cursor: pointer;
}

/* Primary buttons (Accept all, Reject all) - yellow background */
#cc-main button[data-role="all"],
#cc-main button[data-role="necessary"] {
    background-color: #f0e674 !important;
    color: #000000 !important;
    border: 3px solid #000000 !important;
}

#cc-main button[data-role="all"]:hover,
#cc-main button[data-role="necessary"]:hover {
    background-color: #fff5a0 !important;
    color: #000000 !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 0 rgba(0, 0, 0, 0.5);
}

/* Secondary buttons (Save preferences, Show preferences) - black background */
#cc-main button[data-role="save"],
#cc-main button[data-role="show"] {
    background-color: #000000 !important;
    color: #f0e674 !important;
    border: 2px solid #f0e674 !important;
}

#cc-main button[data-role="save"]:hover,
#cc-main button[data-role="show"]:hover {
    background-color: #1a1a1a !important;
    color: #fff5a0 !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 0 rgba(0, 0, 0, 0.5);
}

/* Modal styling */
#cc-main .cm,
#cc-main .pm {
    border: 4px solid #f0e674 !important;
    box-shadow: 8px 8px 0 rgba(0, 0, 0, 0.5) !important;
}

#cc-main .cm__content,
#cc-main .pm__body {
    padding: 2rem !important;
}

#cc-main .cm__wrapper,
#cc-main .pm__wrapper {
    background: #1a1a1a !important;
}

/* Footer links */
#cc-main .cm__footer-links {
    font-size: 10px !important;
}

#cc-main a {
    color: #fff5a0 !important;
    text-decoration: underline;
}

#cc-main a:hover {
    color: #ffffff !important;
}

/* Toggle switches moved to section below for proper positioning */

/* Service tables */
#cc-main .section__services,
#cc-main .service__title {
    font-size: 10px !important;
    color: #f0e674 !important;
}

/* Fix close button visibility */
#cc-main .pm__close,
#cc-main .pm__close-btn {
    opacity: 1 !important;
    background: #000000 !important;
    border: 2px solid #f0e674 !important;
    padding: 5px !important;
    width: 40px !important;
    height: 40px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

#cc-main .pm__close-btn svg {
    stroke: #f0e674 !important;
    fill: none !important;
    width: 100% !important;
    height: 100% !important;
    transform: scale(1.8) !important;
}

#cc-main .pm__close-btn svg path {
    stroke: #f0e674 !important;
    stroke-width: 2 !important;
    fill: none !important;
}

#cc-main .pm__close:hover,
#cc-main .pm__close-btn:hover {
    background: #1a1a1a !important;
    border-color: #fff5a0 !important;
}

#cc-main .pm__close-btn:hover svg,
#cc-main .pm__close-btn:hover svg path {
    stroke: #fff5a0 !important;
}

/* Hide the section arrow spans completely */
#cc-main .pm__section-arrow,
#cc-main .cm__section-arrow {
    display: none !important;
}

/* Clean section titles */
#cc-main .section__title,
#cc-main .pm__section-title,
#cc-main .cm__section-title {
    padding: 10px 15px !important;
    margin: 0 !important;
    margin-bottom: 0 !important;
    cursor: pointer;
    position: relative;
}

/* Add hover effect to show it's clickable */
#cc-main .section__title:hover {
    background-color: rgba(240, 230, 116, 0.1) !important;
}

/* Fix section spacing */
#cc-main .pm__section,
#cc-main .cm__section {
    margin-bottom: 10px !important;
    padding: 0 !important;
}

#cc-main .pm__section:last-child,
#cc-main .cm__section:last-child {
    margin-bottom: 0 !important;
}

/* Ensure section containers have proper height */
#cc-main .section--cookie {
    margin: 0 !important;
    padding: 0 !important;
}

/* Put toggles back to original position */
#cc-main .section__toggle {
    transform: scale(0.8);
}

/* Remove padding before Cookie Usage title */
#cc-main .pm__body > .pm__section:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

#cc-main .pm__body > .pm__section:first-child .pm__section-title {
    margin-top: 0 !important;
}

/* Make Reset consent section more compact */
#cc-main .pm__section:last-child {
    margin-top: 15px !important;
    margin-bottom: 0 !important;
}

#cc-main .pm__section:last-child .pm__section-title {
    margin-bottom: 8px !important;
    font-size: 11px !important;
}