/**
 * ScanDO Online Menu System
 * CSS v3.0 — 2026-01-18
 *
 * FIXES / CHANGES:
 * - Wrapper = full-width background layer (σταθερό σε desktop & mobile)
 * - Inner = constrained content (ACF-controlled via --menu-width)
 * - Αφαιρέθηκαν διπλά/αντικρουόμενα max-width rules (menu-max-width vs menu-width)
 * - Padding μεταφέρθηκε στο inner (ώστε να μη "κόβεται" το φόντο)
 * - Language tabs: καθαρό, consistent sizing, inline-flex links
 */

/* ------------------------------
   1) MENU CONTAINER (BACKGROUND LAYER)
---------------------------------- */
.scando-menu-wrapper {
    width: 100%;
    max-width: none; /* ΠΟΤΕ constrained εδώ */
    margin: 0;
    padding: 0;      /* Padding μόνο στο inner */
    background: var(--menu-color-bg, #ffffff);
    font-family: var(--scando-font-primary, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);
    font-weight: 400;
    line-height: 1.4;
    color: var(--menu-color-primary, #222222);
    box-sizing: border-box;
}

/* Το πραγματικό "content column" (ACF-controlled) */
.scando-menu-inner {
    width: 100%;
    max-width: var(--menu-width, 720px); /* ACF: menu_max_width -> inline var --menu-width */
    margin: 0 auto;
    padding: 10px 80px 40px; /* Desktop padding */
    box-sizing: border-box;
}

/* ------------------------------
   2) LANGUAGE SWITCH (TABS)
---------------------------------- */
.scando-menu-lang {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin: 4px 0 18px;
    flex-wrap: wrap;

  /*  border-top: 1px solid var(--menu-color-secondary, #555555);
    border-bottom: 1px solid var(--menu-color-secondary, #555555);*/
    border-top: 1px solid color-mix(in srgb, var(--menu-color-secondary) 40%, transparent);
    border-bottom: 1px solid color-mix(in srgb, var(--menu-color-secondary) 40%, transparent);
    padding: 20px 20px;
}

.scando-menu-lang__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    font-family: var(--scando-font-primary, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    line-height: 1;

    padding: 11px 20px;
    border-radius: 30px;
    /*
    border: 1px solid var(--menu-color-secondary, #555555);*/
    
    border: 1px solid color-mix(in srgb, var(--menu-color-secondary) 55%, transparent);

    color: var(--menu-color-secondary, #555555);
    text-decoration: none;

    transition:
        color .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.scando-menu-lang__link:hover {
    color: var(--menu-color-primary, #222222);
}

.scando-menu-lang__link.is-active {
    color: var(--menu-color-primary, #222222);
    border-color: var(--menu-color-accent, #c7923e);
    box-shadow: 0 0 0 3px rgba(0,0,0,0.06);
    cursor: default;
}


/* ------------------------------
   3) MENU TITLE
---------------------------------- */
.scando-menu-title {
    margin: 60px 0 5px;
    text-align: left;
    font-size: var(--menu-title-size, 42px);
    font-weight: 700;
    color: var(--menu-color-primary, #222222);
}

/* Secondary font για τίτλο */
body.scando-usage-title .scando-menu-title,
body.scando-usage-title_categories .scando-menu-title {
    font-family: var(--scando-font-secondary, var(--scando-font-primary));
}

/* ------------------------------
   4) CATEGORY TITLE
---------------------------------- */
/*
.scando-menu-category-title {
    margin: 40px 0 10px;
    font-size: var(--menu-category-size, 16px);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--menu-color-accent, #c7923e);
}

/* Secondary font για κατηγορίες */
body.scando-usage-title_categories .scando-menu-category-title,
body.scando-usage-categories .scando-menu-category-title {
    font-family: var(--scando-font-secondary, var(--scando-font-primary));
}
*/

.scando-menu-category-title{
    margin: 44px 0 14px;
    padding-bottom: 2px;

    font-size: var(--menu-category-size, 16px);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;

    color: var(--menu-color-accent, #c7923e);

    border-bottom: 1px solid color-mix(in srgb, var(--menu-color-secondary) 95%, transparent);
}


/* ------------------------------
   5) MENU ITEM ROW
---------------------------------- */
.scando-menu-item {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin: 6px 0;
    font-size: var(--menu-item-size, 15px);
    font-weight: 400;
    font-family: var(--scando-font-primary, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);
}

.scando-menu-item-main {
    flex: 1;
    padding-right: 10px;
    overflow-wrap: anywhere;
}

.scando-menu-item-name {
    display: block;
    margin-top: 5px;
    font-weight: 500;
}

.scando-menu-item-description {
    display: block;
    margin-top: -3px;
    font-size: calc(var(--menu-item-size, 15px) * 0.8);
    color: var(--menu-color-secondary, #555555);
    opacity: 0.68;
    max-width: 85%;
}

.scando-menu-item-price {
    white-space: nowrap;
    margin-top: 5px;
    font-size: var(--menu-price-size, 15px);
    font-weight: 500;
    color: var(--menu-color-primary, #222222);
}

/* ------------------------------
   6) FOOTER (NOTES + OWNER)
---------------------------------- */
.scando-menu-footer {
    margin-top: 40px;
    padding-top: 25px;
    border-top: 1px solid rgba(0,0,0,0.15);
    text-align: center;
}

.scando-menu-notes,
.scando-menu-owner {
    margin: 8px 0;
    font-size: var(--menu-notes-size, 13px);
    opacity: 0.8;
    font-style: italic;
    color: var(--menu-color-secondary, #555555);
}


/*
/* ------------------------------
   7) RESPONSIVE (για μικρές οθόνες)
---------------------------------- */
@media (max-width: 480px) {
    .scando-menu-inner {
        padding: 55px 40px 30px; /* Mobile padding */
    }

    .scando-menu-title {
        font-size: calc(var(--menu-title-size, 24px) * 0.95);
    }

    .scando-menu-category-title {
        font-size: calc(var(--menu-category-size, 16px) * 0.95);
    }

    .scando-menu-item {
        font-size: calc(var(--menu-item-size, 15px) * 0.95);
    }

    .scando-menu-item-price {
        font-size: calc(var(--menu-price-size, 15px) * 0.95);
    }
}


/* --------------------------------------------------
   ScanDO: Full-width background from ACF (per business)
   - Χρησιμοποιεί το --menu-color-bg που περνάει inline το shortcode
   - Βάφει full viewport width, χωρίς να εξαρτάται από Gutenberg section/row
   - Δεν αλλάζει το layout (μόνο το background)
-------------------------------------------------- */



.scando-menu-wrapper{
    position: relative;
    background: transparent; /* το background το αναλαμβάνει το ::before */
}

.scando-menu-wrapper::before{
    content: "";
    position: absolute;
    inset: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100vw; /* full viewport background */
    background: var(--menu-color-bg, #ffffff);
    z-index: -1;
}

/* Προληπτικά: αποφυγή οριζόντιου scroll από 100vw σε κάποιους browsers */
body.single-business{
    overflow-x: clip;
}
@supports not (overflow-x: clip){
    body.single-business{
        overflow-x: hidden;
    }
}


/* --------------------------------------------------
   ScanDO Menu – Desktop shell για ολόκληρη τη σελίδα
-------------------------------------------------- */

@media (min-width: 1024px) {

    body.single-business {
        background: #f3f3f0;
    }

    .scando-menu-page {
        width: 100%;
        max-width: 430px;
        margin: 0 auto;
        min-height: 100vh;
        background: var(--menu-color-bg, #ffffff);
        box-shadow: 0 24px 70px rgba(0, 0, 0, 0.14);
        overflow: hidden;
    }

    .scando-menu-wrapper {
        background: transparent;
    }

    .scando-menu-wrapper::before {
        display: none;
    }

    .scando-menu-inner {
        max-width: none;
        padding: 55px 40px 40px;
    }
}

*/

/* ------------------------------
   7) RESPONSIVE (για μικρές οθόνες)
---------------------------------- */
@media (max-width: 480px) {
    .scando-menu-inner {
        padding: 55px 40px 30px;
    }
    
    .scando-menu-title {
        font-size: calc(var(--menu-title-size, 24px) * 0.95);
    }
    
    .scando-menu-category-title {
        font-size: calc(var(--menu-category-size, 16px) * 0.95);
    }
    
    .scando-menu-item {
        font-size: calc(var(--menu-item-size, 15px) * 0.95);
    }
    
    .scando-menu-item-price {
        font-size: calc(var(--menu-price-size, 15px) * 0.95);
    }
}

/* --------------------------------------------------
   ScanDO: Full-width background from ACF (per business)
-------------------------------------------------- */
.scando-menu-wrapper {
    position: relative;
    background: transparent;
}

.scando-menu-wrapper::before {
    content: "";
    position: absolute;
    inset: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100vw;
    background: var(--menu-color-bg, #ffffff);
    z-index: -1;
}

/* Αποφυγή οριζόντιου scroll από το 100vw */
body.single-business {
    overflow-x: clip;
}

@supports not (overflow-x: clip) {
    body.single-business {
        overflow-x: hidden;
    }
}

/* --------------------------------------------------
   ScanDO Menu – Desktop version (κεντραρισμένο menu)
-------------------------------------------------- */
@media (min-width: 1024px) {
    body.single-business {
        background: #f3f3f0;
    }

    .scando-menu-page {
        width: 100%;
        max-width: 430px;
        margin: 0 auto;
        min-height: 100vh;
        background: var(--menu-color-bg, #ffffff);
        box-shadow: 0 24px 70px rgba(0, 0, 0, 0.14);
        overflow: hidden;
    }

    /* Απενεργοποιούμε το full-width background στο desktop */
    .scando-menu-wrapper::before {
        display: none;
    }

    .scando-menu-inner {
        max-width: none;
        padding: 55px 40px 40px;
    }
}