:root {    --kameni-black: #0f0d0b;    --kameni-offwhite: #f8f3eb;    --kameni-warm-white: #fdf8f0;    --kameni-terracotta: #b8481c;    --kameni-terracotta-light: #d6633a;    --kameni-stone-grey: #7a7268;    --kameni-dark-stone: #1e1a17;    --kameni-border: rgba(15, 13, 11, 0.1);    --kameni-font-display: "Libre Baskerville", serif;    --kameni-font-body: "DM Sans", sans-serif;    --kameni-header-height: 78px;    --kameni-mobile-header-height: 64px;    --kameni-mobile-nav-height: 70px;}* {    box-sizing: border-box;}html,body {    overflow-x: hidden;    height: 100%;    margin: 0;    background: var(--kameni-offwhite);    color: var(--kameni-black);    font-family: var(--kameni-font-body);}.kameni-app-shell {    min-height: 100dvh;    display: flex;    flex-direction: column;}    .kameni-app-shell > main {        min-height: 0;        flex: 1 1 auto;    }.kameni-page-content {    min-height: calc(100vh - var(--kameni-header-height));    padding-top: var(--kameni-header-height);}a {    color: inherit;}button,input,select,textarea {    font: inherit;}/* =========================================================   KAMENI FORM CONTROLS   Reusable inputs, selects, dates and text areas   ========================================================= */.kameni-field {    display: flex;    min-width: 170px;    flex-direction: column;    gap: 0.45rem;}.kameni-field-label {    color: var(--kameni-terracotta);    font-size: 0.68rem;    font-weight: 700;    letter-spacing: 0.14em;    text-transform: uppercase;}.kameni-control {    width: 100%;    min-height: 48px;    border: 1px solid var(--kameni-border);    border-radius: 5px;    outline: none;    padding: 0.7rem 0.9rem;    background-color: var(--kameni-warm-white);    color: var(--kameni-black);    font-family: var(--kameni-font-body);    font-size: 0.9rem;    font-weight: 600;    line-height: 1;    box-shadow: 0 2px 0 rgba(15, 13, 11, 0.02);    transition: border-color 0.22s ease, box-shadow 0.22s ease, transform 0.22s ease, background-color 0.22s ease;}    .kameni-control:hover {        border-color: rgba(184, 72, 28, 0.5);        background-color: #fffaf2;    }    .kameni-control:focus {        border-color: var(--kameni-terracotta);        background-color: #fffdf9;        box-shadow: 0 0 0 4px rgba(184, 72, 28, 0.11), 0 9px 20px rgba(15, 13, 11, 0.08);        transform: translateY(-1px);    }    .kameni-control:active {        transform: translateY(0);    }select.kameni-control {    cursor: pointer;    appearance: none;    -webkit-appearance: none;    -moz-appearance: none;    padding-right: 2.8rem;    background-image: linear-gradient(45deg, transparent 50%, var(--kameni-terracotta) 50%), linear-gradient(135deg, var(--kameni-terracotta) 50%, transparent 50%);    background-position: calc(100% - 18px) 20px, calc(100% - 12px) 20px;    background-size: 6px 6px, 6px 6px;    background-repeat: no-repeat;}input[type="date"].kameni-control {    cursor: pointer;    padding-right: 2.8rem;}    input[type="date"].kameni-control::-webkit-calendar-picker-indicator {        width: 18px;        height: 18px;        cursor: pointer;        opacity: 0.72;        filter: sepia(1) saturate(1.5) hue-rotate(335deg);        transition: opacity 0.2s ease, transform 0.2s ease;    }    input[type="date"].kameni-control:hover::-webkit-calendar-picker-indicator {        opacity: 1;        transform: scale(1.08);    }.kameni-control::placeholder {    color: rgba(122, 114, 104, 0.72);    font-weight: 400;}.kameni-control:disabled {    cursor: not-allowed;    opacity: 0.55;    background: rgba(15, 13, 11, 0.04);}.kameni-page-content {    min-height: calc(100vh - var(--kameni-header-height));    padding-top: var(--kameni-header-height);}.kameni-container {    width: min(100% - 2rem, 1320px);    margin-inline: auto;}.kameni-eyebrow {    margin: 0;    color: var(--kameni-terracotta);    font-size: 0.72rem;    font-weight: 700;    letter-spacing: 0.18em;    text-transform: uppercase;}.kameni-display-title {    margin: 0;    color: var(--kameni-black);    font-family: var(--kameni-font-display);    font-size: clamp(2.25rem, 5vw, 4.8rem);    line-height: 1.1;}.kameni-btn-primary {    display: inline-flex;    align-items: center;    justify-content: center;    min-height: 46px;    border: 1px solid var(--kameni-terracotta);    border-radius: 4px;    padding: 0.75rem 1.25rem;    background: var(--kameni-terracotta);    color: #ffffff;    font-size: 0.78rem;    font-weight: 700;    letter-spacing: 0.1em;    text-decoration: none;    text-transform: uppercase;    transition: background-color 0.2s ease, transform 0.2s ease;}    .kameni-btn-primary:hover {        background: var(--kameni-terracotta-light);        color: #ffffff;        transform: translateY(-1px);    }.kameni-btn-outline {    display: inline-flex;    align-items: center;    justify-content: center;    min-height: 46px;    border: 1px solid var(--kameni-black);    border-radius: 4px;    padding: 0.75rem 1.25rem;    background: transparent;    color: var(--kameni-black);    font-size: 0.78rem;    font-weight: 700;    letter-spacing: 0.1em;    text-decoration: none;    text-transform: uppercase;    transition: background-color 0.2s ease, color 0.2s ease;}    .kameni-btn-outline:hover {        background: var(--kameni-black);        color: var(--kameni-offwhite);    }@media (max-width: 991.98px) {    .kameni-page-content {        min-height: 0;        padding-top: var(--kameni-mobile-header-height);        padding-bottom: calc( var(--kameni-mobile-nav-height) + env(safe-area-inset-bottom) + 0.5rem );    }    .kameni-container {        width: min(100% - 1.25rem, 720px);    }}#blazor-error-ui {    position: fixed;    z-index: 9999;    right: 1rem;    bottom: 1rem;    display: none;    max-width: 420px;    border: 1px solid rgba(15, 13, 11, 0.15);    border-radius: 8px;    padding: 1rem;    background: #ffffff;    box-shadow: 0 12px 28px rgba(15, 13, 11, 0.2);    color: #0f0d0b;}    #blazor-error-ui .reload {        color: var(--kameni-terracotta);    }    #blazor-error-ui .dismiss {        float: right;        cursor: pointer;    }/* =========================================================   Footer   ========================================================= */.site-footer {    border-top: 1px solid rgba(255, 255, 255, 0.08);    padding: 2rem 0;    background: var(--kameni-black);    color: var(--kameni-offwhite);}.site-footer-content {    display: flex;    align-items: center;    justify-content: space-between;    gap: 1.5rem;}.site-footer-brand {    margin: 0;    font-family: var(--kameni-font-display);    font-size: 1rem;    font-weight: 700;    letter-spacing: 0.12em;    text-transform: uppercase;}.site-footer-description,.site-footer-copy {    margin: 0.35rem 0 0;    color: rgba(248, 243, 235, 0.55);    font-size: 0.78rem;}.site-footer-links {    display: flex;    flex-wrap: wrap;    gap: 1rem;}    .site-footer-links a {        color: rgba(248, 243, 235, 0.7);        font-size: 0.75rem;        font-weight: 700;        letter-spacing: 0.08em;        text-decoration: none;        text-transform: uppercase;    }        .site-footer-links a:hover {            color: var(--kameni-terracotta-light);        }@media (max-width: 991.98px) {    .site-footer {        display: none;    }}/*end footer*//* =========================================================   Header   ========================================================= */.site-header {    position: fixed;    z-index: 1000;    top: 0;    right: 0;    left: 0;    height: var(--kameni-header-height);    border-bottom: 1px solid transparent;    background: rgba(248, 243, 235, 0.92);    backdrop-filter: blur(12px);}.site-header-inner {    display: grid;    grid-template-columns: 1fr auto 1fr;    height: 100%;    align-items: center;}.desktop-navigation,.desktop-actions {    display: flex;    align-items: center;    gap: 1.5rem;}    .desktop-navigation a,    .header-link {        color: var(--kameni-black);        font-size: 0.75rem;        font-weight: 700;        letter-spacing: 0.1em;        text-decoration: none;        text-transform: uppercase;    }        .desktop-navigation a.active,        .desktop-navigation a:hover,        .header-link.active,        .header-link:hover {            color: var(--kameni-terracotta);        }.desktop-actions {    justify-content: flex-end;}/* Shared header logo links */.brand-logo,.mobile-brand-logo {    display: inline-flex;    align-items: center;    justify-content: center;    overflow: hidden;    text-decoration: none;    line-height: 0;}.brand-logo {    width: 180px;    height: 58px;}.brand-logo img {    display: block;    width: 180px;    height: 58px;    max-width: 100%;    object-fit: contain;    transform: none;}.mobile-brand-logo {    position: absolute;    top: 50%;    left: 50%;    z-index: 2;    width: 190px;    height: 60px;    transform: translate(-50%, -50%);}    .mobile-brand-logo img {        display: block;        width: 190px;        height: 60px;        max-width: none;        object-fit: contain;        transform: none;    }.header-cart-button,.mobile-cart-button {    display: inline-flex;    min-height: 40px;    align-items: center;    justify-content: center;    gap: 0.5rem;    border: 0;    border-radius: 4px;    padding: 0.55rem 0.8rem;    background: var(--kameni-terracotta);    color: #ffffff;    cursor: pointer;    font-size: 0.72rem;    font-weight: 700;    letter-spacing: 0.08em;    text-transform: uppercase;}.header-cart-count,.mobile-cart-count,.mobile-nav-badge {    min-width: 20px;    padding-inline: 0.35rem;    white-space: nowrap;}.header-cart-count,.mobile-cart-count {    display: inline-flex;    width: 20px;    height: 20px;    align-items: center;    justify-content: center;    border-radius: 50%;    background: #ffffff;    color: var(--kameni-terracotta);    font-size: 0.68rem;    font-weight: 700;}.mobile-actions {    display: none;}@media (max-width: 991.98px) {    .site-header {        height: var(--kameni-mobile-header-height);        border-bottom-color: var(--kameni-border);    }    .site-header-inner {        position: relative;        display: block;        height: 100%;    }    .desktop-navigation,    .brand-logo,    .desktop-actions,    .header-left-actions {        display: none;    }    .mobile-actions {        position: relative;        display: flex;        width: 100%;        height: 100%;        align-items: center;        justify-content: space-between;    }    .mobile-brand-logo {        position: absolute;        top: 50%;        left: 50%;        z-index: 2;        width: 190px;        height: 60px;        transform: translate(-50%, -50%);    }        .mobile-brand-logo img {            width: 190px;            height: 60px;            max-width: none;            object-fit: contain;        }    .mobile-site-menu-toggle {        position: relative;        z-index: 3;        flex: 0 0 auto;    }    .mobile-language-switcher {        position: absolute;        right: 0;        margin: 0;    }    .mobile-cart-button {        margin-right: 102px;    }}/* =========================================================   MobileBottomNav   ========================================================= */.mobile-bottom-nav {    display: none;}@media (max-width: 991.98px) {    .mobile-bottom-nav {        position: fixed;        z-index: 1000;        right: 0;        bottom: 0;        left: 0;        display: grid;        grid-template-columns: repeat(4, 1fr);        min-height: var(--kameni-mobile-nav-height);        border-top: 1px solid var(--kameni-border);        background: rgba(253, 248, 240, 0.96);        backdrop-filter: blur(14px);    }    .mobile-nav-bag-icon {        width: 1.15rem;        height: 1.15rem;    }    .mobile-nav-item {        position: relative;        display: flex;        min-width: 0;        min-height: var(--kameni-mobile-nav-height);        flex-direction: column;        align-items: center;        justify-content: center;        gap: 0.25rem;        border: 0;        background: transparent;        color: var(--kameni-stone-grey);        font-family: var(--kameni-font-body);        font-size: 0.68rem;        font-weight: 700;        line-height: 1;        text-decoration: none;    }        .mobile-nav-item.active {            color: var(--kameni-terracotta);        }    .mobile-nav-icon {        font-size: 1.1rem;        line-height: 1;    }    .mobile-nav-bag-icon {        display: block;        width: 18px;        height: 18px;        flex: 0 0 18px;    }    .mobile-nav-cart {        cursor: pointer;    }    .mobile-nav-badge {        position: absolute;        top: 10px;        right: calc(50% - 24px);        display: inline-flex;        width: 16px;        height: 16px;        align-items: center;        justify-content: center;        border-radius: 50%;        background: var(--kameni-terracotta);        color: #ffffff;        font-size: 0.58rem;    }}@media (max-width: 991.98px) {    .mobile-nav-cart {        position: relative;        color: var(--kameni-stone-grey);    }        .mobile-nav-cart.active {            color: var(--kameni-terracotta);        }        .mobile-nav-cart .mobile-nav-icon {            font-size: 1.2rem;        }}/* =========================================================   HOME HERO   ========================================================= */.home-hero {    display: flex;    min-height: calc(100dvh - var(--kameni-header-height));    align-items: center;    overflow: hidden;    border-bottom: 1px solid var(--kameni-border);    padding: 4rem 0;    background: var(--kameni-offwhite);}.home-hero-grid {    display: grid;    grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);    gap: clamp(2.5rem, 7vw, 7rem);    align-items: center;}.home-hero-content {    max-width: 690px;}.home-hero-title {    margin-top: 1.25rem;}    .home-hero-title em {        color: var(--kameni-terracotta);        font-style: italic;    }.home-hero-description {    max-width: 540px;    margin: 1.75rem 0 0;    color: var(--kameni-stone-grey);    font-size: clamp(1rem, 1.6vw, 1.13rem);    font-weight: 400;    line-height: 1.8;}.home-hero-actions {    display: flex;    flex-wrap: wrap;    gap: 0.85rem;    margin-top: 2rem;}.home-hero-tags {    display: flex;    flex-wrap: wrap;    gap: 0.65rem;    margin-top: 3rem;}    .home-hero-tags span {        border: 1px solid var(--kameni-border);        border-radius: 999px;        padding: 0.45rem 0.8rem;        color: var(--kameni-stone-grey);        font-size: 0.72rem;        font-weight: 700;        letter-spacing: 0.08em;        text-transform: uppercase;    }.home-hero-panel {    position: relative;    overflow: hidden;    border: 1px solid rgba(255, 255, 255, 0.08);    border-radius: 8px;    padding: clamp(1.5rem, 3vw, 2.5rem);    background: linear-gradient( 145deg, rgba(255, 255, 255, 0.06), transparent 55% ), var(--kameni-dark-stone);    color: var(--kameni-offwhite);    box-shadow: 0 18px 50px rgba(15, 13, 11, 0.17);}    .home-hero-panel::after {        position: absolute;        right: -4rem;        bottom: -5rem;        width: 15rem;        height: 15rem;        border: 1px solid rgba(248, 243, 235, 0.12);        border-radius: 50%;        content: "";    }.home-hero-panel-label {    position: relative;    z-index: 1;    margin-bottom: 2rem;    color: var(--kameni-terracotta-light);    font-size: 0.72rem;    font-weight: 700;    letter-spacing: 0.16em;    text-transform: uppercase;}.home-hero-panel-item {    position: relative;    z-index: 1;    display: grid;    grid-template-columns: minmax(88px, auto) 1fr;    gap: 1rem;    align-items: center;    border-top: 1px solid rgba(248, 243, 235, 0.13);    padding: 1.35rem 0;}.home-hero-panel-value {    font-family: var(--kameni-font-display);    font-size: clamp(1.25rem, 2vw, 1.8rem);    white-space: nowrap;}.home-hero-panel-text {    color: rgba(248, 243, 235, 0.67);    font-size: 0.87rem;    line-height: 1.55;}.home-hero-panel-footer {    position: relative;    z-index: 1;    border-top: 1px solid rgba(248, 243, 235, 0.13);    padding-top: 1.25rem;    color: rgba(248, 243, 235, 0.5);    font-size: 0.75rem;    font-weight: 700;    letter-spacing: 0.1em;    text-transform: uppercase;}@media (max-width: 991.98px) {    .home-hero {        min-height: auto;        padding: 2.25rem 0 2rem;    }    .home-hero-grid {        grid-template-columns: 1fr;        gap: 2rem;    }    .home-hero-title {        font-size: clamp(2.35rem, 12vw, 3.7rem);    }    .home-hero-description {        margin-top: 1.25rem;        font-size: 0.98rem;        line-height: 1.7;    }    .home-hero-actions {        display: grid;        grid-template-columns: 1fr;    }        .home-hero-actions .kameni-btn-primary,        .home-hero-actions .kameni-btn-outline {            width: 100%;        }    .home-hero-tags {        gap: 0.5rem;        margin-top: 2rem;    }        .home-hero-tags span {            font-size: 0.64rem;        }    .home-hero-panel {        padding: 1.5rem;    }    .home-hero-panel-item {        grid-template-columns: 92px 1fr;        padding: 1.15rem 0;    }}/* =========================================================   HOME STORY   ========================================================= */.home-story {    border-bottom: 1px solid var(--kameni-border);    padding: clamp(4rem, 8vw, 7rem) 0;    background: var(--kameni-warm-white);}.home-story-grid {    display: grid;    grid-template-columns: minmax(180px, 0.55fr) minmax(0, 1.45fr);    gap: clamp(2rem, 7vw, 6rem);}.home-story-side {    position: relative;}.home-story-watermark {    display: block;    margin-top: 1.5rem;    color: rgba(15, 13, 11, 0.05);    font-family: var(--kameni-font-display);    font-size: clamp(4rem, 8vw, 7rem);    font-weight: 700;    letter-spacing: -0.06em;    line-height: 0.85;    text-transform: uppercase;    writing-mode: vertical-rl;}.home-story-title {    margin: 0;    color: var(--kameni-black);    font-family: var(--kameni-font-display);    font-size: clamp(2rem, 4vw, 3.25rem);    line-height: 1.23;}    .home-story-title em {        color: var(--kameni-terracotta);        font-style: italic;    }.home-story-columns {    display: grid;    grid-template-columns: repeat(2, minmax(0, 1fr));    gap: clamp(1.25rem, 4vw, 3rem);    margin-top: 2rem;}    .home-story-columns p {        margin: 0;        color: var(--kameni-stone-grey);        font-size: 0.98rem;        line-height: 1.85;    }.home-story-tags {    display: flex;    flex-wrap: wrap;    gap: 0.7rem;    margin-top: 2rem;}.home-story-tag {    border: 1px solid var(--kameni-border);    border-radius: 4px;    padding: 0.65rem 0.9rem;    color: var(--kameni-stone-grey);    font-size: 0.72rem;    font-weight: 700;    letter-spacing: 0.08em;    text-transform: uppercase;}.home-story-tag-dark {    border-color: var(--kameni-dark-stone);    background: var(--kameni-dark-stone);    color: var(--kameni-offwhite);}@media (max-width: 991.98px) {    .home-story {        padding: 3.5rem 0;    }    .home-story-grid {        grid-template-columns: 1fr;        gap: 1.5rem;    }    .home-story-watermark {        display: none;    }    .home-story-columns {        grid-template-columns: 1fr;        gap: 1rem;        margin-top: 1.4rem;    }        .home-story-columns p {            font-size: 0.95rem;            line-height: 1.75;        }    .home-story-tags {        margin-top: 1.5rem;    }}/* =========================================================   HOME ORDERING / FOOD TO GO   ========================================================= */.home-ordering {    padding: clamp(4rem, 8vw, 7rem) 0;    background: var(--kameni-terracotta);    color: #ffffff;}.home-ordering-grid {    display: grid;    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);    gap: clamp(2.5rem, 8vw, 7rem);    align-items: center;}.home-ordering-eyebrow {    margin: 0;    color: rgba(255, 255, 255, 0.72);    font-size: 0.72rem;    font-weight: 700;    letter-spacing: 0.18em;    text-transform: uppercase;}.home-ordering-title {    margin: 1rem 0 0;    color: #ffffff;    font-family: var(--kameni-font-display);    font-size: clamp(2.2rem, 4vw, 3.8rem);    line-height: 1.12;}.home-ordering-description {    max-width: 520px;    margin: 1.5rem 0 0;    color: rgba(255, 255, 255, 0.82);    font-size: 1rem;    line-height: 1.8;}.home-ordering-button {    display: inline-flex;    min-height: 48px;    align-items: center;    justify-content: center;    margin-top: 2rem;    border: 1px solid #ffffff;    border-radius: 4px;    padding: 0.8rem 1.4rem;    background: #ffffff;    color: var(--kameni-terracotta);    font-size: 0.78rem;    font-weight: 700;    letter-spacing: 0.1em;    text-decoration: none;    text-transform: uppercase;    transition: transform 0.2s ease, background-color 0.2s ease;}    .home-ordering-button:hover {        background: var(--kameni-offwhite);        color: var(--kameni-terracotta);        transform: translateY(-1px);    }.home-ordering-steps {    display: flex;    flex-direction: column;    margin: 0;    padding: 0;    list-style: none;}.home-ordering-step {    display: grid;    grid-template-columns: 52px minmax(0, 1fr);    gap: 1.25rem;    align-items: start;    border-bottom: 1px solid rgba(255, 255, 255, 0.22);    padding: 1.45rem 0;}    .home-ordering-step:first-child {        padding-top: 0;    }    .home-ordering-step:last-child {        border-bottom: 0;        padding-bottom: 0;    }.home-ordering-step-number {    display: inline-flex;    width: 48px;    height: 48px;    align-items: center;    justify-content: center;    border: 1px solid rgba(255, 255, 255, 0.58);    border-radius: 50%;    color: #ffffff;    font-family: var(--kameni-font-display);    font-size: 1.15rem;    font-weight: 700;}.home-ordering-step h3 {    margin: 0;    color: #ffffff;    font-size: 1rem;    font-weight: 700;}.home-ordering-step p {    margin: 0.4rem 0 0;    color: rgba(255, 255, 255, 0.74);    font-size: 0.9rem;    line-height: 1.65;}@media (max-width: 991.98px) {    .home-ordering {        padding: 3.5rem 0;    }    .home-ordering-grid {        grid-template-columns: 1fr;        gap: 2.5rem;    }    .home-ordering-description {        font-size: 0.96rem;        line-height: 1.72;    }    .home-ordering-button {        width: 100%;    }    .home-ordering-step {        grid-template-columns: 46px minmax(0, 1fr);        gap: 1rem;        padding: 1.15rem 0;    }    .home-ordering-step-number {        width: 42px;        height: 42px;        font-size: 1rem;    }}/* =========================================================   FEATURED DISHES   ========================================================= */.home-featured-dishes {    border-bottom: 1px solid var(--kameni-border);    padding: clamp(4rem, 8vw, 7rem) 0;    background: var(--kameni-warm-white);}.home-featured-dishes-header {    display: flex;    align-items: end;    justify-content: space-between;    gap: 2rem;    margin-bottom: 2.75rem;}.home-featured-dishes-title {    margin: 1rem 0 0;    color: var(--kameni-black);    font-family: var(--kameni-font-display);    font-size: clamp(2rem, 4vw, 3.2rem);    line-height: 1.2;}.home-featured-dishes-intro {    max-width: 340px;    text-align: right;}    .home-featured-dishes-intro p {        margin: 0;        color: var(--kameni-stone-grey);        font-size: 0.92rem;        line-height: 1.75;    }.home-featured-dishes-link {    display: inline-block;    margin-top: 1rem;    border-bottom: 1px solid var(--kameni-terracotta);    color: var(--kameni-terracotta);    font-size: 0.74rem;    font-weight: 700;    letter-spacing: 0.1em;    text-decoration: none;    text-transform: uppercase;}    .home-featured-dishes-link:hover {        color: var(--kameni-terracotta-light);    }.home-featured-dishes-grid {    display: grid;    grid-template-columns: repeat(3, minmax(0, 1fr));    gap: 1.25rem;}.dish-preview-card {    display: flex;    min-width: 0;    flex-direction: column;    overflow: hidden;    border: 1px solid var(--kameni-border);    border-radius: 8px;    background: var(--kameni-offwhite);    color: var(--kameni-black);    text-decoration: none;    transition: transform 0.2s ease, box-shadow 0.2s ease;}    .dish-preview-card:hover {        color: var(--kameni-black);        box-shadow: 0 14px 30px rgba(15, 13, 11, 0.1);        transform: translateY(-3px);    }.dish-preview-image {    position: relative;    min-height: 230px;    overflow: hidden;    background: var(--kameni-dark-stone);}    .dish-preview-image::before {        position: absolute;        inset: 0;        content: "";        opacity: 0.92;    }.dish-image-ribeye::before {    background: radial-gradient(circle at 65% 35%, rgba(198, 102, 61, 0.75), transparent 30%), radial-gradient(circle at 40% 65%, rgba(105, 53, 31, 0.9), transparent 38%), linear-gradient(145deg, #27170f, #7e3920 55%, #27170f);}.dish-image-chicken::before {    background: radial-gradient(circle at 70% 35%, rgba(241, 178, 92, 0.72), transparent 28%), radial-gradient(circle at 38% 68%, rgba(120, 65, 22, 0.9), transparent 38%), linear-gradient(145deg, #3c220d, #b96e26 55%, #2b190c);}.dish-image-salmon::before {    background: radial-gradient(circle at 65% 38%, rgba(238, 137, 101, 0.78), transparent 30%), radial-gradient(circle at 35% 68%, rgba(49, 85, 65, 0.92), transparent 38%), linear-gradient(145deg, #182e28, #bb5d42 55%, #162820);}.dish-preview-image::after {    position: absolute;    right: -1.25rem;    bottom: -2.25rem;    width: 11rem;    height: 11rem;    border: 1px solid rgba(255, 255, 255, 0.17);    border-radius: 50%;    content: "";}.dish-preview-image-label {    position: absolute;    z-index: 1;    top: 1rem;    left: 1rem;    border: 1px solid rgba(255, 255, 255, 0.23);    border-radius: 3px;    padding: 0.4rem 0.6rem;    background: rgba(15, 13, 11, 0.28);    color: #ffffff;    font-size: 0.64rem;    font-weight: 700;    letter-spacing: 0.1em;    text-transform: uppercase;}.dish-preview-content {    display: flex;    min-height: 190px;    flex: 1;    flex-direction: column;    padding: 1.25rem;}.dish-preview-heading {    display: flex;    align-items: start;    justify-content: space-between;    gap: 1rem;}    .dish-preview-heading h3 {        margin: 0;        font-family: var(--kameni-font-display);        font-size: 1.15rem;        font-weight: 700;        line-height: 1.35;    }.dish-preview-price {    flex-shrink: 0;    color: var(--kameni-terracotta);    font-size: 1rem;    font-weight: 700;}.dish-preview-description {    margin: 0.85rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.86rem;    line-height: 1.65;}.dish-preview-footer {    display: flex;    align-items: center;    justify-content: space-between;    gap: 1rem;    margin-top: auto;    padding-top: 1.15rem;}.dish-preview-availability {    color: var(--kameni-stone-grey);    font-size: 0.68rem;    font-weight: 700;    letter-spacing: 0.08em;    text-transform: uppercase;}    .dish-preview-availability::before {        display: inline-block;        width: 7px;        height: 7px;        margin-right: 0.4rem;        border-radius: 50%;        background: #4e7d51;        content: "";    }.dish-preview-action {    display: inline-flex;    width: 32px;    height: 32px;    align-items: center;    justify-content: center;    border-radius: 4px;    background: var(--kameni-terracotta);    color: #ffffff;    font-size: 1.2rem;    font-weight: 400;    line-height: 1;}.home-featured-dishes-mobile-link {    display: none;}@media (max-width: 991.98px) {    .home-featured-dishes {        padding: 3.5rem 0;    }    .home-featured-dishes-header {        display: block;        margin-bottom: 1.75rem;    }    .home-featured-dishes-intro {        max-width: none;        margin-top: 1.2rem;        text-align: left;    }    .home-featured-dishes-link {        display: none;    }    .home-featured-dishes-grid {        display: flex;        width: 100%;        gap: 0.85rem;        overflow-x: auto;        padding-right: 1.25rem;        scroll-snap-type: x mandatory;        scrollbar-width: none;    }        .home-featured-dishes-grid::-webkit-scrollbar {            display: none;        }    .dish-preview-card {        width: min(82vw, 335px);        min-width: min(82vw, 335px);        scroll-snap-align: start;    }    .dish-preview-image {        min-height: 200px;    }    .home-featured-dishes-mobile-link {        display: block;        margin-top: 1.5rem;    }        .home-featured-dishes-mobile-link .kameni-btn-outline {            width: 100%;        }}/* =========================================================   MENU CONTROLS   ========================================================= */.menu-page-controls {    display: flex;    flex-wrap: wrap;    gap: 0.9rem;    align-items: end;    margin-top: 2rem;}.admin-menu-manage-items-button {    display: inline-flex;    min-height: 2.2rem;    align-items: center;    justify-content: center;    border: 1px solid rgba(184, 72, 28, 0.25);    border-radius: 5px;    padding: 0.38rem 0.72rem;    background: rgba(184, 72, 28, 0.07);    color: var(--kameni-terracotta);    font-family: inherit;    font-size: 0.76rem;    font-weight: 700;    text-decoration: none;}    .admin-menu-manage-items-button:hover {        border-color: var(--kameni-terracotta);        background: rgba(184, 72, 28, 0.12);    }.menu-control-field {    display: flex;    min-width: 170px;    flex-direction: column;    gap: 0.45rem;}    .menu-control-field > span {        color: var(--kameni-terracotta);        font-size: 0.68rem;        font-weight: 700;        letter-spacing: 0.14em;        text-transform: uppercase;    }    .menu-control-field select,    .menu-control-field input[type="date"] {        width: 100%;        min-height: 48px;        border: 1px solid var(--kameni-border);        border-radius: 5px;        outline: none;        padding: 0.7rem 2.8rem 0.7rem 0.9rem;        background-color: var(--kameni-warm-white);        color: var(--kameni-black);        font-family: var(--kameni-font-body);        font-size: 0.9rem;        font-weight: 600;        line-height: 1;        box-shadow: 0 2px 0 rgba(15, 13, 11, 0.02);        transition: border-color 0.22s ease, box-shadow 0.22s ease, transform 0.22s ease, background-color 0.22s ease;    }    .menu-control-field select {        cursor: pointer;        appearance: none;        -webkit-appearance: none;        -moz-appearance: none;        background-image: linear-gradient(45deg, transparent 50%, var(--kameni-terracotta) 50%), linear-gradient(135deg, var(--kameni-terracotta) 50%, transparent 50%);        background-position: calc(100% - 18px) 20px, calc(100% - 12px) 20px;        background-size: 6px 6px, 6px 6px;        background-repeat: no-repeat;    }    .menu-control-field input[type="date"] {        cursor: pointer;    }        .menu-control-field input[type="date"]::-webkit-calendar-picker-indicator {            width: 18px;            height: 18px;            cursor: pointer;            opacity: 0.72;            filter: sepia(1) saturate(1.5) hue-rotate(335deg);            transition: opacity 0.2s ease, transform 0.2s ease;        }        .menu-control-field input[type="date"]:hover::-webkit-calendar-picker-indicator {            opacity: 1;            transform: scale(1.08);        }        .menu-control-field select:hover,        .menu-control-field input[type="date"]:hover {            border-color: rgba(184, 72, 28, 0.5);            background-color: #fffaf2;        }        .menu-control-field select:focus,        .menu-control-field input[type="date"]:focus {            border-color: var(--kameni-terracotta);            background-color: #fffdf9;            box-shadow: 0 0 0 4px rgba(184, 72, 28, 0.11), 0 9px 20px rgba(15, 13, 11, 0.08);            transform: translateY(-1px);        }        .menu-control-field select:active,        .menu-control-field input[type="date"]:active {            transform: translateY(0);        }@media (max-width: 991.98px) {    .menu-page-controls {        display: grid;        grid-template-columns: repeat(2, minmax(0, 1fr));        gap: 0.8rem;        margin-top: 1.5rem;    }    .menu-control-field {        min-width: 0;    }        .menu-control-field:last-child {            grid-column: 1 / -1;        }        .menu-control-field select,        .menu-control-field input[type="date"] {            min-height: 50px;            font-size: 0.88rem;        }}.menu-search {    position: relative;    max-width: 560px;    margin: 2rem 0 2.25rem;}.menu-search-input {    min-height: 54px;    padding-right: 3rem;    padding-left: 3.15rem;    border-radius: 6px;}.menu-search-icon {    position: absolute;    z-index: 1;    top: 50%;    left: 1rem;    color: var(--kameni-terracotta);    font-family: var(--kameni-font-display);    font-size: 1.45rem;    line-height: 1;    pointer-events: none;    transform: translateY(-55%);}.menu-search-clear {    position: absolute;    top: 50%;    right: 0.65rem;    display: inline-flex;    width: 34px;    height: 34px;    align-items: center;    justify-content: center;    border: 0;    border-radius: 50%;    background: transparent;    color: var(--kameni-stone-grey);    cursor: pointer;    font-size: 1.45rem;    line-height: 1;    transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;    transform: translateY(-50%);}    .menu-search-clear:hover {        background: rgba(184, 72, 28, 0.1);        color: var(--kameni-terracotta);        transform: translateY(-50%) scale(1.06);    }.menu-search-empty {    border: 1px dashed rgba(15, 13, 11, 0.18);    border-radius: 6px;    padding: 2.5rem;    background: var(--kameni-warm-white);    text-align: center;}    .menu-search-empty .menu-state-title {        margin-top: 0.8rem;    }    .menu-search-empty .kameni-btn-outline {        margin-top: 1.25rem;    }@media (max-width: 991.98px) {    .menu-search {        max-width: none;        margin: 1.5rem 0 1.75rem;    }    .menu-search-input {        min-height: 52px;        font-size: 0.9rem;    }    .menu-search-empty {        padding: 2rem 1.25rem;    }}/* =========================================================   MENU PAGE   ========================================================= */.menu-page {    padding: clamp(3rem, 6vw, 5rem) 0 clamp(4rem, 8vw, 7rem);    background: var(--kameni-offwhite);}.menu-page-header {    display: flex;    align-items: end;    justify-content: space-between;    gap: 2rem;    border-bottom: 1px solid var(--kameni-border);    padding-bottom: 2.5rem;}    .menu-page-header > div:first-child {        max-width: 690px;    }.menu-page-description {    max-width: 590px;    margin: 1rem 0 0;    color: var(--kameni-stone-grey);    font-size: 1rem;    line-height: 1.75;}.menu-page-controls {    justify-content: flex-end;    margin-top: 0;}/* =========================================================   MENU STATES   ========================================================= */.menu-state {    max-width: 760px;    margin: 3.5rem auto;    border: 1px solid var(--kameni-border);    border-radius: 8px;    padding: clamp(2rem, 5vw, 4rem);    background: var(--kameni-warm-white);    text-align: center;}.menu-state-error {    border-color: rgba(184, 72, 28, 0.35);}.menu-state p {    max-width: 550px;    margin: 1rem auto 0;    color: var(--kameni-stone-grey);    line-height: 1.75;}.menu-state a {    color: var(--kameni-terracotta);    font-weight: 700;}.menu-state .kameni-btn-primary {    margin-top: 1.5rem;}.menu-state-title {    margin: 0.9rem 0 0;    color: var(--kameni-black);    font-family: var(--kameni-font-display);    font-size: clamp(1.65rem, 3vw, 2.45rem);    line-height: 1.3;}/* =========================================================   MENU ITEMS   ========================================================= */.menu-items-section {    padding-top: clamp(2.5rem, 5vw, 4rem);}.menu-items-heading {    display: flex;    align-items: end;    justify-content: space-between;    gap: 1.5rem;}.menu-items-description {    max-width: 600px;    margin: 0.75rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.96rem;    line-height: 1.7;}.menu-items-count {    flex-shrink: 0;    color: var(--kameni-stone-grey);    font-size: 0.72rem;    font-weight: 700;    letter-spacing: 0.12em;    text-transform: uppercase;}.menu-items-grid {    display: grid;    grid-template-columns: repeat(3, minmax(0, 1fr));    gap: 1.25rem;}/* =========================================================   DISH CARD   ========================================================= */.menu-item-card {    display: flex;    min-width: 0;    flex-direction: column;    overflow: hidden;    border: 1px solid var(--kameni-border);    border-radius: 8px;    background: var(--kameni-warm-white);    box-shadow: 0 3px 0 rgba(15, 13, 11, 0.02);    transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;}    .menu-item-card:hover {        border-color: rgba(184, 72, 28, 0.35);        box-shadow: 0 16px 34px rgba(15, 13, 11, 0.1);        transform: translateY(-4px);    }.menu-item-card-sold-out {    opacity: 0.72;}    .menu-item-card-sold-out:hover {        transform: none;        box-shadow: 0 3px 0 rgba(15, 13, 11, 0.02);    }/* Image area / fallback visual */.menu-item-image {    position: relative;    display: flex;    min-height: 205px;    align-items: end;    overflow: hidden;    padding: 1.25rem;    background: radial-gradient(circle at 75% 25%, rgba(214, 99, 58, 0.52), transparent 28%), radial-gradient(circle at 20% 78%, rgba(96, 45, 25, 0.82), transparent 40%), linear-gradient(145deg, #1e1a17, #6f2c18 55%, #1e1a17);}    .menu-item-image::before {        position: absolute;        right: -4.5rem;        bottom: -6rem;        width: 15rem;        height: 15rem;        border: 1px solid rgba(248, 243, 235, 0.18);        border-radius: 50%;        content: "";    }    .menu-item-image::after {        position: absolute;        top: -5rem;        left: -4rem;        width: 12rem;        height: 12rem;        border: 1px solid rgba(248, 243, 235, 0.1);        border-radius: 50%;        content: "";    }    .menu-item-image img {        position: absolute;        inset: 0;        width: 100%;        height: 100%;        object-fit: cover;    }    .menu-item-image > span:first-child {        position: relative;        z-index: 1;        color: rgba(248, 243, 235, 0.88);        font-family: var(--kameni-font-display);        font-size: clamp(1.65rem, 2.7vw, 2.25rem);        font-style: italic;        line-height: 1;    }/* Sold-out label */.menu-item-status {    position: absolute;    z-index: 2;    top: 1rem;    left: 1rem;    border-radius: 3px;    padding: 0.45rem 0.65rem;    background: var(--kameni-dark-stone);    color: var(--kameni-offwhite);    font-size: 0.65rem;    font-weight: 700;    letter-spacing: 0.1em;    text-transform: uppercase;}/* Content */.menu-item-content {    display: flex;    min-height: 245px;    flex: 1;    flex-direction: column;    padding: 1.25rem;}.menu-item-title-row {    display: flex;    align-items: start;    justify-content: space-between;    gap: 1rem;}    .menu-item-title-row h2 {        margin: 0;        color: var(--kameni-black);        font-family: var(--kameni-font-display);        font-size: 1.28rem;        line-height: 1.34;    }.menu-item-pricing {    display: flex;    flex-shrink: 0;    align-items: center;    gap: 0.45rem;}.menu-item-final-price {    color: var(--kameni-terracotta);    font-size: 1rem;    font-weight: 700;}.menu-item-regular-price {    color: var(--kameni-stone-grey);    font-size: 0.76rem;    text-decoration: line-through;}.menu-item-category {    display: inline-block;    width: fit-content;    margin-top: 0.8rem;    color: var(--kameni-terracotta);    font-size: 0.65rem;    font-weight: 700;    letter-spacing: 0.11em;    text-transform: uppercase;}.menu-item-description {    margin: 0.85rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.87rem;    line-height: 1.7;}.menu-item-footer {    display: flex;    align-items: center;    justify-content: space-between;    gap: 1rem;    margin-top: auto;    border-top: 1px solid var(--kameni-border);    padding-top: 1rem;}.menu-item-availability {    color: var(--kameni-stone-grey);    font-size: 0.68rem;    font-weight: 700;    letter-spacing: 0.08em;    text-transform: uppercase;}    .menu-item-availability::before {        display: inline-block;        width: 7px;        height: 7px;        margin-right: 0.45rem;        border-radius: 50%;        background: #4e7d51;        content: "";    }.menu-item-card-sold-out .menu-item-availability::before {    background: var(--kameni-terracotta);}.menu-item-add-button {    min-width: 74px;    min-height: 40px;    border: 1px solid var(--kameni-terracotta);    border-radius: 4px;    padding: 0.55rem 0.85rem;    background: var(--kameni-terracotta);    color: #ffffff;    cursor: pointer;    font-size: 0.69rem;    font-weight: 700;    letter-spacing: 0.1em;    text-transform: uppercase;    transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;}    .menu-item-add-button:hover:not(:disabled) {        border-color: var(--kameni-terracotta-light);        background: var(--kameni-terracotta-light);        transform: translateY(-1px);    }    .menu-item-add-button:disabled {        border-color: rgba(15, 13, 11, 0.14);        background: rgba(15, 13, 11, 0.07);        color: var(--kameni-stone-grey);        cursor: not-allowed;    }/* =========================================================   MOBILE   ========================================================= */@media (max-width: 991.98px) {    .menu-page {        padding: 2.25rem 0 3.5rem;    }    .menu-page-header {        display: block;        padding-bottom: 1.75rem;    }    .menu-page-description {        font-size: 0.95rem;    }    .menu-page-controls {        justify-content: stretch;        margin-top: 1.5rem;    }    .menu-items-heading {        display: block;    }    .menu-items-count {        display: block;        margin-top: 0.8rem;    }    .menu-items-grid {        grid-template-columns: 1fr;        gap: 1rem;    }    .menu-item-card {        display: grid;        grid-template-columns: minmax(120px, 0.72fr) minmax(0, 1.28fr);    }    .menu-item-image {        min-height: 100%;        padding: 1rem;    }        .menu-item-image > span:first-child {            font-size: 1.35rem;        }    .menu-item-content {        min-height: 230px;        padding: 1rem;    }    .menu-item-title-row h2 {        font-size: 1.1rem;    }    .menu-item-description {        font-size: 0.82rem;    }    .menu-state {        margin: 2rem 0;    }}@media (max-width: 520px) {    .menu-item-card {        display: flex;    }    .menu-item-image {        min-height: 175px;    }    .menu-item-content {        min-height: 220px;    }}/* =========================================================   MENU CART FEEDBACK   ========================================================= */.menu-cart-feedback {    max-width: 560px;    margin: -1rem 0 1.75rem;    border: 1px solid rgba(78, 125, 81, 0.35);    border-radius: 5px;    padding: 0.8rem 1rem;    background: rgba(78, 125, 81, 0.08);    color: #345a37;    font-size: 0.86rem;    font-weight: 600;}    .menu-cart-feedback::before {        margin-right: 0.55rem;        content: "✓";        font-weight: 700;    }.menu-cart-feedback-error {    border-color: rgba(184, 72, 28, 0.35);    background: rgba(184, 72, 28, 0.09);    color: var(--kameni-terracotta);}    .menu-cart-feedback-error::before {        content: "!";    }@media (max-width: 991.98px) {    .menu-cart-feedback {        max-width: none;        margin-top: -0.65rem;    }}/* =========================================================   MENU ITEM QUANTITY SELECTOR   ========================================================= */.menu-item-quantity-selector {    display: grid;    min-width: 108px;    grid-template-columns: 34px 1fr 34px;    align-items: center;    overflow: hidden;    border: 1px solid var(--kameni-terracotta);    border-radius: 4px;    background: var(--kameni-warm-white);}.menu-item-quantity-button {    display: inline-flex;    width: 34px;    height: 38px;    align-items: center;    justify-content: center;    border: 0;    background: transparent;    color: var(--kameni-terracotta);    cursor: pointer;    font-size: 1.25rem;    font-weight: 500;    line-height: 1;    transition: background-color 0.2s ease, color 0.2s ease;}    .menu-item-quantity-button:hover:not(:disabled) {        background: var(--kameni-terracotta);        color: #ffffff;    }    .menu-item-quantity-button:focus-visible {        position: relative;        z-index: 1;        outline: 2px solid var(--kameni-terracotta);        outline-offset: -2px;    }    .menu-item-quantity-button:disabled {        cursor: not-allowed;        opacity: 0.35;    }.menu-item-quantity-value {    min-width: 32px;    color: var(--kameni-black);    font-size: 0.85rem;    font-weight: 700;    text-align: center;}/* =========================================================   KAMENI CONFIRMATION DIALOG   ========================================================= */.kameni-dialog-backdrop {    position: fixed;    z-index: 2000;    inset: 0;    display: grid;    place-items: center;    padding: 1.25rem;    background: rgba(15, 13, 11, 0.58);    backdrop-filter: blur(5px);}.kameni-dialog {    width: min(100%, 510px);    border: 1px solid rgba(15, 13, 11, 0.14);    border-radius: 8px;    padding: clamp(1.5rem, 4vw, 2.5rem);    background: var(--kameni-warm-white);    box-shadow: 0 22px 60px rgba(0, 0, 0, 0.3);    animation: kameni-dialog-enter 0.22s ease-out;}.kameni-dialog-title {    margin: 0.8rem 0 0;    color: var(--kameni-black);    font-family: var(--kameni-font-display);    font-size: clamp(1.55rem, 3vw, 2.25rem);    line-height: 1.25;}.kameni-dialog-message {    margin: 1rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.95rem;    line-height: 1.75;}.kameni-dialog-actions {    display: flex;    flex-wrap: wrap-reverse;    justify-content: flex-end;    gap: 0.75rem;    margin-top: 2rem;}    .kameni-dialog-actions .kameni-btn-outline,    .kameni-dialog-actions .kameni-btn-primary {        min-height: 46px;    }@keyframes kameni-dialog-enter {    from {        opacity: 0;        transform: translateY(10px) scale(0.98);    }    to {        opacity: 1;        transform: translateY(0) scale(1);    }}@media (max-width: 520px) {    .kameni-dialog-actions {        display: grid;        grid-template-columns: 1fr;    }        .kameni-dialog-actions .kameni-btn-outline,        .kameni-dialog-actions .kameni-btn-primary {            width: 100%;        }}/* =========================================================   CART PAGE   ========================================================= */.cart-page {    padding: clamp(2.5rem, 6vw, 5rem) 0 6rem;}.cart-page-header {    display: flex;    align-items: flex-start;    justify-content: space-between;    gap: 1.5rem;    margin-bottom: 2.5rem;}.cart-page-description {    max-width: 600px;    margin: 1rem 0 0;    color: var(--kameni-stone-grey);    line-height: 1.7;}.cart-clear-button {    flex: 0 0 auto;    min-height: 44px;}.cart-layout {    display: grid;    grid-template-columns: minmax(0, 1fr) minmax(270px, 340px);    align-items: start;    gap: clamp(1.5rem, 4vw, 3rem);}.cart-items-section {    display: grid;    gap: 1rem;}.cart-item-card {    display: grid;    grid-template-columns: 130px minmax(0, 1fr);    overflow: hidden;    border: 1px solid rgba(15, 13, 11, 0.13);    border-radius: 7px;    background: var(--kameni-warm-white);}.cart-item-image {    display: grid;    min-height: 100%;    place-items: center;    overflow: hidden;    background: linear-gradient(rgba(15, 13, 11, 0.15), rgba(15, 13, 11, 0.15)), var(--kameni-black);    color: rgba(255, 255, 255, 0.78);    font-family: var(--kameni-font-display);}    .cart-item-image img {        width: 100%;        height: 100%;        object-fit: cover;    }.cart-item-content {    padding: 1.25rem;}.cart-item-title-row {    display: flex;    align-items: flex-start;    justify-content: space-between;    gap: 1rem;}    .cart-item-title-row h2 {        margin: 0.35rem 0 0;        color: var(--kameni-black);        font-family: var(--kameni-font-display);        font-size: 1.35rem;    }.cart-item-total {    flex: 0 0 auto;    color: var(--kameni-terracotta);    font-size: 1.05rem;}.cart-item-description {    margin: 0.75rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.9rem;    line-height: 1.6;}.cart-item-footer {    display: flex;    align-items: center;    justify-content: space-between;    gap: 1rem;    margin-top: 1.25rem;}.cart-item-unit-price {    color: var(--kameni-stone-grey);    font-size: 0.84rem;}.cart-item-actions {    display: flex;    align-items: center;    gap: 0.75rem;}.cart-remove-button {    min-height: 38px;    border: 0;    padding: 0.25rem;    background: transparent;    color: var(--kameni-stone-grey);    cursor: pointer;    font-size: 0.8rem;    text-decoration: underline;    text-underline-offset: 3px;}    .cart-remove-button:hover {        color: var(--kameni-terracotta);    }.cart-summary {    position: sticky;    top: 1.5rem;    border: 1px solid rgba(15, 13, 11, 0.14);    border-radius: 7px;    padding: 1.5rem;    background: var(--kameni-warm-white);}.cart-summary-row {    display: flex;    justify-content: space-between;    gap: 1rem;    margin-top: 1.25rem;    color: var(--kameni-stone-grey);    font-size: 0.92rem;}.cart-summary-total {    margin-top: 1rem;    border-top: 1px solid rgba(15, 13, 11, 0.12);    padding-top: 1rem;    color: var(--kameni-black);    font-size: 1rem;}    .cart-summary-total strong {        color: var(--kameni-terracotta);        font-size: 1.25rem;    }.cart-summary-note {    margin: 1.35rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.82rem;    line-height: 1.6;}.cart-checkout-button {    width: 100%;    margin-top: 1.5rem;}    .cart-checkout-button:disabled {        cursor: not-allowed;        opacity: 0.5;    }.cart-empty-state {    max-width: 620px;    margin: 3rem auto 0;    border: 1px solid rgba(15, 13, 11, 0.13);    border-radius: 8px;    padding: clamp(2rem, 6vw, 4rem);    background: var(--kameni-warm-white);    text-align: center;}.cart-empty-icon {    display: inline-grid;    width: 56px;    height: 56px;    margin-bottom: 1.25rem;    place-items: center;    border-radius: 50%;    background: rgba(184, 72, 28, 0.1);    color: var(--kameni-terracotta);    font-size: 0.9rem;    font-weight: 700;}.cart-empty-state p:not(.kameni-eyebrow) {    max-width: 390px;    margin: 1rem auto 1.75rem;    color: var(--kameni-stone-grey);    line-height: 1.7;}.header-cart-button,.mobile-cart-button,.mobile-nav-cart {    text-decoration: none;}    .header-cart-button:hover,    .header-cart-button:focus,    .mobile-cart-button:hover,    .mobile-cart-button:focus,    .mobile-nav-cart:hover,    .mobile-nav-cart:focus {        text-decoration: none;    }@media (max-width: 991.98px) {    .cart-page {        padding-bottom: 7.5rem;    }    .cart-layout {        grid-template-columns: 1fr;    }    .cart-summary {        position: static;    }}@media (max-width: 575.98px) {    .cart-page-header {        flex-direction: column;        margin-bottom: 1.75rem;    }    .cart-clear-button {        width: 100%;    }    .cart-item-card {        grid-template-columns: 88px minmax(0, 1fr);    }    .cart-item-content {        padding: 1rem;    }    .cart-item-title-row h2 {        font-size: 1.15rem;    }    .cart-item-footer {        align-items: flex-start;        flex-direction: column;    }    .cart-item-actions {        width: 100%;        justify-content: space-between;    }}/* =========================================================   DELIVERY DETAILS   ========================================================= */.delivery-details-page {    padding: clamp(2.5rem, 6vw, 5rem) 0 7rem;}.delivery-details-header {    display: flex;    align-items: flex-start;    justify-content: space-between;    gap: 1.5rem;    margin-bottom: 2.5rem;}.delivery-details-description {    max-width: 650px;    margin: 1rem 0 0;    color: var(--kameni-stone-grey);    line-height: 1.7;}.delivery-details-layout {    display: grid;    grid-template-columns: minmax(0, 1fr) minmax(270px, 340px);    align-items: start;    gap: clamp(1.5rem, 4vw, 3rem);}    .delivery-details-layout form {        display: grid;        gap: 1rem;    }.delivery-details-section {    border: 1px solid rgba(15, 13, 11, 0.13);    border-radius: 7px;    padding: clamp(1.25rem, 3vw, 1.75rem);    background: var(--kameni-warm-white);}.fulfillment-toggle {    display: inline-grid;    grid-template-columns: repeat(2, minmax(0, 1fr));    overflow: hidden;    width: min(100%, 420px);    margin-top: 0.85rem;    border: 1px solid rgba(15, 13, 11, 0.18);    border-radius: 5px;}.fulfillment-toggle-button {    min-height: 46px;    border: 0;    border-right: 1px solid rgba(15, 13, 11, 0.14);    background: transparent;    color: var(--kameni-stone-grey);    cursor: pointer;    font: inherit;    font-size: 0.88rem;    font-weight: 700;}    .fulfillment-toggle-button:last-child {        border-right: 0;    }    .fulfillment-toggle-button.is-selected {        background: var(--kameni-terracotta);        color: #ffffff;    }.delivery-details-helper {    margin: 1rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.9rem;    line-height: 1.65;}.checkout-form-grid {    display: grid;    grid-template-columns: repeat(2, minmax(0, 1fr));    gap: 1rem;    margin-top: 0.85rem;}.checkout-form-field {    display: grid;    gap: 0.45rem;}.checkout-form-field-full {    grid-column: 1 / -1;}.checkout-form-field label {    color: var(--kameni-black);    font-size: 0.83rem;    font-weight: 700;}.checkout-optional {    color: var(--kameni-stone-grey);    font-weight: 400;}.checkout-form-field .validation-message,.delivery-details-section > .validation-message {    color: var(--kameni-terracotta);    font-size: 0.78rem;    line-height: 1.4;}.checkout-validation-summary {    border: 1px solid rgba(184, 72, 28, 0.35);    border-radius: 5px;    padding: 0.85rem 1rem;    background: rgba(184, 72, 28, 0.08);    color: var(--kameni-terracotta);    font-size: 0.86rem;}    .checkout-validation-summary ul {        margin: 0;        padding-left: 1.1rem;    }.checkout-note-input {    min-height: 110px;    resize: vertical;}.delivery-slot-grid {    display: grid;    grid-template-columns: repeat(2, minmax(0, 1fr));    gap: 0.75rem;    margin-top: 0.85rem;}.delivery-slot-button {    display: grid;    min-height: 72px;    justify-items: start;    gap: 0.25rem;    border: 1px solid rgba(15, 13, 11, 0.18);    border-radius: 5px;    padding: 0.85rem 1rem;    background: transparent;    color: var(--kameni-black);    cursor: pointer;    font: inherit;    text-align: left;}    .delivery-slot-button strong {        font-size: 0.94rem;    }    .delivery-slot-button span {        color: var(--kameni-stone-grey);        font-size: 0.76rem;    }    .delivery-slot-button:hover,    .delivery-slot-button.is-selected {        border-color: var(--kameni-terracotta);        background: rgba(184, 72, 28, 0.08);    }        .delivery-slot-button.is-selected strong,        .delivery-slot-button.is-selected span {            color: var(--kameni-terracotta);        }.delivery-details-summary {    position: sticky;    top: 1.5rem;}.delivery-details-continue {    width: 100%;    margin-top: 0.5rem;}@media (max-width: 991.98px) {    .delivery-details-page {        padding-bottom: 7.5rem;    }    .delivery-details-layout {        grid-template-columns: 1fr;    }    .delivery-details-summary {        position: static;    }}@media (max-width: 575.98px) {    .delivery-details-header {        flex-direction: column;        margin-bottom: 1.75rem;    }        .delivery-details-header .kameni-btn-outline {            width: 100%;        }    .checkout-form-grid,    .delivery-slot-grid {        grid-template-columns: 1fr;    }}/* =========================================================   ORDER REVIEW   ========================================================= */.order-review-page {    padding: clamp(2.5rem, 6vw, 5rem) 0 7rem;}.order-review-header {    display: flex;    align-items: flex-start;    justify-content: space-between;    gap: 1.5rem;    margin-bottom: 2.5rem;}.order-review-description {    max-width: 620px;    margin: 1rem 0 0;    color: var(--kameni-stone-grey);    line-height: 1.7;}.order-review-layout {    display: grid;    grid-template-columns: minmax(0, 1fr) minmax(270px, 340px);    align-items: start;    gap: clamp(1.5rem, 4vw, 3rem);}.order-review-content {    display: grid;    gap: 1rem;}.order-review-section {    border: 1px solid rgba(15, 13, 11, 0.13);    border-radius: 7px;    padding: clamp(1.25rem, 3vw, 1.75rem);    background: var(--kameni-warm-white);}.order-review-section-heading {    display: flex;    align-items: flex-start;    justify-content: space-between;    gap: 1rem;}    .order-review-section-heading h2 {        margin: 0.35rem 0 0;        color: var(--kameni-black);        font-family: var(--kameni-font-display);        font-size: 1.3rem;        line-height: 1.35;    }.order-review-edit-link {    flex: 0 0 auto;    color: var(--kameni-terracotta);    font-size: 0.82rem;    font-weight: 700;    text-decoration: underline;    text-underline-offset: 3px;}.order-review-detail {    margin: 1rem 0 0;    color: var(--kameni-stone-grey);    line-height: 1.7;}.order-review-contact-list {    display: grid;    gap: 0.35rem;    margin-top: 1rem;    color: var(--kameni-stone-grey);    line-height: 1.6;}.order-review-items {    display: grid;    gap: 0.8rem;    margin-top: 1.25rem;}.order-review-item {    display: flex;    justify-content: space-between;    gap: 1rem;    border-top: 1px solid rgba(15, 13, 11, 0.1);    padding-top: 0.8rem;    color: var(--kameni-black);}    .order-review-item:first-child {        border-top: 0;        padding-top: 0;    }    .order-review-item > div {        display: grid;        gap: 0.25rem;    }        .order-review-item > div > span {            color: var(--kameni-stone-grey);            font-size: 0.84rem;        }    .order-review-item > strong {        flex: 0 0 auto;        color: var(--kameni-terracotta);    }.order-review-summary {    position: sticky;    top: 1.5rem;}.order-review-security-note {    margin: 1.35rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.82rem;    line-height: 1.65;}.order-review-place-order {    width: 100%;    margin-top: 1.5rem;}    .order-review-place-order:disabled {        cursor: not-allowed;        opacity: 0.5;    }.order-review-coming-note {    margin: 0.75rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.75rem;    line-height: 1.5;    text-align: center;}@media (max-width: 991.98px) {    .order-review-page {        padding-bottom: 7.5rem;    }    .order-review-layout {        grid-template-columns: 1fr;    }    .order-review-summary {        position: static;    }}@media (max-width: 575.98px) {    .order-review-header {        flex-direction: column;        margin-bottom: 1.75rem;    }        .order-review-header .kameni-btn-outline {            width: 100%;        }    .order-review-item {        align-items: flex-start;        flex-direction: column;        gap: 0.4rem;    }}.order-review-submit-error {    margin: 0.85rem 0 0;    color: var(--kameni-terracotta);    font-size: 0.84rem;    line-height: 1.55;    text-align: center;}/* =========================================================   ORDER CONFIRMATION   ========================================================= */.order-confirmation-page {    padding: clamp(2.5rem, 6vw, 5rem) 0 7rem;}.order-confirmation-header {    max-width: 720px;    margin: 0 auto 3rem;    text-align: center;}.order-confirmation-icon {    display: grid;    width: 56px;    height: 56px;    place-items: center;    margin: 0 auto 1.25rem;    border-radius: 50%;    background: var(--kameni-terracotta);    color: #ffffff;    font-size: 1.8rem;    font-weight: 700;}.order-confirmation-description {    max-width: 560px;    margin: 1rem auto 0;    color: var(--kameni-stone-grey);    line-height: 1.7;}.order-confirmation-layout {    display: grid;    grid-template-columns: minmax(0, 1fr) minmax(270px, 340px);    align-items: start;    gap: clamp(1.5rem, 4vw, 3rem);}.order-confirmation-content {    display: grid;    gap: 1rem;}.order-confirmation-section {    border: 1px solid rgba(15, 13, 11, 0.13);    border-radius: 7px;    padding: clamp(1.25rem, 3vw, 1.75rem);    background: var(--kameni-warm-white);}    .order-confirmation-section h2 {        margin: 0.4rem 0 0;        font-family: var(--kameni-font-display);        font-size: 1.35rem;    }.order-confirmation-number-row {    display: flex;    align-items: center;    justify-content: space-between;    gap: 1rem;    margin-top: 0.75rem;}    .order-confirmation-number-row > strong {        overflow-wrap: anywhere;        color: var(--kameni-black);        font-size: 0.92rem;    }.order-confirmation-status {    flex: 0 0 auto;    border-radius: 999px;    padding: 0.35rem 0.7rem;    background: rgba(184, 72, 28, 0.1);    color: var(--kameni-terracotta);    font-size: 0.78rem;    font-weight: 700;}.order-confirmation-detail {    margin: 0.7rem 0 0;    color: var(--kameni-stone-grey);}.order-confirmation-items {    display: grid;    gap: 0.8rem;    margin-top: 1rem;}.order-confirmation-item {    display: flex;    justify-content: space-between;    gap: 1rem;    border-top: 1px solid rgba(15, 13, 11, 0.1);    padding-top: 0.8rem;}    .order-confirmation-item:first-child {        border-top: 0;        padding-top: 0;    }    .order-confirmation-item > div {        display: grid;        gap: 0.25rem;    }    .order-confirmation-item span {        color: var(--kameni-stone-grey);        font-size: 0.84rem;    }    .order-confirmation-item > strong {        flex: 0 0 auto;        color: var(--kameni-terracotta);    }.order-confirmation-summary {    position: sticky;    top: 1.5rem;}.order-confirmation-note {    margin: 1.25rem 0;    color: var(--kameni-stone-grey);    font-size: 0.83rem;    line-height: 1.65;}.order-confirmation-menu-button {    width: 100%;    text-align: center;}@media (max-width: 991.98px) {    .order-confirmation-page {        padding-bottom: 7.5rem;    }    .order-confirmation-layout {        grid-template-columns: 1fr;    }    .order-confirmation-summary {        position: static;    }}@media (max-width: 575.98px) {    .order-confirmation-number-row {        align-items: flex-start;        flex-direction: column;    }}/* =========================================================   MY ORDERS   ========================================================= */.my-orders-page {    padding: clamp(2.5rem, 6vw, 5rem) 0 7rem;}.my-orders-header {    display: flex;    align-items: flex-start;    justify-content: space-between;    gap: 1.5rem;    margin-bottom: 2.5rem;}.my-orders-description {    max-width: 580px;    margin: 1rem 0 0;    color: var(--kameni-stone-grey);    line-height: 1.7;}.my-orders-list {    display: grid;    gap: 1rem;    max-width: 850px;}.my-order-card {    border: 1px solid rgba(15, 13, 11, 0.13);    border-radius: 7px;    padding: clamp(1.2rem, 3vw, 1.65rem);    background: var(--kameni-warm-white);}.my-order-card-top {    display: flex;    align-items: flex-start;    justify-content: space-between;    gap: 1rem;}    .my-order-card-top h2 {        margin: 0.35rem 0 0;        color: var(--kameni-black);        font-family: var(--kameni-font-display);        font-size: 1.35rem;    }.my-order-status {    flex: 0 0 auto;    border-radius: 999px;    padding: 0.35rem 0.7rem;    background: rgba(184, 72, 28, 0.1);    color: var(--kameni-terracotta);    font-size: 0.78rem;    font-weight: 700;}.my-order-details {    display: flex;    flex-wrap: wrap;    gap: 0.65rem 1.25rem;    margin-top: 1.15rem;    color: var(--kameni-stone-grey);    font-size: 0.9rem;}    .my-order-details strong {        color: var(--kameni-black);    }.my-order-card-footer {    display: flex;    align-items: center;    justify-content: space-between;    gap: 1rem;    border-top: 1px solid rgba(15, 13, 11, 0.1);    margin-top: 1.15rem;    padding-top: 0.95rem;}.my-order-number {    color: var(--kameni-stone-grey);    font-size: 0.8rem;}.my-order-view-link {    color: var(--kameni-terracotta);    font-size: 0.85rem;    font-weight: 700;    text-decoration: underline;    text-underline-offset: 3px;}.order-confirmation-orders-button {    width: 100%;    margin-top: 0.75rem;    text-align: center;}@media (max-width: 575.98px) {    .my-orders-header {        flex-direction: column;        margin-bottom: 1.75rem;    }        .my-orders-header .kameni-btn-outline {            width: 100%;        }    .my-order-card-top,    .my-order-card-footer {        align-items: flex-start;        flex-direction: column;    }}/* =========================================================   ORDER CANCELLATION   ========================================================= */.order-cancellation-actions {    border-top: 1px solid rgba(15, 13, 11, 0.1);    margin-top: 1.25rem;    padding-top: 1.25rem;}    .order-cancellation-actions p {        margin: 0.7rem 0 0;        color: var(--kameni-stone-grey);        font-size: 0.78rem;        line-height: 1.55;    }.order-cancel-button {    width: 100%;    border: 1px solid rgba(163, 47, 33, 0.55);    border-radius: 4px;    padding: 0.75rem 1rem;    background: transparent;    color: #a32f21;    cursor: pointer;    font: inherit;    font-size: 0.85rem;    font-weight: 700;}    .order-cancel-button:hover {        background: rgba(163, 47, 33, 0.08);    }.order-cancelled-message {    display: grid;    gap: 0.35rem;    border-top: 1px solid rgba(15, 13, 11, 0.1);    margin-top: 1.25rem;    padding-top: 1.25rem;    color: #a32f21;    font-size: 0.84rem;    line-height: 1.55;}.order-cancellation-overlay {    position: fixed;    z-index: 1100;    inset: 0;    display: grid;    place-items: center;    padding: 1rem;    background: rgba(15, 13, 11, 0.52);}.order-cancellation-dialog {    position: relative;    width: min(100%, 520px);    border-radius: 7px;    padding: clamp(1.5rem, 4vw, 2.25rem);    background: var(--kameni-warm-white);    box-shadow: 0 20px 65px rgba(0, 0, 0, 0.24);}    .order-cancellation-dialog h2 {        margin: 0.45rem 0 0;        color: var(--kameni-black);        font-family: var(--kameni-font-display);        font-size: 1.7rem;    }.order-cancellation-close {    position: absolute;    top: 0.85rem;    right: 0.95rem;    border: 0;    padding: 0.2rem 0.45rem;    background: transparent;    color: var(--kameni-stone-grey);    cursor: pointer;    font-size: 1.65rem;    line-height: 1;}.order-cancellation-description {    margin: 1rem 0 1.25rem;    color: var(--kameni-stone-grey);    line-height: 1.65;}.order-cancellation-dialog label {    display: block;    margin-bottom: 0.45rem;    color: var(--kameni-black);    font-size: 0.83rem;    font-weight: 700;}.order-cancellation-textarea {    min-height: 110px;    resize: vertical;}.order-cancellation-error {    margin: 0.75rem 0 0;    color: #a32f21;    font-size: 0.82rem;    line-height: 1.5;}.order-cancellation-buttons {    display: flex;    justify-content: flex-end;    gap: 0.75rem;    margin-top: 1.4rem;}.order-cancel-confirm-button {    border: 1px solid #a32f21;    border-radius: 4px;    padding: 0.75rem 1rem;    background: #a32f21;    color: #ffffff;    cursor: pointer;    font: inherit;    font-size: 0.85rem;    font-weight: 700;}    .order-cancel-confirm-button:disabled,    .order-cancellation-close:disabled {        cursor: not-allowed;        opacity: 0.55;    }@media (max-width: 575.98px) {    .order-cancellation-buttons {        flex-direction: column-reverse;    }        .order-cancellation-buttons .kameni-btn-outline,        .order-cancel-confirm-button {            width: 100%;            text-align: center;        }}/* =========================================================   LOGIN   ========================================================= */.kameni-login-page {    min-height: calc(100vh - 1px);    display: grid;    place-items: center;    padding: clamp(1.25rem, 5vw, 4rem);    background: linear-gradient( 135deg, rgba(184, 72, 28, 0.11), rgba(255, 253, 248, 0) 47% ), var(--kameni-warm-white);}.kameni-login-shell {    display: grid;    grid-template-columns: minmax(0, 1.05fr) minmax(390px, 0.95fr);    width: min(100%, 1050px);    min-height: 610px;    overflow: hidden;    border: 1px solid rgba(15, 13, 11, 0.11);    border-radius: 10px;    background: var(--kameni-warm-white);    box-shadow: 0 24px 70px rgba(15, 13, 11, 0.12);}.kameni-login-intro {    display: flex;    flex-direction: column;    justify-content: flex-end;    min-height: 100%;    padding: clamp(2rem, 6vw, 5rem);    background: linear-gradient( 180deg, rgba(15, 13, 11, 0.04), rgba(15, 13, 11, 0.68) ), url("/images/login-restaurant.jpg") center / cover;    color: #ffffff;}    .kameni-login-intro .kameni-eyebrow {        color: rgba(255, 255, 255, 0.75);    }.kameni-login-brand-title {    margin: 0.8rem 0 1.15rem;    max-width: 560px;    color: #ffffff;    font-family: var(--kameni-font-display);    font-size: clamp(2.65rem, 5vw, 4.7rem);    font-weight: 500;    line-height: 0.96;    letter-spacing: -0.04em;}.kameni-login-intro-text {    max-width: 480px;    margin: 0;    color: rgba(255, 255, 255, 0.83);    font-size: 1rem;    line-height: 1.75;}.kameni-login-intro-details {    display: grid;    gap: 0.7rem;    margin-top: 2rem;    color: rgba(255, 255, 255, 0.88);    font-size: 0.84rem;}    .kameni-login-intro-details span {        display: flex;        align-items: center;        gap: 0.65rem;    }        .kameni-login-intro-details span::before {            width: 6px;            height: 6px;            flex: 0 0 auto;            border-radius: 50%;            background: var(--kameni-terracotta);            content: "";        }.kameni-login-card {    display: flex;    flex-direction: column;    justify-content: center;    padding: clamp(2rem, 5vw, 4.5rem);    background: var(--kameni-warm-white);}.kameni-login-card-header {    margin-bottom: 2rem;}    .kameni-login-card-header h2 {        margin: 0.5rem 0 0;        color: var(--kameni-black);        font-family: var(--kameni-font-display);        font-size: clamp(2rem, 3.4vw, 2.75rem);        font-weight: 500;        line-height: 1.05;        letter-spacing: -0.03em;    }    .kameni-login-card-header p:last-child {        margin: 0.9rem 0 0;        color: var(--kameni-stone-grey);        line-height: 1.65;    }.kameni-login-alert {    display: grid;    gap: 0.22rem;    margin-bottom: 1.35rem;    border: 1px solid rgba(163, 47, 33, 0.28);    border-left: 4px solid #a32f21;    border-radius: 4px;    padding: 0.9rem 1rem;    background: rgba(163, 47, 33, 0.06);    color: #842519;    font-size: 0.84rem;    line-height: 1.5;}.kameni-login-form {    display: grid;    gap: 1.2rem;}.kameni-login-field {    display: grid;    gap: 0.5rem;}    .kameni-login-field label {        color: var(--kameni-black);        font-size: 0.83rem;        font-weight: 700;    }.kameni-login-password-label {    display: flex;    align-items: center;    justify-content: space-between;    gap: 1rem;}.kameni-login-forgot-link {    color: var(--kameni-terracotta);    font-size: 0.78rem;    font-weight: 700;    text-decoration: none;}    .kameni-login-forgot-link:hover {        text-decoration: underline;        text-underline-offset: 3px;    }.kameni-login-control {    width: 100%;    border: 1px solid rgba(15, 13, 11, 0.2);    border-radius: 4px;    padding: 0.85rem 0.95rem;    background: #ffffff;    color: var(--kameni-black);    font: inherit;    outline: none;    transition: border-color 150ms ease, box-shadow 150ms ease;}    .kameni-login-control::placeholder {        color: rgba(15, 13, 11, 0.38);    }    .kameni-login-control:focus {        border-color: var(--kameni-terracotta);        box-shadow: 0 0 0 3px rgba(184, 72, 28, 0.13);    }.kameni-login-submit,.kameni-login-google-button {    display: inline-flex;    align-items: center;    justify-content: center;    min-height: 48px;    border-radius: 4px;    padding: 0.8rem 1rem;    cursor: pointer;    font: inherit;    font-size: 0.88rem;    font-weight: 700;    transition: background 150ms ease, border-color 150ms ease, transform 150ms ease;}.kameni-login-submit {    border: 1px solid var(--kameni-terracotta);    background: var(--kameni-terracotta);    color: #ffffff;}    .kameni-login-submit:hover {        background: #a83f19;        border-color: #a83f19;        transform: translateY(-1px);    }.kameni-login-google-button {    gap: 0.7rem;    border: 1px solid rgba(15, 13, 11, 0.18);    background: #ffffff;    color: var(--kameni-black);}    .kameni-login-google-button:hover {        border-color: rgba(15, 13, 11, 0.35);        background: rgba(15, 13, 11, 0.025);    }.kameni-login-google-mark {    display: inline-grid;    width: 23px;    height: 23px;    place-items: center;    border-radius: 50%;    background: #ffffff;    color: #4285f4;    font-family: Arial, sans-serif;    font-size: 1rem;    font-weight: 700;}.kameni-login-divider {    position: relative;    display: grid;    place-items: center;    margin: 0.15rem 0;    color: var(--kameni-stone-grey);    font-size: 0.76rem;}    .kameni-login-divider::before {        position: absolute;        z-index: 0;        top: 50%;        right: 0;        left: 0;        height: 1px;        background: rgba(15, 13, 11, 0.12);        content: "";    }    .kameni-login-divider span {        position: relative;        z-index: 1;        padding: 0 0.8rem;        background: var(--kameni-warm-white);    }.kameni-login-footer {    margin: 1.8rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.8rem;    line-height: 1.6;    text-align: center;}    .kameni-login-footer a {        color: var(--kameni-terracotta);        font-weight: 700;        text-decoration: none;    }        .kameni-login-footer a:hover {            text-decoration: underline;            text-underline-offset: 3px;        }@media (max-width: 820px) {    .kameni-login-shell {        grid-template-columns: 1fr;        max-width: 590px;    }    .kameni-login-intro {        min-height: 270px;        padding: 2rem;    }    .kameni-login-brand-title {        font-size: clamp(2.5rem, 10vw, 4rem);    }    .kameni-login-intro-details {        display: none;    }}@media (max-width: 480px) {    .kameni-login-page {        padding: 0;        background: var(--kameni-warm-white);    }    .kameni-login-shell {        min-height: 100vh;        border: 0;        border-radius: 0;        box-shadow: none;    }    .kameni-login-intro {        min-height: 235px;        padding: 1.5rem;    }    .kameni-login-card {        padding: 2rem 1.5rem 2.5rem;    }    .kameni-login-password-label {        align-items: flex-start;        flex-direction: column;        gap: 0.35rem;    }}/* =========================================================   ADMIN BOOKINGS   ========================================================= */.admin-bookings-page {    padding: clamp(2rem, 5vw, 4.5rem) 0 6rem;}.admin-bookings-header {    display: block;    margin-bottom: 2rem;}.admin-bookings-subheader {    display: flex;    width: 100%;    align-items: center;    justify-content: space-between;    gap: 1.25rem;    margin-top: 0.9rem;}.admin-bookings-description {    margin: 0;    color: var(--kameni-stone-grey);    line-height: 1.6;}.admin-bookings-header-actions {    display: flex;    flex-direction: column;    align-items: flex-end;    gap: 0.65rem;}.admin-bookings-header-actions-row {    display: flex;    justify-content: flex-end;    gap: 0.65rem;}.admin-bookings-daily-summary-button {    width: 100%;}.admin-bookings-filters {    display: grid;    grid-template-columns: minmax(160px, 1.25fr) minmax(180px, 1.25fr) minmax(150px, 1fr) minmax(150px, 1fr) auto;    align-items: end;    gap: 1rem;    margin-bottom: 1.75rem;    border: 1px solid rgba(15, 13, 11, 0.11);    border-radius: 8px;    padding: 1.2rem;    background: var(--kameni-warm-white);}.admin-bookings-filter-field {    display: grid;    gap: 0.45rem;}    .admin-bookings-filter-field label {        color: var(--kameni-black);        font-size: 0.8rem;        font-weight: 700;    }.admin-bookings-filter-action {    display: flex;}    .admin-bookings-filter-action .kameni-btn-primary {        min-height: 45px;        white-space: nowrap;    }.admin-bookings-list {    max-height: min(62vh, 720px);    overflow-y: auto;    overflow-x: auto;    border: 1px solid rgba(15, 13, 11, 0.12);    border-radius: 8px;    background: var(--kameni-warm-white);}.admin-bookings-list-header,.admin-booking-row {    display: grid;    grid-template-columns: 110px minmax(180px, 1.5fr) minmax(150px, 1.05fr) 105px 80px 115px 115px;    align-items: center;    gap: 1rem;}.admin-bookings-list-header {    position: sticky;    z-index: 2;    top: 0;    border-bottom: 1px solid rgba(15, 13, 11, 0.11);    padding: 0.8rem 1.1rem;    background: var(--kameni-warm-white);    color: var(--kameni-stone-grey);    font-size: 0.72rem;    font-weight: 700;    letter-spacing: 0.04em;    text-transform: uppercase;}.admin-booking-row {    width: 100%;    border: 0;    border-bottom: 1px solid rgba(15, 13, 11, 0.09);    padding: 1rem 1.1rem;    background: transparent;    color: var(--kameni-black);    cursor: pointer;    font: inherit;    text-align: left;    transition: background 150ms ease;}    .admin-booking-row:last-child {        border-bottom: 0;    }    .admin-booking-row:hover {        background: rgba(184, 72, 28, 0.055);    }.admin-booking-time,.admin-booking-total {    font-variant-numeric: tabular-nums;}.admin-booking-customer {    display: grid;    gap: 0.18rem;}    .admin-booking-customer strong {        font-size: 0.9rem;    }    .admin-booking-customer small {        color: var(--kameni-stone-grey);        font-size: 0.78rem;    }.admin-booking-location {    color: var(--kameni-stone-grey);    font-size: 0.85rem;}.admin-booking-total {    text-align: right;}.admin-booking-status {    display: inline-flex;    border-radius: 999px;    padding: 0.34rem 0.65rem;    font-size: 0.74rem;    font-weight: 700;    line-height: 1;    white-space: nowrap;}.admin-booking-status-pending {    background: rgba(184, 72, 28, 0.12);    color: var(--kameni-terracotta);}.admin-booking-status-confirmed {    background: rgba(43, 103, 163, 0.12);    color: #2b67a3;}.admin-booking-status-preparing {    background: rgba(143, 99, 26, 0.13);    color: #8f631a;}.admin-booking-status-delivering {    background: rgba(87, 69, 163, 0.13);    color: #5745a3;}.admin-booking-status-delivered {    background: rgba(48, 120, 79, 0.13);    color: #30784f;}.admin-booking-status-cancelled {    background: rgba(163, 47, 33, 0.11);    color: #a32f21;}.admin-bookings-error {    display: grid;    gap: 0.55rem;    max-width: 620px;    border: 1px solid rgba(163, 47, 33, 0.24);    border-left: 4px solid #a32f21;    border-radius: 5px;    padding: 1rem;    background: rgba(163, 47, 33, 0.06);    color: #842519;}    .admin-bookings-error .kameni-btn-outline {        justify-self: start;        margin-top: 0.35rem;    }@media (max-width: 1050px) {    .admin-bookings-filters {        grid-template-columns: repeat(2, minmax(0, 1fr));    }    .admin-bookings-filter-action {        grid-column: span 2;    }        .admin-bookings-filter-action .kameni-btn-primary {            width: 100%;        }    .admin-bookings-list {        overflow-x: auto;        max-height: 58vh;    }    .admin-bookings-list-header,    .admin-booking-row {        min-width: 980px;    }}@media (max-width: 767.98px) {    .admin-bookings-subheader {        align-items: stretch;        flex-direction: column;    }    .admin-bookings-header-actions {        justify-content: space-between;        width: 100%;    }    .mobile-actions .mobile-cart-button {        display: none;    }}@media (max-width: 575.98px) {        .admin-bookings-header .kameni-btn-outline {        width: 100%;    }    .admin-bookings-filters {        grid-template-columns: 1fr;    }    .admin-bookings-header-actions {        width: 100%;        align-items: stretch;    }    .admin-bookings-header-actions-row {        display: grid;        grid-template-columns: repeat(2, minmax(0, 1fr));    }    .admin-bookings-filter-action {        grid-column: auto;    }    .admin-bookings-header-actions-row button,    .admin-bookings-daily-summary-button {        width: 100%;    }}/* =========================================================   AUTH HEADER ACTIONS   ========================================================= */.kameni-auth-actions {    display: flex;    align-items: center;    gap: 0.85rem;}.kameni-auth-user {    max-width: 165px;    overflow: hidden;    color: var(--kameni-black);    font-size: 0.72rem;    font-weight: 700;    letter-spacing: 0.07em;    text-overflow: ellipsis;    text-transform: uppercase;    white-space: nowrap;}.kameni-logout-form {    margin: 0;}.kameni-logout-button {    border: 0;    padding: 0;    background: transparent;    color: var(--kameni-terracotta);    cursor: pointer;    font: inherit;    font-size: 0.72rem;    font-weight: 800;    letter-spacing: 0.07em;    text-transform: uppercase;}    .kameni-logout-button:hover {        text-decoration: underline;        text-decoration-thickness: 1px;        text-underline-offset: 4px;    }.kameni-logout-form {    margin: 0;}.kameni-logout-button {    border: 0;    background: transparent;    cursor: pointer;}@media (max-width: 575.98px) {    .kameni-auth-user {        display: none;    }}.kameni-logout-form {    display: inline-flex;    align-items: center;    margin: 0;    padding: 0;}.kameni-logout-button {    display: inline-flex;    align-items: center;    justify-content: center;    min-height: 0;    margin: 0;    padding: 0;    border: 0;    background: transparent;    color: inherit;    cursor: pointer;    font: inherit;    line-height: 1;    text-decoration: none;    white-space: nowrap;}    .kameni-logout-button:hover,    .kameni-logout-button:focus {        text-decoration: none;    }@media (max-width: 575.98px) {    .kameni-header-actions {        display: flex;        align-items: center;        justify-content: flex-end;        gap: 0.8rem;        white-space: nowrap;    }        .kameni-header-actions .kameni-profile-link,        .kameni-header-actions .kameni-logout-form {            display: inline-flex;            align-items: center;            flex: 0 0 auto;        }        .kameni-header-actions .kameni-cart-button {            flex: 0 0 auto;        }}/* =========================================================   ADMIN BOOKING DETAILS DRAWER   ========================================================= */.admin-booking-panel-backdrop {    position: fixed;    z-index: 3000;    inset: 0;    display: flex;    justify-content: flex-end;    background: rgba(15, 13, 11, 0.46);}.admin-booking-details-panel {    width: min(100%, 620px);    min-height: 100dvh;    overflow-y: auto;    padding: clamp(1.5rem, 4vw, 2.5rem);    background: var(--kameni-warm-white);    box-shadow: -18px 0 55px rgba(15, 13, 11, 0.22);}.admin-booking-details-close {    display: grid;    width: 38px;    height: 38px;    place-items: center;    margin-left: auto;    border: 1px solid rgba(15, 13, 11, 0.18);    border-radius: 50%;    padding: 0;    background: transparent;    color: var(--kameni-black);    cursor: pointer;    font-size: 1.6rem;    line-height: 1;}    .admin-booking-details-close:hover {        background: rgba(15, 13, 11, 0.07);    }.admin-booking-details-header {    display: flex;    align-items: flex-start;    justify-content: space-between;    gap: 1rem;    margin-top: 1.25rem;}    .admin-booking-details-header h2 {        margin: 0.45rem 0 0;        color: var(--kameni-black);        font-family: var(--kameni-font-display);        font-size: clamp(2rem, 4vw, 2.7rem);        font-weight: 500;        line-height: 1.08;        letter-spacing: -0.035em;    }.admin-booking-details-date {    margin: 0.75rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.9rem;    line-height: 1.6;}.admin-booking-details-section {    border-top: 1px solid rgba(15, 13, 11, 0.11);    margin-top: 1.6rem;    padding-top: 1.3rem;}.admin-booking-details-contact {    display: grid;    gap: 0.42rem;    margin-top: 0.8rem;}    .admin-booking-details-contact strong {        color: var(--kameni-black);    }    .admin-booking-details-contact a {        width: fit-content;        color: var(--kameni-terracotta);        font-size: 0.9rem;        text-decoration: none;    }        .admin-booking-details-contact a:hover {            text-decoration: underline;            text-underline-offset: 3px;        }.admin-booking-details-note {    margin: 0.8rem 0 0;    color: var(--kameni-stone-grey);    line-height: 1.7;    white-space: pre-wrap;}.admin-booking-details-section-title {    display: flex;    align-items: center;    justify-content: space-between;    gap: 1rem;}    .admin-booking-details-section-title > span {        color: var(--kameni-stone-grey);        font-size: 0.8rem;    }.admin-booking-items {    display: grid;    margin-top: 0.85rem;}.admin-booking-item {    display: flex;    justify-content: space-between;    gap: 1.25rem;    border-bottom: 1px solid rgba(15, 13, 11, 0.09);    padding: 1rem 0;}.admin-booking-item-main {    min-width: 0;}    .admin-booking-item-main strong {        color: var(--kameni-black);        font-size: 0.94rem;    }    .admin-booking-item-main p {        margin: 0.35rem 0 0;        color: var(--kameni-stone-grey);        font-size: 0.82rem;        line-height: 1.55;    }    .admin-booking-item-main small {        display: block;        margin-top: 0.55rem;        color: var(--kameni-terracotta);        font-size: 0.76rem;        line-height: 1.45;    }.admin-booking-item-price {    display: grid;    align-content: start;    gap: 0.3rem;    min-width: 105px;    color: var(--kameni-stone-grey);    font-size: 0.78rem;    text-align: right;}    .admin-booking-item-price strong {        color: var(--kameni-black);        font-size: 0.92rem;    }.admin-booking-total-row {    display: flex;    align-items: center;    justify-content: space-between;    color: var(--kameni-black);    font-size: 1.05rem;}    .admin-booking-total-row strong {        font-size: 1.25rem;    }.admin-booking-history {    display: grid;    gap: 0;    margin: 0.9rem 0 0;    padding: 0;    list-style: none;}    .admin-booking-history li {        position: relative;        display: grid;        gap: 0.28rem;        border-left: 1px solid rgba(15, 13, 11, 0.18);        padding: 0 0 1.2rem 1.15rem;        color: var(--kameni-stone-grey);        font-size: 0.82rem;    }        .admin-booking-history li::before {            position: absolute;            top: 0.22rem;            left: -4px;            width: 7px;            height: 7px;            border-radius: 50%;            background: var(--kameni-terracotta);            content: "";        }        .admin-booking-history li:last-child {            padding-bottom: 0;        }    .admin-booking-history strong {        color: var(--kameni-black);    }    .admin-booking-history time,    .admin-booking-history small {        color: var(--kameni-stone-grey);        font-size: 0.74rem;    }    .admin-booking-history p {        margin: 0.25rem 0 0;        line-height: 1.5;    }.admin-booking-history-empty {    margin: 0.8rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.85rem;}.admin-booking-cancelled-section {    margin-top: 1.6rem;    border: 1px solid rgba(163, 47, 33, 0.22);    border-radius: 6px;    padding: 1rem;    background: rgba(163, 47, 33, 0.06);    color: #842519;}    .admin-booking-cancelled-section strong {        display: block;        margin-top: 0.55rem;    }    .admin-booking-cancelled-section p {        margin: 0.55rem 0 0;        line-height: 1.55;    }.admin-booking-details-loading,.admin-booking-details-error {    display: grid;    gap: 0.8rem;    margin-top: 4rem;}    .admin-booking-details-loading h2,    .admin-booking-details-error h2 {        margin: 0;        color: var(--kameni-black);        font-family: var(--kameni-font-display);        font-size: 2rem;        font-weight: 500;    }@media (max-width: 575.98px) {    .admin-booking-details-panel {        width: 100%;        padding: 1.25rem;    }    .admin-booking-details-header {        flex-direction: column;    }    .admin-booking-item {        gap: 0.8rem;    }    .admin-booking-item-price {        min-width: 85px;    }}/* =========================================================   ADMIN BOOKING STATUS ACTIONS   ========================================================= */.admin-booking-status-actions {    display: flex;    align-items: center;    justify-content: space-between;    gap: 1.25rem;    margin-top: 1.6rem;    border: 1px solid rgba(184, 72, 28, 0.22);    border-radius: 8px;    padding: 1rem;    background: rgba(184, 72, 28, 0.06);}    .admin-booking-status-actions .kameni-eyebrow {        margin-bottom: 0.35rem;    }    .admin-booking-status-actions strong {        display: block;        max-width: 310px;        color: var(--kameni-black);        font-size: 0.85rem;        font-weight: 600;        line-height: 1.5;    }    .admin-booking-status-actions .kameni-btn-primary {        flex: 0 0 auto;        white-space: nowrap;    }.admin-booking-status-update-error {    margin-top: 0.85rem;    border-left: 3px solid #a32f21;    padding: 0.75rem 0.9rem;    background: rgba(163, 47, 33, 0.07);    color: #842519;    font-size: 0.84rem;    line-height: 1.55;}@media (max-width: 575.98px) {    .admin-booking-status-actions {        align-items: stretch;        flex-direction: column;    }        .admin-booking-status-actions .kameni-btn-primary {            width: 100%;        }}/* =========================================================   ADMIN BOOKING CANCELLATION   ========================================================= */.admin-booking-cancel-actions {    display: flex;    align-items: center;    justify-content: space-between;    gap: 1.25rem;    margin-top: 1rem;    border: 1px solid rgba(163, 47, 33, 0.22);    border-radius: 8px;    padding: 1rem;    background: rgba(163, 47, 33, 0.045);}    .admin-booking-cancel-actions .kameni-eyebrow {        margin-bottom: 0.35rem;    }    .admin-booking-cancel-actions strong {        display: block;        max-width: 325px;        color: var(--kameni-black);        font-size: 0.84rem;        font-weight: 600;        line-height: 1.5;    }.admin-booking-cancel-button {    flex: 0 0 auto;    border: 1px solid #a32f21;    border-radius: 4px;    padding: 0.78rem 1rem;    background: #a32f21;    color: #fff;    cursor: pointer;    font: inherit;    font-size: 0.78rem;    font-weight: 800;    letter-spacing: 0.05em;    line-height: 1;    text-transform: uppercase;    white-space: nowrap;}    .admin-booking-cancel-button:hover:not(:disabled) {        background: #842519;    }    .admin-booking-cancel-button:disabled {        cursor: not-allowed;        opacity: 0.6;    }.admin-booking-cancel-form {    display: grid;    width: 100%;    gap: 0.85rem;}    .admin-booking-cancel-form label {        color: var(--kameni-black);        font-size: 0.8rem;        font-weight: 700;    }.admin-booking-cancellation-textarea {    min-height: 105px;    resize: vertical;}.admin-booking-cancel-form-actions {    display: flex;    justify-content: flex-end;    gap: 0.7rem;}.admin-booking-cancellation-error {    border-left: 3px solid #a32f21;    padding: 0.7rem 0.85rem;    background: rgba(163, 47, 33, 0.08);    color: #842519;    font-size: 0.82rem;    line-height: 1.5;}@media (max-width: 575.98px) {    .admin-booking-cancel-actions {        align-items: stretch;        flex-direction: column;    }    .admin-booking-cancel-button {        width: 100%;    }    .admin-booking-cancel-form-actions {        flex-direction: column-reverse;    }        .admin-booking-cancel-form-actions .kameni-btn-outline,        .admin-booking-cancel-form-actions .admin-booking-cancel-button {            width: 100%;        }}.admin-bookings-header-actions {    display: flex;    align-items: center;    gap: 0.9rem;}.admin-bookings-last-updated {    color: var(--kameni-stone-grey);    font-size: 0.76rem;    white-space: nowrap;}@media (max-width: 575.98px) {    .admin-bookings-header-actions {        width: 100%;        justify-content: space-between;    }}/* =========================================================   RESTAURANT DASHBOARD NAVIGATION   ========================================================= */.kameni-dashboard-link {    color: var(--kameni-terracotta);    font-size: 0.72rem;    font-weight: 800;    letter-spacing: 0.07em;    text-decoration: none;    text-transform: uppercase;    white-space: nowrap;}    .kameni-dashboard-link:hover,    .kameni-dashboard-link.active {        text-decoration: underline;        text-decoration-thickness: 1px;        text-underline-offset: 4px;    }.mobile-nav-logout-form {    display: flex;    flex: 1 1 0;    margin: 0;}.mobile-nav-logout-button {    display: flex;    flex: 1 1 auto;    flex-direction: column;    align-items: center;    justify-content: center;    gap: 0.2rem;    border: 0;    padding: 0;    background: transparent;    color: inherit;    cursor: pointer;    font: inherit;}    .mobile-nav-logout-button:hover {        color: var(--kameni-terracotta);    }/* =========================================================   ADMIN DASHBOARD CONTEXT   ========================================================= */.admin-bookings-context-bar {    display: inline-flex;    align-items: center;    margin-bottom: 1.6rem;    border: 1px solid rgba(15, 13, 11, 0.12);    border-radius: 7px;    padding: 0.8rem 1rem;    background: rgba(15, 13, 11, 0.035);}.admin-bookings-context-user {    color: var(--kameni-stone-grey);    font-size: 0.84rem;}    .admin-bookings-context-user strong {        margin-left: 0.3rem;        color: var(--kameni-black);        font-size: 0.9rem;        font-weight: 800;    }@media (max-width: 575.98px) {    .admin-bookings-context-bar {        display: flex;        align-items: flex-start;        flex-direction: column;        gap: 0.65rem;        width: 100%;        margin-bottom: 1.25rem;        padding: 0.9rem;    }    .admin-bookings-context-user {        font-size: 0.82rem;    }    .admin-bookings-context-divider {        display: none;    }}/* =========================================================   ADMIN LAYOUT   ========================================================= */.admin-app-shell {    min-height: 100dvh;    background: var(--kameni-cream, #f7f2e8);}.admin-layout-bar {    position: sticky;    z-index: 500;    top: 0;    border-top: 1px solid rgba(15, 13, 11, 0.1);    border-bottom: 1px solid rgba(15, 13, 11, 0.14);    background: rgba(255, 253, 248, 0.97);    backdrop-filter: blur(10px);}.admin-layout-bar-inner {    display: flex;    align-items: center;    min-height: 54px;    gap: 1.25rem;}.admin-layout-branding {    display: inline-flex;    align-items: center;    gap: 0.6rem;    min-width: max-content;}.admin-layout-kicker {    color: var(--kameni-terracotta);    font-size: 0.72rem;    font-weight: 800;    letter-spacing: 0.07em;    text-transform: uppercase;}.admin-layout-brand-divider {    color: rgba(15, 13, 11, 0.28);    font-size: 0.9rem;}.admin-layout-title {    color: var(--kameni-black);    font-size: 0.78rem;    font-weight: 700;    letter-spacing: 0.03em;}.admin-layout-nav-link:hover {    color: var(--kameni-terracotta);}.admin-layout-nav-link.active {    border-bottom-color: var(--kameni-terracotta);    color: var(--kameni-black);}.admin-layout-page-content {    min-height: calc(100dvh - 54px);}@media (max-width: 767.98px) {    .admin-layout-bar {        position: relative;    }    .admin-layout-bar-inner {        flex-wrap: wrap;        align-items: stretch;        min-height: 0;        gap: 0;        padding-top: 0.7rem;        padding-bottom: 0;    }    .admin-layout-branding {        width: 100%;        padding-bottom: 0.7rem;    }    .admin-layout-back-link,    .admin-layout-logout-button {        border: 0;        padding: 0;        background: transparent;        color: var(--kameni-terracotta);        cursor: pointer;        font: inherit;        font-size: 0.72rem;        font-weight: 800;        letter-spacing: 0.05em;        text-decoration: none;        text-transform: uppercase;        white-space: nowrap;    }    .admin-layout-logout-form {        margin: 0;    }    .admin-layout-logout-button:hover,    .admin-layout-back-link:hover {        text-decoration: underline;        text-decoration-thickness: 1px;        text-underline-offset: 3px;    }}/* =========================================================   ADMIN SIDE MENU   ========================================================= */.admin-layout-bar {    position: sticky;    z-index: 500;    top: 0;    border-top: 1px solid rgba(15, 13, 11, 0.1);    border-bottom: 1px solid rgba(15, 13, 11, 0.14);    background: rgba(255, 253, 248, 0.97);    backdrop-filter: blur(10px);}.admin-layout-bar-inner {    display: flex;    min-height: 54px;    align-items: center;    gap: 1rem;}.admin-layout-menu-toggle {    display: inline-flex;    width: 2.45rem;    height: 2.45rem;    flex: 0 0 2.45rem;    flex-direction: column;    align-items: center;    justify-content: center;    gap: 0.28rem;    border: 1px solid rgba(15, 13, 11, 0.14);    border-radius: 6px;    background: #ffffff;    cursor: pointer;}    .admin-layout-menu-toggle:hover {        border-color: var(--kameni-terracotta);        background: rgba(184, 72, 28, 0.06);    }    .admin-layout-menu-toggle span {        display: block;        width: 1.05rem;        height: 2px;        border-radius: 999px;        background: var(--kameni-black);    }.admin-layout-branding {    display: inline-flex;    min-width: 0;    align-items: center;    gap: 0.6rem;}.admin-layout-kicker {    color: var(--kameni-terracotta);    font-size: 0.72rem;    font-weight: 800;    letter-spacing: 0.07em;    text-transform: uppercase;}.admin-layout-brand-divider {    color: rgba(15, 13, 11, 0.28);    font-size: 0.9rem;}.admin-layout-title {    color: var(--kameni-black);    font-size: 0.78rem;    font-weight: 700;    letter-spacing: 0.03em;}.admin-layout-desktop-actions {    display: flex;    align-items: center;    gap: 1rem;    margin-left: auto;}.admin-layout-back-link,.admin-layout-logout-button {    border: 0;    padding: 0;    background: transparent;    color: var(--kameni-terracotta);    cursor: pointer;    font: inherit;    font-size: 0.72rem;    font-weight: 800;    letter-spacing: 0.05em;    text-decoration: none;    text-transform: uppercase;    white-space: nowrap;}.admin-layout-logout-form {    margin: 0;}.admin-layout-back-link:hover,.admin-layout-logout-button:hover {    text-decoration: underline;    text-decoration-thickness: 1px;    text-underline-offset: 3px;}.admin-side-menu-backdrop {    position: fixed;    z-index: 900;    inset: 0;    visibility: hidden;    background: rgba(15, 13, 11, 0);    opacity: 0;    pointer-events: none;    transition: opacity 180ms ease, visibility 180ms ease, background 180ms ease;}    .admin-side-menu-backdrop.is-visible {        visibility: visible;        background: rgba(15, 13, 11, 0.42);        opacity: 1;        pointer-events: auto;    }.admin-side-menu {    position: fixed;    z-index: 950;    top: 0;    bottom: 0;    left: 0;    display: flex;    width: min(340px, calc(100vw - 2rem));    flex-direction: column;    border-right: 1px solid rgba(15, 13, 11, 0.14);    background: #fffdf8;    box-shadow: 14px 0 36px rgba(15, 13, 11, 0.18);    transform: translateX(-105%);    transition: transform 220ms ease;}    .admin-side-menu.is-open {        transform: translateX(0);    }.admin-side-menu-header {    display: flex;    align-items: flex-start;    justify-content: space-between;    border-bottom: 1px solid var(--kameni-border);    padding: 1.45rem 1.25rem 1.15rem;}    .admin-side-menu-header h2 {        margin: 0.4rem 0 0;        color: var(--kameni-black);        font-family: var(--kameni-font-display);        font-size: 1.55rem;    }.admin-side-menu-close {    display: grid;    width: 2.2rem;    height: 2.2rem;    place-items: center;    border: 1px solid var(--kameni-border);    border-radius: 50%;    background: #ffffff;    color: var(--kameni-black);    font-size: 1.5rem;    line-height: 1;    cursor: pointer;}    .admin-side-menu-close:hover {        border-color: var(--kameni-terracotta);        color: var(--kameni-terracotta);    }.admin-side-menu-navigation {    display: grid;    gap: 0.25rem;    padding: 1rem 0.75rem;}.admin-side-menu-link {    display: flex;    min-height: 3.15rem;    align-items: center;    gap: 0.85rem;    border-left: 3px solid transparent;    border-radius: 0 6px 6px 0;    padding: 0.7rem 0.9rem;    color: var(--kameni-stone-grey);    font-size: 0.9rem;    font-weight: 750;    text-decoration: none;    transition: background 150ms ease, color 150ms ease, border-color 150ms ease;}    .admin-side-menu-link:hover {        background: rgba(184, 72, 28, 0.07);        color: var(--kameni-black);    }    .admin-side-menu-link.active {        border-left-color: var(--kameni-terracotta);        background: rgba(184, 72, 28, 0.11);        color: var(--kameni-black);    }.admin-side-menu-link-icon {    display: inline-grid;    width: 1.35rem;    place-items: center;    color: var(--kameni-terracotta);    font-size: 1rem;}.admin-side-menu-footer {    display: grid;    gap: 1rem;    margin-top: auto;    border-top: 1px solid var(--kameni-border);    padding: 1.1rem 1.25rem 1.3rem;}.admin-side-menu-back-to-site,.admin-side-menu-logout {    border: 0;    padding: 0;    background: transparent;    color: var(--kameni-terracotta);    cursor: pointer;    font: inherit;    font-size: 0.78rem;    font-weight: 800;    letter-spacing: 0.04em;    text-align: left;    text-decoration: none;    text-transform: uppercase;}    .admin-side-menu-back-to-site:hover,    .admin-side-menu-logout:hover {        text-decoration: underline;        text-underline-offset: 3px;    }@media (max-width: 767.98px) {    .admin-layout-bar {        position: relative;    }    .admin-layout-bar-inner {        min-height: 52px;    }    .admin-layout-branding {        overflow: hidden;    }        .admin-layout-branding .admin-layout-kicker:last-child {            display: none;        }    .admin-layout-desktop-actions {        display: none;    }    .admin-side-menu {        width: min(320px, calc(100vw - 1.25rem));    }}/* =========================================================   ADMIN DELIVERY SLOTS   ========================================================= */.admin-delivery-slots-page {    padding: clamp(2rem, 5vw, 4.5rem) 0 6rem;}.admin-delivery-slots-header {    display: block;    margin-bottom: 2rem;}.admin-delivery-slots-context-bar {    display: inline-flex;    align-items: center;    margin-bottom: 1.6rem;    border: 1px solid rgba(15, 13, 11, 0.12);    border-radius: 7px;    padding: 0.8rem 1rem;    background: rgba(15, 13, 11, 0.035);}.admin-delivery-slots-context-user {    color: var(--kameni-stone-grey);    font-size: 0.84rem;}    .admin-delivery-slots-context-user strong {        margin-left: 0.3rem;        color: var(--kameni-black);        font-size: 0.9rem;        font-weight: 800;    }.admin-delivery-slots-description {    margin: 0.85rem 0 0;    color: var(--kameni-stone-grey);    line-height: 1.6;}.admin-delivery-slots-header-actions {    display: flex;    align-items: center;    gap: 0.9rem;}.admin-delivery-slots-last-updated {    color: var(--kameni-stone-grey);    font-size: 0.76rem;    white-space: nowrap;}.admin-delivery-slots-filters {    display: grid;    grid-template-columns: minmax(160px, 1.25fr) minmax(180px, 1.25fr) minmax(150px, 1fr) auto;    align-items: end;    gap: 1rem;    margin-bottom: 1.75rem;    border: 1px solid rgba(15, 13, 11, 0.11);    border-radius: 8px;    padding: 1.2rem;    background: var(--kameni-warm-white);}.admin-delivery-slots-filter-field {    display: grid;    gap: 0.45rem;}    .admin-delivery-slots-filter-field label {        color: var(--kameni-black);        font-size: 0.8rem;        font-weight: 700;    }.admin-delivery-slots-filter-action {    display: flex;}    .admin-delivery-slots-filter-action .kameni-btn-primary {        min-height: 45px;        white-space: nowrap;    }.admin-delivery-slots-list {    overflow: auto;    max-height: min(62vh, 720px);    border: 1px solid rgba(15, 13, 11, 0.12);    border-radius: 8px;    background: var(--kameni-warm-white);}.admin-delivery-slots-list-header,.admin-delivery-slot-row {    display: grid;    grid-template-columns: minmax(150px, 1.2fr) minmax(130px, 1fr) 90px minmax(105px, 1fr) 95px 130px;    align-items: center;    gap: 1rem;}.admin-delivery-slots-list-header {    position: sticky;    z-index: 2;    top: 0;    border-bottom: 1px solid rgba(15, 13, 11, 0.11);    padding: 0.8rem 1.1rem;    background: var(--kameni-warm-white);    color: var(--kameni-stone-grey);    font-size: 0.72rem;    font-weight: 700;    letter-spacing: 0.04em;    text-transform: uppercase;}.admin-delivery-slot-row {    border-bottom: 1px solid rgba(15, 13, 11, 0.09);    padding: 1rem 1.1rem;    color: var(--kameni-stone-grey);    font-size: 0.88rem;}    .admin-delivery-slot-row:last-child {        border-bottom: 0;    }.admin-delivery-slot-time {    color: var(--kameni-black);    font-size: 0.95rem;    font-variant-numeric: tabular-nums;}.admin-delivery-slot-status {    display: inline-flex;    border-radius: 999px;    padding: 0.34rem 0.65rem;    font-size: 0.74rem;    font-weight: 700;    line-height: 1;    white-space: nowrap;}.admin-delivery-slot-status-open {    background: rgba(48, 120, 79, 0.13);    color: #30784f;}.admin-delivery-slot-status-full {    background: rgba(143, 99, 26, 0.13);    color: #8f631a;}.admin-delivery-slot-status-closed {    background: rgba(163, 47, 33, 0.11);    color: #a32f21;}.admin-delivery-slots-empty-description {    max-width: 500px;    margin: 0.85rem auto 0;    color: var(--kameni-stone-grey);    line-height: 1.6;}.admin-delivery-slots-error {    display: grid;    gap: 0.55rem;    max-width: 620px;    border: 1px solid rgba(163, 47, 33, 0.24);    border-left: 4px solid #a32f21;    border-radius: 5px;    padding: 1rem;    background: rgba(163, 47, 33, 0.06);    color: #842519;}    .admin-delivery-slots-error .kameni-btn-outline {        justify-self: start;        margin-top: 0.35rem;    }@media (max-width: 950px) {    .admin-delivery-slots-filters {        grid-template-columns: repeat(2, minmax(0, 1fr));    }    .admin-delivery-slots-filter-action {        grid-column: span 2;    }        .admin-delivery-slots-filter-action .kameni-btn-primary {            width: 100%;        }    .admin-delivery-slots-list-header,    .admin-delivery-slot-row {        min-width: 700px;    }}@media (max-width: 575.98px) {    .admin-delivery-slots-header {        flex-direction: column;    }    .admin-delivery-slots-header-actions {        width: 100%;        justify-content: space-between;    }    .admin-delivery-slots-context-bar {        width: 100%;        margin-bottom: 1.25rem;        padding: 0.9rem;    }    .admin-delivery-slots-list {        max-height: 58vh;    }}.admin-delivery-slots-header {    margin-bottom: 2rem;}.admin-delivery-slots-subheader {    display: flex;    width: 100%;    align-items: center;    justify-content: space-between;    gap: 1.25rem;    margin-top: 0.9rem;}.admin-delivery-slots-description {    margin: 0;    color: var(--kameni-stone-grey);    line-height: 1.6;}.admin-delivery-slots-header-actions {    display: flex;    align-items: center;    justify-content: flex-end;    gap: 0.75rem;    margin-left: auto;    white-space: nowrap;}.admin-delivery-slots-last-updated {    color: var(--kameni-stone-grey);    font-size: 0.76rem;    white-space: nowrap;}@media (max-width: 767.98px) {    .admin-delivery-slots-subheader {        align-items: stretch;        flex-direction: column;    }    .admin-delivery-slots-header-actions {        justify-content: space-between;        width: 100%;    }}@media (max-width: 575.98px) {    .admin-delivery-slots-header-actions {        flex-wrap: wrap;    }        .admin-delivery-slots-header-actions .kameni-btn-primary,        .admin-delivery-slots-header-actions .kameni-btn-outline {            flex: 1 1 auto;        }    .admin-delivery-slots-last-updated {        width: 100%;    }}/* =========================================================   ADMIN DELIVERY SLOT CREATE FORM   ========================================================= */.admin-delivery-slot-create-panel {    margin-bottom: 1.75rem;    border: 1px solid rgba(184, 72, 28, 0.24);    border-radius: 8px;    padding: 1.35rem;    background: linear-gradient( 145deg, rgba(184, 72, 28, 0.07), rgba(255, 253, 248, 0) 58% ), var(--kameni-warm-white);}.admin-delivery-slot-create-header {    display: flex;    align-items: flex-start;    justify-content: space-between;    gap: 1rem;}    .admin-delivery-slot-create-header h2 {        margin: 0.45rem 0 0;        color: var(--kameni-black);        font-family: var(--kameni-font-display);        font-size: clamp(1.45rem, 3vw, 2rem);        font-weight: 500;        line-height: 1.15;    }    .admin-delivery-slot-create-header p:last-child {        margin: 0.6rem 0 0;        color: var(--kameni-stone-grey);        font-size: 0.86rem;        line-height: 1.55;    }.admin-delivery-slot-create-close {    display: grid;    width: 34px;    height: 34px;    flex: 0 0 auto;    place-items: center;    border: 1px solid rgba(15, 13, 11, 0.15);    border-radius: 50%;    padding: 0;    background: transparent;    color: var(--kameni-black);    cursor: pointer;    font-size: 1.35rem;    line-height: 1;}    .admin-delivery-slot-create-close:hover:not(:disabled) {        background: rgba(15, 13, 11, 0.06);    }.admin-delivery-slot-create-fields {    display: grid;    grid-template-columns: repeat(3, minmax(0, 1fr));    gap: 1rem;    margin-top: 1.35rem;}.admin-delivery-slots-filter-field label small {    margin-left: 0.25rem;    color: var(--kameni-stone-grey);    font-size: 0.72rem;    font-weight: 500;}.admin-delivery-slot-create-actions {    display: flex;    justify-content: flex-end;    gap: 0.7rem;    margin-top: 1.25rem;}.admin-delivery-slot-create-error {    margin-top: 1rem;    border-left: 3px solid #a32f21;    padding: 0.75rem 0.9rem;    background: rgba(163, 47, 33, 0.07);    color: #842519;    font-size: 0.84rem;    line-height: 1.55;}@media (max-width: 767.98px) {    .admin-delivery-slot-create-fields {        grid-template-columns: 1fr;    }}@media (max-width: 575.98px) {    .admin-delivery-slot-create-actions {        flex-direction: column-reverse;    }        .admin-delivery-slot-create-actions .kameni-btn-outline,        .admin-delivery-slot-create-actions .kameni-btn-primary {            width: 100%;        }}/* =========================================================   ADMIN DELIVERY SLOT ACTIONS   ========================================================= */.admin-delivery-slot-actions {    display: grid;    justify-items: start;    gap: 0.4rem;}.admin-delivery-slot-close-button,.admin-delivery-slot-reopen-button {    border-radius: 4px;    padding: 0.62rem 0.75rem;    cursor: pointer;    font: inherit;    font-size: 0.72rem;    font-weight: 800;    letter-spacing: 0.05em;    line-height: 1;    text-transform: uppercase;    white-space: nowrap;}.admin-delivery-slot-close-button {    border: 1px solid rgba(163, 47, 33, 0.55);    background: transparent;    color: #a32f21;}    .admin-delivery-slot-close-button:hover:not(:disabled) {        border-color: #a32f21;        background: rgba(163, 47, 33, 0.08);    }.admin-delivery-slot-reopen-button {    border: 1px solid rgba(48, 120, 79, 0.5);    background: rgba(48, 120, 79, 0.08);    color: #30784f;}    .admin-delivery-slot-reopen-button:hover:not(:disabled) {        border-color: #30784f;        background: rgba(48, 120, 79, 0.15);    }    .admin-delivery-slot-close-button:disabled,    .admin-delivery-slot-reopen-button:disabled {        cursor: not-allowed;        opacity: 0.6;    }.admin-delivery-slot-action-error {    max-width: 180px;    color: #a32f21;    font-size: 0.72rem;    line-height: 1.4;}@media (max-width: 950px) {    .admin-delivery-slots-list-header,    .admin-delivery-slot-row {        min-width: 830px;    }}.admin-delivery-slot-inline-edit-panel {    margin: -0.15rem 0 0.85rem;    border: 1px solid rgba(184, 72, 28, 0.28);    border-top: 0;    border-radius: 0 0 8px 8px;    padding: 1.35rem;    background: linear-gradient( 145deg, rgba(184, 72, 28, 0.07), rgba(255, 253, 248, 0) 60% ), var(--kameni-warm-white);}.admin-delivery-slot-row:has(+ .admin-delivery-slot-inline-edit-panel) {    border-bottom-color: transparent;    border-radius: 8px 8px 0 0;    background: rgba(184, 72, 28, 0.045);}.admin-delivery-slot-edit-button {    border: 1px solid rgba(15, 13, 11, 0.28);    border-radius: 4px;    padding: 0.62rem 0.75rem;    background: transparent;    color: var(--kameni-black);    cursor: pointer;    font: inherit;    font-size: 0.72rem;    font-weight: 800;    letter-spacing: 0.05em;    line-height: 1;    text-transform: uppercase;    white-space: nowrap;}    .admin-delivery-slot-edit-button:hover:not(:disabled) {        border-color: var(--kameni-black);        background: rgba(15, 13, 11, 0.06);    }    .admin-delivery-slot-edit-button:disabled {        cursor: not-allowed;        opacity: 0.6;    }/* =========================================================   ADMIN BOOKINGS SUMMARY   ========================================================= */.admin-bookings-summary {    display: grid;    grid-template-columns: repeat(5, minmax(0, 1fr));    gap: 0.85rem;    margin-bottom: 1.5rem;}.admin-bookings-summary-card {    position: relative;    min-width: 0;    overflow: hidden;    border: 1px solid var(--kameni-border);    border-radius: 7px;    padding: 1rem;    background: var(--kameni-warm-white);}    .admin-bookings-summary-card::before {        position: absolute;        top: 0;        left: 0;        width: 100%;        height: 3px;        content: "";    }.admin-bookings-summary-label {    display: block;    color: var(--kameni-stone-grey);    font-size: 0.67rem;    font-weight: 800;    letter-spacing: 0.1em;    text-transform: uppercase;}.admin-bookings-summary-card strong {    display: block;    margin-top: 0.55rem;    color: var(--kameni-black);    font-family: var(--kameni-font-display);    font-size: clamp(1.75rem, 3vw, 2.35rem);    font-weight: 700;    line-height: 1;}.admin-bookings-summary-card small {    display: block;    min-height: 1.2rem;    margin-top: 0.55rem;    color: var(--kameni-stone-grey);    font-size: 0.72rem;    line-height: 1.35;}.admin-bookings-summary-pending::before {    background: #b87516;}.admin-bookings-summary-confirmed::before {    background: #3d6e9a;}.admin-bookings-summary-preparing::before {    background: var(--kameni-terracotta);}.admin-bookings-summary-delivering::before {    background: #7552a0;}.admin-bookings-summary-delivered::before {    background: #3d7e55;}@media (max-width: 991.98px) {    .admin-bookings-summary {        grid-template-columns: repeat(3, minmax(0, 1fr));    }}@media (max-width: 575.98px) {    .admin-bookings-summary {        grid-template-columns: repeat(2, minmax(0, 1fr));        gap: 0.65rem;    }    .admin-bookings-summary-card {        padding: 0.9rem;    }        .admin-bookings-summary-card:last-child {            grid-column: 1 / -1;        }}.admin-bookings-summary-card {    width: 100%;    appearance: none;    color: inherit;    cursor: pointer;    font: inherit;    text-align: left;    transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;}    .admin-bookings-summary-card:hover:not(:disabled) {        border-color: rgba(184, 72, 28, 0.48);        box-shadow: 0 9px 18px rgba(15, 13, 11, 0.08);        transform: translateY(-2px);    }    .admin-bookings-summary-card.is-active {        border-color: var(--kameni-terracotta);        background: linear-gradient( 145deg, rgba(184, 72, 28, 0.1), rgba(255, 253, 248, 0) 70% ), var(--kameni-warm-white);        box-shadow: 0 8px 18px rgba(184, 72, 28, 0.12);    }    .admin-bookings-summary-card:focus-visible {        outline: 3px solid rgba(184, 72, 28, 0.32);        outline-offset: 3px;    }    .admin-bookings-summary-card:disabled {        cursor: not-allowed;        opacity: 0.65;    }/* =========================================================   ADMIN BOOKING DETAILS DRAWER   ========================================================= */.admin-booking-details-header-actions {    display: flex;    flex: 0 0 auto;    flex-direction: column;    align-items: flex-end;    gap: 0.65rem;}.admin-booking-print-button {    border: 1px solid rgba(15, 13, 11, 0.3);    border-radius: 4px;    padding: 0.58rem 0.72rem;    background: transparent;    color: var(--kameni-black);    cursor: pointer;    font: inherit;    font-size: 0.7rem;    font-weight: 800;    letter-spacing: 0.06em;    line-height: 1;    text-transform: uppercase;    white-space: nowrap;}    .admin-booking-print-button:hover {        border-color: var(--kameni-black);        background: rgba(15, 13, 11, 0.06);    }@media (max-width: 575.98px) {    .admin-booking-details-header-actions {        align-items: flex-start;        flex-direction: row;        flex-wrap: wrap;    }}/* =========================================================   ADMIN BOOKING INTERNAL NOTE   ========================================================= */.admin-booking-internal-note-section {    border-top-color: rgba(184, 72, 28, 0.22);}.admin-booking-internal-note-helper {    display: block;    margin-top: 0.35rem;    color: var(--kameni-stone-grey);    font-size: 0.76rem;    line-height: 1.45;}.admin-booking-internal-note-edit-button {    flex: 0 0 auto;    border: 1px solid rgba(15, 13, 11, 0.28);    border-radius: 4px;    padding: 0.58rem 0.72rem;    background: transparent;    color: var(--kameni-black);    cursor: pointer;    font: inherit;    font-size: 0.7rem;    font-weight: 800;    letter-spacing: 0.06em;    line-height: 1;    text-transform: uppercase;    white-space: nowrap;}    .admin-booking-internal-note-edit-button:hover:not(:disabled) {        border-color: var(--kameni-black);        background: rgba(15, 13, 11, 0.06);    }    .admin-booking-internal-note-edit-button:disabled {        cursor: not-allowed;        opacity: 0.6;    }.admin-booking-internal-note-text {    margin: 0.9rem 0 0;    color: var(--kameni-black);    line-height: 1.7;    white-space: pre-wrap;}.admin-booking-internal-note-empty {    margin: 0.85rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.86rem;    font-style: italic;    line-height: 1.6;}.admin-booking-internal-note-meta {    margin: 0.7rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.74rem;    line-height: 1.5;}    .admin-booking-internal-note-meta span {        margin-left: 0.2rem;    }.admin-booking-internal-note-form {    display: grid;    gap: 0.75rem;    margin-top: 1rem;}    .admin-booking-internal-note-form label {        color: var(--kameni-black);        font-size: 0.8rem;        font-weight: 700;    }.admin-booking-internal-note-textarea {    min-height: 125px;    resize: vertical;}.admin-booking-internal-note-character-count {    justify-self: end;    color: var(--kameni-stone-grey);    font-size: 0.72rem;}.admin-booking-internal-note-error {    border-left: 3px solid #a32f21;    padding: 0.7rem 0.85rem;    background: rgba(163, 47, 33, 0.08);    color: #842519;    font-size: 0.82rem;    line-height: 1.5;}.admin-booking-internal-note-form-actions {    display: flex;    justify-content: flex-end;    gap: 0.7rem;}@media (max-width: 575.98px) {    .admin-booking-internal-note-form-actions {        flex-direction: column-reverse;    }        .admin-booking-internal-note-form-actions .kameni-btn-outline,        .admin-booking-internal-note-form-actions .kameni-btn-primary {            width: 100%;        }}/* =========================================================   ADMIN BOOKING ALERTS   ========================================================= */.admin-bookings-new-order-alert {    display: flex;    align-items: center;    justify-content: space-between;    gap: 1.25rem;    margin: 0 0 1.5rem;    border: 1px solid rgba(184, 72, 28, 0.42);    border-left: 5px solid var(--kameni-orange);    border-radius: 8px;    padding: 1rem 1.1rem;    background: rgba(184, 72, 28, 0.08);}    .admin-bookings-new-order-alert .kameni-eyebrow {        margin-bottom: 0.3rem;    }    .admin-bookings-new-order-alert strong {        color: var(--kameni-black);        font-size: 0.95rem;    }.admin-bookings-new-order-alert-actions {    display: flex;    flex: 0 0 auto;    gap: 0.65rem;}.admin-bookings-sound-button {    white-space: nowrap;}    .admin-bookings-sound-button.is-enabled {        border-color: var(--kameni-orange);        background: rgba(184, 72, 28, 0.1);        color: var(--kameni-black);    }.admin-booking-row-new-pending {    box-shadow: inset 4px 0 0 var(--kameni-orange);    background: rgba(184, 72, 28, 0.07);    animation: admin-booking-new-pending-pulse 1.6s ease-in-out 3;}@keyframes admin-booking-new-pending-pulse {    0%, 100% {        background: rgba(184, 72, 28, 0.07);    }    50% {        background: rgba(184, 72, 28, 0.15);    }}@media (prefers-reduced-motion: reduce) {    .admin-booking-row-new-pending {        animation: none;    }}@media (max-width: 575.98px) {    .admin-bookings-new-order-alert {        align-items: stretch;        flex-direction: column;    }    .admin-bookings-new-order-alert-actions {        width: 100%;    }        .admin-bookings-new-order-alert-actions .kameni-btn-primary,        .admin-bookings-new-order-alert-actions .kameni-btn-outline {            flex: 1 1 0;        }}/* =========================================================   ADMIN BOOKING FULFILLMENT   ========================================================= */.admin-booking-fulfillment-section {    border-top-color: rgba(184, 72, 28, 0.24);}.admin-booking-fulfillment-type {    display: block;    margin-top: 0.28rem;    color: var(--kameni-black);    font-size: 1rem;}.admin-booking-fulfillment-badge {    display: inline-flex;    align-items: center;    justify-content: center;    border: 1px solid rgba(15, 13, 11, 0.24);    border-radius: 999px;    padding: 0.34rem 0.55rem;    color: var(--kameni-black);    font-size: 0.68rem;    font-weight: 800;    letter-spacing: 0.07em;    line-height: 1;    text-transform: uppercase;    white-space: nowrap;}.admin-booking-fulfillment-delivery {    border-color: rgba(184, 72, 28, 0.45);    background: rgba(184, 72, 28, 0.09);}.admin-booking-fulfillment-pickup {    border-color: rgba(15, 13, 11, 0.2);    background: rgba(15, 13, 11, 0.05);}.admin-booking-delivery-address {    display: grid;    gap: 0.35rem;    margin-top: 1rem;    color: var(--kameni-black);    line-height: 1.5;}    .admin-booking-delivery-address strong {        font-size: 1rem;    }    .admin-booking-delivery-address span {        color: var(--kameni-stone-grey);        font-size: 0.9rem;    }.admin-booking-pickup-location,.admin-booking-fulfillment-empty {    margin: 1rem 0 0;    color: var(--kameni-stone-grey);    line-height: 1.6;}    .admin-booking-pickup-location strong {        color: var(--kameni-black);    }.admin-booking-price-breakdown {    display: grid;    gap: 0.8rem;}    .admin-booking-price-breakdown > div {        display: flex;        justify-content: space-between;        gap: 1rem;        color: var(--kameni-stone-grey);        font-size: 0.9rem;    }        .admin-booking-price-breakdown > div > strong {            color: var(--kameni-black);            font-weight: 700;        }    .admin-booking-price-breakdown .admin-booking-total-row {        margin-top: 0.25rem;        border-top: 1px solid rgba(15, 13, 11, 0.16);        padding-top: 1rem;        color: var(--kameni-black);        font-size: 1rem;    }        .admin-booking-price-breakdown .admin-booking-total-row strong {            font-size: 1.12rem;            font-weight: 800;        }/* =========================================================   ADMIN BOOKING LIST FULFILLMENT BADGES   ========================================================= */.admin-booking-list-fulfillment-badge {    display: inline-flex;    align-items: center;    justify-content: center;    border: 1px solid rgba(15, 13, 11, 0.22);    border-radius: 999px;    padding: 0.3rem 0.46rem;    color: var(--kameni-black);    font-size: 0.62rem;    font-weight: 800;    letter-spacing: 0.06em;    line-height: 1;    text-transform: uppercase;    white-space: nowrap;}.admin-booking-list-fulfillment-delivery {    border-color: rgba(184, 72, 28, 0.45);    background: rgba(184, 72, 28, 0.09);}.admin-booking-list-fulfillment-pickup {    border-color: rgba(15, 13, 11, 0.2);    background: rgba(15, 13, 11, 0.05);}.admin-daily-summary-panel {    position: relative;    width: min(100%, 560px);    height: 100%;    margin-left: auto;    overflow-y: auto;    padding: 2rem;    background: var(--kameni-warm-white);    box-shadow: -18px 0 42px rgba(15, 13, 11, 0.16);}.admin-daily-summary-header {    border-bottom: 1px solid var(--kameni-border);    padding: 0 3.5rem 1.5rem 0;}    .admin-daily-summary-header h2 {        margin: 0.65rem 0 0;        color: var(--kameni-black);        font-family: var(--kameni-font-display);        font-size: 2rem;        line-height: 1.2;    }    .admin-daily-summary-header > p:last-child {        margin: 0.65rem 0 0;        color: var(--kameni-stone-grey);        font-size: 0.9rem;    }.admin-daily-summary-metrics {    display: grid;    grid-template-columns: repeat(2, minmax(0, 1fr));    gap: 0.8rem;    margin-top: 1.5rem;}    .admin-daily-summary-metrics article {        display: grid;        gap: 0.35rem;        min-height: 104px;        border: 1px solid var(--kameni-border);        border-radius: 6px;        padding: 1rem;        background: var(--kameni-offwhite);    }        .admin-daily-summary-metrics article span,        .admin-daily-summary-rows span {            color: var(--kameni-stone-grey);            font-size: 0.76rem;            font-weight: 700;            letter-spacing: 0.06em;            text-transform: uppercase;        }        .admin-daily-summary-metrics article strong {            color: var(--kameni-black);            font-family: var(--kameni-font-display);            font-size: 1.8rem;        }.admin-daily-summary-cancelled {    border-color: rgba(184, 72, 28, 0.28) !important;    background: rgba(184, 72, 28, 0.06) !important;}.admin-daily-summary-section {    margin-top: 2rem;    border-top: 1px solid var(--kameni-border);    padding-top: 1.5rem;}.admin-daily-summary-total-row {    margin-top: 0.2rem;    border-top: 1px solid var(--kameni-border);    padding-top: 0.9rem;}    .admin-daily-summary-total-row span,    .admin-daily-summary-total-row strong {        color: var(--kameni-black);        font-weight: 800;    }.admin-daily-summary-cancelled-row span,.admin-daily-summary-cancelled-row strong {    color: var(--kameni-terracotta);}.admin-daily-summary-rows {    display: grid;    gap: 0.85rem;    margin-top: 0.9rem;}    .admin-daily-summary-rows > div {        display: flex;        align-items: center;        justify-content: space-between;        gap: 1rem;    }    .admin-daily-summary-rows strong {        color: var(--kameni-black);        font-size: 1rem;    }.admin-daily-summary-helper {    margin: 1rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.8rem;    line-height: 1.55;}.admin-daily-summary-total-row {    margin-top: 0.2rem;    border-top: 1px solid var(--kameni-border);    padding-top: 0.9rem;}    .admin-daily-summary-total-row span,    .admin-daily-summary-total-row strong {        color: var(--kameni-black);        font-weight: 800;    }.admin-daily-summary-cancelled-row {    color: var(--kameni-terracotta);}    .admin-daily-summary-cancelled-row span,    .admin-daily-summary-cancelled-row strong {        color: var(--kameni-terracotta);    }@media (max-width: 575.98px) {    .admin-daily-summary-panel {        width: 100%;        padding: 1.4rem 1.15rem;    }    .admin-daily-summary-metrics {        grid-template-columns: repeat(2, minmax(0, 1fr));        gap: 0.65rem;    }        .admin-daily-summary-metrics article {            min-height: 82px;            padding: 0.8rem;        }            .admin-daily-summary-metrics article strong {                font-size: 1.45rem;            }            .admin-daily-summary-metrics article span {                font-size: 0.68rem;                line-height: 1.25;            }}/* =========================================================   ADMIN BOOKINGS SUMMARY   ========================================================= */.admin-access-denied-page {    display: flex;    align-items: center;    min-height: calc(100vh - 160px);}.admin-access-denied-card {    width: min(100%, 640px);    margin: 0 auto;    padding: clamp(1.5rem, 4vw, 3rem);    border: 1px solid var(--kameni-border);    border-radius: 1.25rem;    background: var(--kameni-white);    box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.08);}    .admin-access-denied-card h1 {        margin: 0.65rem 0 0.9rem;        color: var(--kameni-black);    }    .admin-access-denied-card p:not(.kameni-eyebrow) {        max-width: 48ch;        margin: 0;        color: var(--kameni-muted);        line-height: 1.65;    }.admin-access-denied-actions {    display: flex;    flex-wrap: wrap;    gap: 0.75rem;    margin-top: 1.75rem;}@media (max-width: 575.98px) {    .admin-access-denied-page {        min-height: auto;        padding-top: 2rem;    }    .admin-access-denied-card {        padding: 1.4rem;    }    .admin-access-denied-actions {        display: grid;        grid-template-columns: 1fr;    }        .admin-access-denied-actions .kameni-btn-primary,        .admin-access-denied-actions .kameni-btn-outline {            width: 100%;            text-align: center;        }}/* ---------------------------------------------------------   Driver deliveries--------------------------------------------------------- */.driver-deliveries-page {    padding: 2rem 0 4rem;}.driver-deliveries-action-message {    margin: 1.25rem 0;    padding: 1rem 1.15rem;    border: 1px solid rgba(114, 134, 89, 0.28);    border-radius: 0.9rem;    background: rgba(114, 134, 89, 0.1);    color: #3f5131;    font-weight: 600;}.driver-delivery-board-section {    margin-top: 2.25rem;}    .driver-delivery-board-section + .driver-delivery-board-section {        padding-top: 2.25rem;        border-top: 1px solid rgba(41, 36, 31, 0.1);    }.driver-delivery-board-section-header {    display: flex;    align-items: end;    justify-content: space-between;    gap: 1rem;    margin-bottom: 1.2rem;}    .driver-delivery-board-section-header h2 {        margin: 0.2rem 0 0;        color: #211f1c;        font-size: clamp(1.8rem, 2.4vw, 2.45rem);        line-height: 1.05;        letter-spacing: -0.035em;    }    .driver-delivery-board-section-header > span {        display: inline-flex;        align-items: center;        justify-content: center;        min-width: 2.2rem;        height: 2.2rem;        padding: 0 0.7rem;        border-radius: 999px;        background: #eee8dc;        color: #8f512f;        font-size: 0.9rem;        font-weight: 800;    }.driver-delivery-empty-section {    margin: 0;    padding: 1.15rem 1.25rem;    border: 1px dashed rgba(41, 36, 31, 0.18);    border-radius: 1rem;    background: rgba(255, 255, 255, 0.35);    color: #6a625a;}.driver-delivery-card-grid {    display: grid;    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));    gap: 1.15rem;}.driver-delivery-card {    display: flex;    flex-direction: column;    min-height: 100%;    overflow: hidden;    border: 1px solid rgba(41, 36, 31, 0.12);    border-radius: 1.15rem;    background: #fffdfa;    box-shadow: 0 0.6rem 1.8rem rgba(52, 41, 31, 0.07);    transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;}    .driver-delivery-card:hover {        transform: translateY(-2px);        border-color: rgba(143, 81, 47, 0.34);        box-shadow: 0 0.9rem 2.4rem rgba(52, 41, 31, 0.11);    }.driver-delivery-card-header {    display: flex;    align-items: flex-start;    justify-content: space-between;    gap: 1rem;    padding: 1.25rem 1.25rem 1rem;    border-bottom: 1px solid rgba(41, 36, 31, 0.08);}    .driver-delivery-card-header h3 {        margin: 0.25rem 0 0;        color: #211f1c;        font-size: 1.45rem;        line-height: 1.15;        letter-spacing: -0.025em;    }    .driver-delivery-card-header .admin-booking-status {        flex-shrink: 0;        margin-top: 0.1rem;    }.driver-delivery-card-details {    display: grid;    gap: 0.8rem;    padding: 1.15rem 1.25rem 1.25rem;}    .driver-delivery-card-details > div {        display: grid;        grid-template-columns: minmax(6.8rem, 0.8fr) minmax(0, 1.7fr);        gap: 0.8rem;        align-items: start;    }    .driver-delivery-card-details span {        color: #776f67;        font-size: 0.8rem;        font-weight: 700;        letter-spacing: 0.02em;        text-transform: uppercase;    }    .driver-delivery-card-details strong {        color: #29241f;        font-size: 0.96rem;        font-weight: 700;        line-height: 1.45;        overflow-wrap: anywhere;    }    .driver-delivery-card-details a {        color: #8f512f;        text-decoration: none;    }        .driver-delivery-card-details a:hover {            text-decoration: underline;        }.driver-delivery-card-primary-actions {    display: flex;    flex-wrap: wrap;    gap: 0.75rem;}    .driver-delivery-card-primary-actions > button {        width: 100%;    }.driver-delivery-card-actions {    display: flex;    flex-direction: column;    align-items: stretch;    gap: 0;}    .driver-delivery-card-actions .kameni-btn-primary,    .driver-delivery-card-actions .kameni-btn-outline {        min-height: 2.8rem;        flex: 1 1 11rem;    }    .driver-delivery-card-actions button:disabled {        cursor: not-allowed;        opacity: 0.56;    }.driver-deliveries-page .admin-bookings-filters {    margin-top: 1.5rem;}    .driver-deliveries-page .admin-bookings-filters .kameni-btn-primary {        align-self: end;        min-height: 3.45rem;    }@media (max-width: 760px) {    .driver-deliveries-page {        padding-top: 1.25rem;    }    .driver-delivery-board-section {        margin-top: 1.75rem;    }        .driver-delivery-board-section + .driver-delivery-board-section {            padding-top: 1.75rem;        }    .driver-delivery-board-section-header {        align-items: center;    }        .driver-delivery-board-section-header h2 {            font-size: 1.9rem;        }    .driver-delivery-card-grid {        grid-template-columns: 1fr;    }    .driver-delivery-card-header {        padding: 1.1rem;    }    .driver-delivery-card-details {        padding: 1rem 1.1rem 1.15rem;    }        .driver-delivery-card-details > div {            grid-template-columns: 1fr;            gap: 0.22rem;        }    .driver-delivery-card-actions {        padding: 1rem 1.1rem 1.1rem;    }        .driver-delivery-card-actions .kameni-btn-primary,        .driver-delivery-card-actions .kameni-btn-outline {            flex-basis: 100%;        }}/* ---------------------------------------------------------   Admin delivery management--------------------------------------------------------- */.admin-deliveries-page {    padding: 2rem 0 4rem;}.tenant-delivery-board-section {    margin-top: 2.25rem;}    .tenant-delivery-board-section + .tenant-delivery-board-section {        padding-top: 2.25rem;        border-top: 1px solid rgba(41, 36, 31, 0.1);    }.tenant-delivery-board-section-header {    display: flex;    align-items: end;    justify-content: space-between;    gap: 1rem;    margin-bottom: 1.2rem;}    .tenant-delivery-board-section-header h2 {        margin: 0.2rem 0 0;        color: #211f1c;        font-size: clamp(1.8rem, 2.4vw, 2.45rem);        line-height: 1.05;        letter-spacing: -0.035em;    }    .tenant-delivery-board-section-header > span {        display: inline-flex;        align-items: center;        justify-content: center;        min-width: 2.2rem;        height: 2.2rem;        padding: 0 0.7rem;        border-radius: 999px;        background: #eee8dc;        color: #8f512f;        font-size: 0.9rem;        font-weight: 800;    }.tenant-delivery-empty-section {    margin: 0;    padding: 1.15rem 1.25rem;    border: 1px dashed rgba(41, 36, 31, 0.18);    border-radius: 1rem;    background: rgba(255, 255, 255, 0.35);    color: #6a625a;}.tenant-delivery-card-grid {    display: grid;    grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));    gap: 1.15rem;}.tenant-delivery-card {    display: flex;    flex-direction: column;    min-height: 100%;    overflow: hidden;    border: 1px solid rgba(41, 36, 31, 0.12);    border-radius: 1.15rem;    background: #fffdfa;    box-shadow: 0 0.6rem 1.8rem rgba(52, 41, 31, 0.07);    transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;}    .tenant-delivery-card:hover {        transform: translateY(-2px);        border-color: rgba(143, 81, 47, 0.35);        box-shadow: 0 0.95rem 2.45rem rgba(52, 41, 31, 0.11);    }.tenant-delivery-card-header {    display: flex;    align-items: flex-start;    justify-content: space-between;    gap: 1rem;    padding: 1.3rem 1.3rem 1rem;    border-bottom: 1px solid rgba(41, 36, 31, 0.08);}    .tenant-delivery-card-header h3 {        margin: 0.25rem 0 0;        color: #211f1c;        font-size: 1.5rem;        line-height: 1.15;        letter-spacing: -0.025em;    }    .tenant-delivery-card-header .admin-booking-status {        flex-shrink: 0;        margin-top: 0.1rem;    }.tenant-delivery-card-details {    display: grid;    gap: 0.82rem;    padding: 1.15rem 1.3rem 1.25rem;}    .tenant-delivery-card-details > div {        display: grid;        grid-template-columns: minmax(7.4rem, 0.85fr) minmax(0, 1.8fr);        gap: 0.85rem;        align-items: start;    }    .tenant-delivery-card-details span {        color: #776f67;        font-size: 0.78rem;        font-weight: 750;        letter-spacing: 0.03em;        text-transform: uppercase;    }    .tenant-delivery-card-details strong {        color: #29241f;        font-size: 0.97rem;        font-weight: 700;        line-height: 1.45;        overflow-wrap: anywhere;    }.tenant-delivery-card-actions {    display: grid;    gap: 0.95rem;    margin-top: auto;    padding: 1.05rem 1.3rem 1.3rem;    border-top: 1px solid rgba(41, 36, 31, 0.08);    background: #fcfaf5;}.tenant-delivery-assignment-form {    display: grid;    gap: 0.55rem;}    .tenant-delivery-assignment-form > label {        color: #5d554d;        font-size: 0.78rem;        font-weight: 800;        letter-spacing: 0.04em;        text-transform: uppercase;    }.tenant-delivery-assignment-controls {    display: grid;    grid-template-columns: minmax(0, 1fr) auto;    gap: 0.7rem;    align-items: center;}    .tenant-delivery-assignment-controls .kameni-control {        min-width: 0;        min-height: 2.9rem;        background-color: #fffdfa;    }    .tenant-delivery-assignment-controls .kameni-btn-primary {        min-height: 2.9rem;        white-space: nowrap;    }.tenant-delivery-card-actions > .kameni-btn-outline {    justify-self: start;    min-height: 2.75rem;    padding-inline: 1.1rem;    border-color: rgba(41, 36, 31, 0.45);}.tenant-delivery-card-actions button:disabled {    cursor: not-allowed;    opacity: 0.56;}.tenant-delivery-locked-message {    margin: 0;    padding: 0.85rem 0.95rem;    border: 1px solid rgba(143, 81, 47, 0.18);    border-radius: 0.75rem;    background: rgba(143, 81, 47, 0.08);    color: #704224;    font-size: 0.9rem;    font-weight: 650;    line-height: 1.45;}@media (max-width: 760px) {    .admin-deliveries-page {        padding-top: 1.25rem;    }    .tenant-delivery-board-section {        margin-top: 1.75rem;    }        .tenant-delivery-board-section + .tenant-delivery-board-section {            padding-top: 1.75rem;        }    .tenant-delivery-board-section-header {        align-items: center;    }        .tenant-delivery-board-section-header h2 {            font-size: 1.9rem;        }    .tenant-delivery-card-grid {        grid-template-columns: 1fr;    }    .tenant-delivery-card-header {        padding: 1.1rem;    }    .tenant-delivery-card-details {        padding: 1rem 1.1rem 1.15rem;    }        .tenant-delivery-card-details > div {            grid-template-columns: 1fr;            gap: 0.22rem;        }    .tenant-delivery-card-actions {        padding: 1rem 1.1rem 1.1rem;    }    .tenant-delivery-assignment-controls {        grid-template-columns: 1fr;    }        .tenant-delivery-assignment-controls .kameni-btn-primary {            width: 100%;        }    .tenant-delivery-card-actions > .kameni-btn-outline {        width: 100%;        justify-self: stretch;    }}/* Newly detected driver delivery */.driver-delivery-card-new {    border-color: rgba(143, 81, 47, 0.72);    box-shadow: 0 0 0 0.22rem rgba(143, 81, 47, 0.16), 0 0.95rem 2.45rem rgba(52, 41, 31, 0.12);    animation: driver-delivery-new-pulse 1.7s ease-in-out infinite;}@keyframes driver-delivery-new-pulse {    0%, 100% {        box-shadow: 0 0 0 0.18rem rgba(143, 81, 47, 0.13), 0 0.8rem 2rem rgba(52, 41, 31, 0.1);    }    50% {        box-shadow: 0 0 0 0.42rem rgba(143, 81, 47, 0.05), 0 1rem 2.5rem rgba(52, 41, 31, 0.14);    }}@media (prefers-reduced-motion: reduce) {    .driver-delivery-card-new {        animation: none;    }}/* Newly detected kitchen booking */.kitchen-booking-row-new {    border-color: rgba(143, 81, 47, 0.72);    background: linear-gradient( 90deg, rgba(143, 81, 47, 0.13), rgba(255, 253, 250, 0.98) 42% );    box-shadow: 0 0 0 0.18rem rgba(143, 81, 47, 0.13), 0 0.65rem 1.6rem rgba(52, 41, 31, 0.08);    animation: kitchen-booking-new-pulse 1.7s ease-in-out infinite;}@keyframes kitchen-booking-new-pulse {    0%, 100% {        box-shadow: 0 0 0 0.14rem rgba(143, 81, 47, 0.12), 0 0.55rem 1.4rem rgba(52, 41, 31, 0.07);    }    50% {        box-shadow: 0 0 0 0.35rem rgba(143, 81, 47, 0.04), 0 0.8rem 1.9rem rgba(52, 41, 31, 0.11);    }}@media (prefers-reduced-motion: reduce) {    .kitchen-booking-row-new {        animation: none;    }}.staff-landing-card-manager {    background: linear-gradient( 145deg, #fffdfa 0%, #f2ebe2 100% );}.staff-landing-card-actions {    display: flex;    flex-wrap: wrap;    gap: 0.7rem;    margin-top: auto;}    .staff-landing-card-actions .kameni-btn-primary,    .staff-landing-card-actions .kameni-btn-outline {        flex: 1 1 10rem;        text-align: center;    }@media (max-width: 760px) {    .staff-landing-card-actions {        flex-direction: column;    }        .staff-landing-card-actions .kameni-btn-primary,        .staff-landing-card-actions .kameni-btn-outline {            width: 100%;        }}/* =========================================================   Staff landing pages========================================================= */.staff-landing {    min-height: calc(100vh - 7rem);    padding: 2.75rem 0 4.5rem;}.staff-landing-header {    max-width: 52rem;    margin-bottom: 2.8rem;}    .staff-landing-header .kameni-display-title {        max-width: 100%;        margin: 0.4rem 0 0.7rem;        font-size: clamp(2.1rem, 3.7vw, 3.5rem);        line-height: 1;        letter-spacing: -0.045em;    }    .staff-landing-header > p:last-child {        max-width: 42rem;        margin: 0;        color: #6d655e;        font-size: 1.08rem;        line-height: 1.6;    }.staff-landing-section {    margin-top: 2.5rem;}    .staff-landing-section + .staff-landing-section {        margin-top: 3.25rem;        padding-top: 3.25rem;        border-top: 1px solid rgba(41, 36, 31, 0.12);    }.staff-landing-section-header {    display: flex;    align-items: end;    justify-content: space-between;    gap: 2rem;    margin-bottom: 1.35rem;}    .staff-landing-section-header h2 {        margin: 0.2rem 0 0;        color: #211f1c;        font-size: clamp(1.8rem, 2.5vw, 2.55rem);        line-height: 1.08;        letter-spacing: -0.035em;    }    .staff-landing-section-header > p {        max-width: 23rem;        margin: 0;        color: #716961;        line-height: 1.55;    }.staff-landing-grid {    display: grid;    grid-template-columns: repeat(auto-fit, minmax(19rem, 1fr));    gap: 1.25rem;}.staff-landing .staff-landing-card {    display: flex;    flex-direction: column;    min-height: 0rem;    padding: 1.55rem;    overflow: hidden;    border: 1px solid rgba(41, 36, 31, 0.14);    border-radius: 1.25rem;    background: #fffdfa;    box-shadow: 0 0.75rem 2.25rem rgba(52, 41, 31, 0.08);    transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;}    .staff-landing .staff-landing-card:hover {        transform: translateY(-3px);        border-color: rgba(143, 81, 47, 0.48);        box-shadow: 0 1.1rem 2.7rem rgba(52, 41, 31, 0.13);    }.staff-landing-card-driver {    background: linear-gradient( 145deg, #fffdfa 0%, #f4ece2 100% ) !important;}.staff-landing-card-kitchen {    background: linear-gradient( 145deg, #fffdfa 0%, #f2f0e8 100% ) !important;}.staff-landing-card-manager {    background: linear-gradient( 145deg, #fffdfa 0%, #f1e8de 100% ) !important;}.staff-landing-card h3 {    margin: 0.1rem 0 0;    color: #211f1c;    font-size: 1.7rem;    line-height: 1.12;    letter-spacing: -0.03em;}.staff-landing-card > p:not(.kameni-eyebrow) {    margin: 1rem 0 1.25rem;    color: #6b635c;    line-height: 1.6;}.staff-landing-location-name {    display: block;    margin-top: 0.5rem;    color: #985934;    font-size: 1rem;}.staff-landing-locations {    display: flex;    flex-wrap: wrap;    gap: 0.45rem;    margin: 0 0 1.5rem;}    .staff-landing-locations span {        padding: 0.38rem 0.68rem;        border: 1px solid rgba(41, 36, 31, 0.12);        border-radius: 999px;        background: rgba(255, 253, 250, 0.65);        color: #675f57;        font-size: 0.78rem;        font-weight: 750;    }.staff-landing-card > .kameni-btn-primary {    width: fit-content;    margin-top: 1.4rem;}.staff-landing-card-actions {    display: flex;    flex-wrap: wrap;    gap: 0.7rem;    margin-top: 1.4rem;}    .staff-landing-card-actions .kameni-btn-primary,    .staff-landing-card-actions .kameni-btn-outline {        flex: 1 1 10rem;        justify-content: center;        text-align: center;    }.staff-landing-loading {    min-height: calc(100vh - 7rem);    padding: 4rem 0;}    .staff-landing-loading .kameni-display-title {        max-width: 42rem;        margin-top: 0.55rem;        font-size: clamp(2.4rem, 5vw, 4.4rem);        line-height: 1;    }@media (max-width: 760px) {    .staff-landing {        min-height: auto;        padding: 2rem 0 3rem;    }    .staff-landing-header {        margin-bottom: 2.2rem;    }        .staff-landing-header .kameni-display-title {            font-size: clamp(2rem, 9vw, 2.9rem);            line-height: 1.04;        }    .staff-landing-section + .staff-landing-section {        margin-top: 2.5rem;        padding-top: 2.5rem;    }    .staff-landing-section-header {        display: block;    }        .staff-landing-section-header > p {            margin-top: 0.8rem;        }    .staff-landing-grid {        grid-template-columns: 1fr;    }    .staff-landing .staff-landing-card {        min-height: 0;        padding: 1.3rem;    }    .staff-landing-card-actions {        flex-direction: column;    }        .staff-landing-card-actions .kameni-btn-primary,        .staff-landing-card-actions .kameni-btn-outline {            width: 100%;        }}/* =========================================================   Delivery history drawer========================================================= */.delivery-history-backdrop {    position: fixed;    inset: 0;    z-index: 1100;    background: rgba(29, 25, 21, 0.42);}.delivery-history-drawer {    position: fixed;    top: 0;    right: 0;    z-index: 1101;    display: flex;    flex-direction: column;    width: min(33rem, 100%);    height: 100dvh;    overflow: hidden;    border-left: 1px solid rgba(41, 36, 31, 0.14);    background: #fffdfa;    box-shadow: -1rem 0 3.5rem rgba(34, 28, 22, 0.2);}.delivery-history-drawer-header {    display: flex;    align-items: flex-start;    justify-content: space-between;    gap: 1.25rem;    padding: 1.6rem 1.6rem 1.35rem;    border-bottom: 1px solid rgba(41, 36, 31, 0.12);}    .delivery-history-drawer-header h2 {        margin: 0.3rem 0 0;        color: #211f1c;        font-size: 1.8rem;        line-height: 1.1;        letter-spacing: -0.035em;    }.delivery-history-drawer-subtitle {    margin: 0.65rem 0 0;    color: #716961;    font-size: 0.95rem;    line-height: 1.45;}.delivery-history-close-button {    display: inline-flex;    align-items: center;    justify-content: center;    width: 3rem;    height: 3rem;    padding: 0;    border: none;    border-radius: 0.75rem;    background: #2b241f; /* black coffee */    color: #ffffff;    font-size: 1.75rem;    line-height: 1;    font-weight: 500;    cursor: pointer;    transition: background-color 0.2s ease, transform 0.2s ease;    flex-shrink: 0;}    .delivery-history-close-button:hover {        background: #1f1a16;        transform: translateY(-1px);    }    .delivery-history-close-button:active {        transform: translateY(0);    }    .delivery-history-close-button:focus-visible {        outline: 2px solid #a35f38;        outline-offset: 3px;    }.delivery-history-drawer-content {    flex: 1;    overflow-y: auto;    padding: 1.55rem 1.6rem 2rem;}.delivery-history-state {    padding: 1.25rem;    border: 1px solid rgba(41, 36, 31, 0.12);    border-radius: 1rem;    background: #f8f4ed;}    .delivery-history-state p:last-child {        margin: 0.55rem 0 0;        color: #6b635c;        line-height: 1.55;    }.delivery-history-state-error {    border-color: rgba(158, 62, 50, 0.25);    background: rgba(158, 62, 50, 0.06);}.delivery-history-timeline {    position: relative;    display: grid;    gap: 0;    margin: 0;    padding: 0;    list-style: none;}.delivery-history-event {    position: relative;    display: grid;    grid-template-columns: 1.2rem minmax(0, 1fr);    gap: 0.9rem;    padding: 0 0 1.55rem;}    .delivery-history-event:not(:last-child)::before {        position: absolute;        top: 1.1rem;        bottom: 0;        left: 0.52rem;        width: 1px;        background: rgba(41, 36, 31, 0.15);        content: "";    }.delivery-history-event-marker {    position: relative;    z-index: 1;    display: block;    width: 0.72rem;    height: 0.72rem;    margin-top: 0.35rem;    border: 2px solid #fffdfa;    border-radius: 999px;    background: #985934;    box-shadow: 0 0 0 1px rgba(143, 81, 47, 0.34);}.delivery-history-event-content {    min-width: 0;    padding-bottom: 0.2rem;}.delivery-history-event-heading {    display: flex;    align-items: baseline;    justify-content: space-between;    gap: 0.85rem;}    .delivery-history-event-heading strong {        color: #28231f;        font-size: 1rem;    }    .delivery-history-event-heading time {        flex: 0 0 auto;        color: #80776f;        font-size: 0.78rem;        white-space: nowrap;    }.delivery-history-event-details {    display: grid;    gap: 0.3rem;    margin-top: 0.55rem;}    .delivery-history-event-details p {        margin: 0;        color: #625a53;        font-size: 0.9rem;        line-height: 1.45;    }        .delivery-history-event-details p span {            display: inline-block;            min-width: 5.6rem;            color: #8a8178;            font-size: 0.78rem;            font-weight: 750;            text-transform: uppercase;            letter-spacing: 0.04em;        }@media (max-width: 560px) {    .delivery-history-drawer {        width: 100%;    }    .delivery-history-drawer-header,    .delivery-history-drawer-content {        padding-right: 1.15rem;        padding-left: 1.15rem;    }    .delivery-history-event-heading {        display: block;    }        .delivery-history-event-heading time {            display: block;            margin-top: 0.2rem;        }    .delivery-history-event-details p span {        min-width: 4.9rem;    }}.tenant-delivery-card-history-button {    display: inline-flex;    align-items: center;    justify-content: center;    width: fit-content;    margin-top: 0.85rem;    padding: 0.3rem 0;    border: 0;    background: transparent;    color: #985934;    font: inherit;    font-size: 0.88rem;    font-weight: 750;    text-decoration: underline;    text-underline-offset: 0.2rem;    cursor: pointer;}    .tenant-delivery-card-history-button:hover:not(:disabled) {        color: #6f3e22;    }    .tenant-delivery-card-history-button:disabled {        opacity: 0.55;        cursor: not-allowed;    }.driver-delivery-card-history-button {    align-self: flex-start;    width: fit-content;    margin-top: 0.85rem;    margin-left:0.65rem;    padding: 0.4rem 0;    border: 0;    background: transparent;    color: #985934;    font: inherit;    font-size: 0.88rem;    font-weight: 750;    text-decoration: underline;    text-decoration-thickness: 1px;    text-underline-offset: 0.22rem;    cursor: pointer;}    .driver-delivery-card-history-button:hover:not(:disabled) {        color: #6f3e22;    }    .driver-delivery-card-history-button:disabled {        opacity: 0.55;        cursor: not-allowed;    }/* =========================================================   ABOUT SIDRO   ========================================================= */.about-page {    background: var(--kameni-warm-white);}.about-hero {    position: relative;    display: flex;    min-height: 430px;    align-items: end;    overflow: hidden;    background: linear-gradient( 90deg, rgba(12, 10, 8, 0.94) 0%, rgba(12, 10, 8, 0.78) 42%, rgba(12, 10, 8, 0.24) 100% ), radial-gradient( circle at 75% 38%, rgba(214, 99, 58, 0.8), transparent 18% ), linear-gradient( 120deg, #120d0a 0%, #21140e 48%, #5d2e1b 100% );}    .about-hero::before {        position: absolute;        right: -7rem;        bottom: -8rem;        width: 34rem;        height: 34rem;        border: 1px solid rgba(248, 243, 235, 0.14);        border-radius: 50%;        content: "";    }    .about-hero::after {        position: absolute;        top: -7rem;        right: 14%;        width: 19rem;        height: 19rem;        border: 1px solid rgba(248, 243, 235, 0.08);        border-radius: 50%;        content: "";    }.about-hero-overlay {    position: absolute;    inset: 0;    background: linear-gradient( 90deg, rgba(15, 13, 11, 0.45), transparent 70% );}.about-hero-content {    position: relative;    z-index: 1;    max-width: 880px;    padding-top: 7rem;    padding-bottom: 5rem;}.about-hero-eyebrow {    color: var(--kameni-terracotta-light);}.about-hero-title {    max-width: 800px;    margin: 1rem 0 0;    color: #ffffff;    font-family: var(--kameni-font-display);    font-size: clamp(2.6rem, 5.8vw, 5.3rem);    line-height: 1.08;}.about-hero-description {    max-width: 620px;    margin: 1.5rem 0 0;    color: rgba(248, 243, 235, 0.76);    font-size: 1.04rem;    line-height: 1.8;}.about-roadmap-section {    padding: clamp(4rem, 8vw, 7rem) 0;    background: var(--kameni-warm-white);}.about-roadmap {    position: relative;    display: grid;    gap: 2.25rem;}.about-roadmap-line {    position: absolute;    top: 2.75rem;    bottom: 12rem;    left: 2.25rem;    width: 1px;    background: linear-gradient( var(--kameni-terracotta), rgba(184, 72, 28, 0.18) );}.about-roadmap-item {    position: relative;    display: grid;    grid-template-columns: 4.5rem 9rem minmax(0, 1fr);    gap: 1.5rem;    align-items: start;}.about-roadmap-marker {    position: relative;    z-index: 1;    display: grid;    width: 4.5rem;    height: 4.5rem;    place-items: center;    border-radius: 50%;    background: var(--kameni-terracotta);    color: #ffffff;    box-shadow: 0 8px 22px rgba(184, 72, 28, 0.2);    font-size: 1.05rem;    font-weight: 700;}.about-roadmap-icon {    display: grid;    width: 8rem;    height: 8rem;    place-items: center;    border-radius: 50%;    color: var(--kameni-black);}    .about-roadmap-icon svg {        width: 2.8rem;        height: 2.8rem;    }.about-roadmap-icon-logo {    padding: 1rem;}    .about-roadmap-icon-logo img {        width: 100%;        max-height: 5rem;        object-fit: contain;    }.about-roadmap-content {    max-width: 830px;    padding: 0.5rem 0 2.25rem;    border-bottom: 1px solid var(--kameni-border);}.about-roadmap-item:last-of-type .about-roadmap-content {    border-bottom: 0;}.about-roadmap-kicker {    margin: 0;    color: var(--kameni-terracotta);    font-size: 0.75rem;    font-weight: 700;    letter-spacing: 0.13em;    text-transform: uppercase;}.about-roadmap-content h2 {    margin: 0.75rem 0 0;    color: var(--kameni-black);    font-family: var(--kameni-font-display);    font-size: clamp(1.7rem, 3vw, 2.5rem);    line-height: 1.25;}.about-roadmap-content > p {    max-width: 780px;    margin: 1.1rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.98rem;    line-height: 1.78;}.about-intro-points {    display: grid;    gap: 0.7rem;    margin-top: 1.4rem;}.about-intro-point {    display: flex;    gap: 0.7rem;    align-items: start;    color: var(--kameni-black);    font-size: 0.92rem;    line-height: 1.55;}.about-point-dot {    width: 0.5rem;    height: 0.5rem;    margin-top: 0.45rem;    flex: 0 0 0.5rem;    border-radius: 50%;    background: var(--kameni-terracotta);}.about-role-grid {    display: grid;    grid-template-columns: repeat(4, minmax(0, 1fr));    gap: 1rem;    margin-top: 1.8rem;}.about-role-card {    min-height: 190px;    border: 1px solid var(--kameni-border);    border-radius: 8px;    padding: 1.15rem;    background: rgba(248, 243, 235, 0.65);}.about-role-icon {    display: grid;    width: 2.6rem;    height: 2.6rem;    place-items: center;    border-radius: 50%;    background: rgba(184, 72, 28, 0.1);    color: var(--kameni-terracotta);}    .about-role-icon svg {        width: 1.35rem;        height: 1.35rem;    }.about-role-card h3 {    margin: 1rem 0 0;    color: var(--kameni-black);    font-size: 0.78rem;    font-weight: 700;    letter-spacing: 0.1em;    text-transform: uppercase;}.about-role-card p {    margin: 0.75rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.82rem;    line-height: 1.6;}.about-roadmap-closing {    margin-top: 1.5rem !important;    color: var(--kameni-black) !important;    font-weight: 600;}.about-founder-placeholder {    display: grid;    min-height: 150px;    place-items: center;    margin-top: 1.5rem;    border: 1px dashed rgba(15, 13, 11, 0.24);    border-radius: 8px;    padding: 1.5rem;    background: rgba(248, 243, 235, 0.6);    color: var(--kameni-stone-grey);    text-align: center;}    .about-founder-placeholder svg {        width: 2.8rem;        height: 2.8rem;        color: var(--kameni-terracotta);    }    .about-founder-placeholder p {        max-width: 480px;        margin: 0.85rem 0 0;        color: var(--kameni-stone-grey);        line-height: 1.65;    }.about-sidro-closing {    display: grid;    grid-template-columns: 320px 1px minmax(0, 1fr);    gap: 2.8rem;    align-items: center;    margin-top: 1rem;    border-radius: 8px;    padding: 2.5rem 3rem;    background: linear-gradient(125deg, #17120f, #2a211c 55%, #17120f);    color: #ffffff;}.about-sidro-closing-logo {    display: flex;    width: 320px;    min-width: 320px;    align-items: center;    justify-content: flex-start;}    .about-sidro-closing-logo img {        display: block;        width: 290px;        max-width: 100%;        height: auto;        object-fit: contain;    }.about-sidro-closing-divider {    width: 1px;    align-self: stretch;    background: rgba(255, 255, 255, 0.2);}.about-sidro-closing-title {    margin: 0;    font-family: var(--kameni-font-display);    font-size: clamp(1.15rem, 2vw, 1.55rem);    line-height: 1.4;}.about-sidro-closing-subtitle {    margin: 0.45rem 0 0;    color: var(--kameni-terracotta-light);    font-family: var(--kameni-font-display);    font-size: 1.1rem;    font-style: italic;}@media (max-width: 991.98px) {    .about-hero {        min-height: 380px;    }    .about-hero-content {        padding-top: 5.75rem;        padding-bottom: 3.5rem;    }    .about-roadmap-line {        bottom: 14rem;        left: 1.85rem;    }    .about-roadmap-item {        grid-template-columns: 3.75rem 6rem minmax(0, 1fr);        gap: 1rem;    }    .about-roadmap-marker {        width: 3.75rem;        height: 3.75rem;        font-size: 0.92rem;    }    .about-roadmap-icon {        width: 6rem;        height: 6rem;    }        .about-roadmap-icon svg {            width: 2.25rem;            height: 2.25rem;        }    .about-role-grid {        grid-template-columns: repeat(2, minmax(0, 1fr));    }}@media (max-width: 640px) {    .about-hero {        min-height: 340px;    }    .about-hero-content {        padding-top: 4.8rem;        padding-bottom: 2.8rem;    }    .about-hero-title {        font-size: clamp(2.3rem, 12vw, 3.5rem);    }    .about-hero-description {        font-size: 0.94rem;        line-height: 1.7;    }    .about-roadmap-section {        padding: 3.25rem 0;    }    .about-roadmap {        gap: 1.75rem;    }    .about-roadmap-line {        display: none;    }    .about-roadmap-item {        grid-template-columns: 3.25rem minmax(0, 1fr);        gap: 1rem;    }    .about-roadmap-marker {        width: 3.25rem;        height: 3.25rem;        font-size: 0.85rem;    }    .about-roadmap-icon {        grid-column: 2;        width: 5.25rem;        height: 5.25rem;    }    .about-roadmap-content {        grid-column: 2;        padding-top: 0;    }    .about-roadmap-icon-logo img {        max-height: 3.8rem;    }    .about-role-grid {        grid-template-columns: 1fr;    }    .about-role-card {        min-height: 0;    }    .about-sidro-closing {        grid-template-columns: 1fr;        gap: 1.35rem;        padding: 2rem 1.5rem;        text-align: center;    }    .about-sidro-closing-logo {        width: 100%;        min-width: 0;        justify-content: center;    }        .about-sidro-closing-logo img {            width: min(270px, 100%);            margin-inline: auto;        }    .about-sidro-closing-divider {        width: 100%;        height: 1px;    }}/* =========================================================   ADMIN DISHES   ========================================================= */.admin-dishes-page {    padding: 2.5rem 0 4rem;    background: var(--kameni-warm-white);}.admin-dishes-header {    margin-bottom: 2rem;}.admin-dishes-context-bar {    display: flex;    align-items: center;    min-height: 1.6rem;    margin-bottom: 0.65rem;}.admin-dishes-context-user {    color: var(--kameni-stone-grey);    font-size: 0.85rem;}    .admin-dishes-context-user strong {        color: var(--kameni-black);    }.admin-dishes-subheader {    display: flex;    gap: 1.5rem;    align-items: end;    justify-content: space-between;    margin-top: 0.8rem;}.admin-dishes-description {    margin: 0;    color: var(--kameni-stone-grey);    font-size: 0.95rem;}    .admin-dishes-description span {        color: var(--kameni-terracotta);    }.admin-dishes-header-actions {    display: flex;    gap: 0.7rem;    align-items: center;    flex-wrap: wrap;    justify-content: flex-end;}.admin-dishes-last-updated {    color: var(--kameni-stone-grey);    font-size: 0.78rem;    white-space: nowrap;}/* =========================================================   FILTERS   ========================================================= */.admin-dishes-filters {    display: grid;    grid-template-columns: minmax(180px, 0.9fr) minmax(220px, 1.4fr) minmax(160px, 0.75fr);    gap: 1rem;    align-items: end;    margin-bottom: 1.5rem;    border: 1px solid var(--kameni-border);    border-radius: 10px;    padding: 1.2rem;    background: #ffffff;}.admin-dishes-filter-field {    display: grid;    gap: 0.45rem;}    .admin-dishes-filter-field label {        color: var(--kameni-black);        font-size: 0.78rem;        font-weight: 700;        letter-spacing: 0.08em;        text-transform: uppercase;    }/* =========================================================   LIST   ========================================================= */.admin-dishes-list {    overflow: hidden;    border: 1px solid var(--kameni-border);    border-radius: 10px;    background: #ffffff;}.admin-dishes-list-header,.admin-dish-row {    display: grid;    grid-template-columns: minmax(220px, 2fr) minmax(120px, 0.9fr) minmax(150px, 1.1fr) minmax(110px, 0.75fr) minmax(90px, 0.7fr) minmax(150px, 1fr);    gap: 1rem;    align-items: center;}.admin-dishes-list-header {    border-bottom: 1px solid var(--kameni-border);    padding: 0.85rem 1.15rem;    background: rgba(248, 243, 235, 0.8);    color: var(--kameni-stone-grey);    font-size: 0.73rem;    font-weight: 700;    letter-spacing: 0.08em;    text-transform: uppercase;}.admin-dish-row {    min-height: 86px;    border-bottom: 1px solid var(--kameni-border);    padding: 1rem 1.15rem;    transition: background-color 0.15s ease;}    .admin-dish-row:last-child {        border-bottom: 0;    }    .admin-dish-row:hover {        background: rgba(248, 243, 235, 0.55);    }.admin-dish-main {    display: grid;    gap: 0.3rem;    min-width: 0;}    .admin-dish-main strong {        overflow: hidden;        color: var(--kameni-black);        font-size: 0.97rem;        text-overflow: ellipsis;        white-space: nowrap;    }    .admin-dish-main small {        display: -webkit-box;        overflow: hidden;        color: var(--kameni-stone-grey);        font-size: 0.82rem;        line-height: 1.45;        -webkit-box-orient: vertical;        -webkit-line-clamp: 2;    }.admin-dish-category {    color: var(--kameni-stone-grey);    font-size: 0.88rem;}.admin-dish-dietary {    display: flex;    gap: 0.4rem;    align-items: center;    flex-wrap: wrap;}.admin-dish-dietary-badge {    display: inline-flex;    align-items: center;    min-height: 1.7rem;    border-radius: 999px;    padding: 0.2rem 0.55rem;    background: rgba(72, 119, 83, 0.1);    color: #356c42;    font-size: 0.72rem;    font-weight: 700;}.admin-dish-dietary-empty {    color: var(--kameni-stone-grey);}.admin-dish-price {    color: var(--kameni-black);    font-size: 0.92rem;    white-space: nowrap;}.admin-dish-status {    display: inline-flex;    min-height: 1.7rem;    align-items: center;    justify-content: center;    border-radius: 999px;    padding: 0.2rem 0.65rem;    font-size: 0.72rem;    font-weight: 700;    white-space: nowrap;}.admin-dish-status-active {    background: rgba(55, 122, 76, 0.12);    color: #2d7442;}.admin-dish-status-disabled {    background: rgba(86, 80, 74, 0.12);    color: var(--kameni-stone-grey);}.admin-dish-actions {    display: flex;    gap: 0.5rem;    align-items: center;    justify-content: flex-start;    flex-wrap: wrap;}.admin-dish-edit-button,.admin-dish-disable-button,.admin-dish-enable-button {    min-height: 2.15rem;    border: 0;    border-radius: 5px;    padding: 0.4rem 0.75rem;    font-family: inherit;    font-size: 0.78rem;    font-weight: 700;    cursor: pointer;    transition: background-color 0.15s ease, color 0.15s ease, opacity 0.15s ease;}.admin-dish-edit-button {    background: rgba(184, 72, 28, 0.1);    color: var(--kameni-terracotta);}    .admin-dish-edit-button:hover:not(:disabled) {        background: rgba(184, 72, 28, 0.18);    }.admin-dish-disable-button {    background: rgba(150, 55, 42, 0.1);    color: #9c382c;}    .admin-dish-disable-button:hover:not(:disabled) {        background: rgba(150, 55, 42, 0.18);    }.admin-dish-enable-button {    background: rgba(55, 122, 76, 0.11);    color: #2d7442;}    .admin-dish-enable-button:hover:not(:disabled) {        background: rgba(55, 122, 76, 0.19);    }    .admin-dish-edit-button:disabled,    .admin-dish-disable-button:disabled,    .admin-dish-enable-button:disabled {        cursor: not-allowed;        opacity: 0.55;    }/* =========================================================   EMPTY / ERROR STATES   ========================================================= */.admin-dishes-error {    display: grid;    gap: 0.7rem;    border: 1px solid rgba(156, 56, 44, 0.25);    border-radius: 10px;    padding: 1.35rem;    background: rgba(156, 56, 44, 0.06);    color: var(--kameni-black);}    .admin-dishes-error strong {        color: #9c382c;    }.admin-dishes-empty-description {    max-width: 520px;    margin: 0.85rem auto 1.25rem;    color: var(--kameni-stone-grey);    line-height: 1.65;}/* =========================================================   TABLET   ========================================================= */@media (max-width: 991.98px) {    .admin-dishes-page {        padding: 1.8rem 0 6rem;    }    .admin-dishes-subheader {        align-items: start;        flex-direction: column;    }    .admin-dishes-header-actions {        justify-content: flex-start;    }    .admin-dishes-filters {        grid-template-columns: repeat(2, minmax(0, 1fr));    }    .admin-dishes-filter-field:last-child {        grid-column: span 2;    }    .admin-dishes-list {        overflow-x: auto;    }    .admin-dishes-list-header,    .admin-dish-row {        min-width: 880px;    }}/* =========================================================   MOBILE   ========================================================= */@media (max-width: 640px) {    .admin-dishes-page {        padding-top: 1.35rem;    }    .admin-dishes-header-actions {        width: 100%;    }        .admin-dishes-header-actions .kameni-btn-primary,        .admin-dishes-header-actions .kameni-btn-outline {            flex: 1 1 auto;            justify-content: center;        }    .admin-dishes-last-updated {        width: 100%;    }    .admin-dishes-filters {        grid-template-columns: 1fr;        padding: 1rem;    }    .admin-dishes-filter-field:last-child {        grid-column: auto;    }    .admin-dishes-list {        margin-inline: -0.25rem;        border-radius: 8px;    }    .admin-dishes-list-header,    .admin-dish-row {        min-width: 820px;    }}/* =========================================================   ADMIN DISH CREATE / EDIT FORM   ========================================================= */.admin-dish-form-panel {    margin-bottom: 1.5rem;    border: 1px solid var(--kameni-border);    border-radius: 10px;    padding: 1.5rem;    background: #ffffff;    box-shadow: 0 16px 42px rgba(30, 24, 20, 0.08);}.admin-dish-form-header {    display: flex;    gap: 1.5rem;    align-items: start;    justify-content: space-between;    margin-bottom: 1.5rem;    padding-bottom: 1.3rem;    border-bottom: 1px solid var(--kameni-border);}    .admin-dish-form-header h2 {        margin: 0.45rem 0 0;        color: var(--kameni-black);        font-family: var(--kameni-font-display);        font-size: clamp(1.45rem, 3vw, 2rem);        line-height: 1.25;    }    .admin-dish-form-header p:not(.kameni-eyebrow) {        max-width: 650px;        margin: 0.7rem 0 0;        color: var(--kameni-stone-grey);        line-height: 1.65;    }.admin-dish-form-close {    display: grid;    width: 2.4rem;    height: 2.4rem;    flex: 0 0 2.4rem;    place-items: center;    border: 1px solid var(--kameni-border);    border-radius: 50%;    background: transparent;    color: var(--kameni-black);    font-size: 1.5rem;    line-height: 1;    cursor: pointer;}    .admin-dish-form-close:hover:not(:disabled) {        border-color: var(--kameni-terracotta);        color: var(--kameni-terracotta);    }    .admin-dish-form-close:disabled {        cursor: not-allowed;        opacity: 0.55;    }.admin-dish-form-loading {    padding: 1rem 0;    color: var(--kameni-stone-grey);}.admin-dish-form-grid {    display: grid;    grid-template-columns: repeat(2, minmax(0, 1fr));    gap: 1.15rem;}.admin-dish-form-field {    display: grid;    gap: 0.45rem;}.admin-dish-form-field-wide {    grid-column: span 2;}.admin-dish-form-field label {    color: var(--kameni-black);    font-size: 0.78rem;    font-weight: 700;    letter-spacing: 0.08em;    text-transform: uppercase;}    .admin-dish-form-field label small {        color: var(--kameni-stone-grey);        font-size: 0.72rem;        font-weight: 500;        letter-spacing: 0;        text-transform: none;    }.admin-dish-description-input {    min-height: 120px;    resize: vertical;}.admin-dish-form-field .validation-message {    color: #9c382c;    font-size: 0.78rem;}.admin-dish-validation-summary {    margin-bottom: 1rem;    border-radius: 6px;    padding: 0.8rem 1rem;    background: rgba(156, 56, 44, 0.08);    color: #9c382c;    font-size: 0.85rem;}    .admin-dish-validation-summary:empty {        display: none;    }.admin-dish-dietary-section {    display: grid;    grid-template-columns: minmax(180px, 0.8fr) minmax(0, 2fr);    gap: 1.5rem;    align-items: start;    margin-top: 1.5rem;    border-top: 1px solid var(--kameni-border);    padding-top: 1.5rem;}    .admin-dish-dietary-section h3 {        margin: 0.45rem 0 0;        color: var(--kameni-black);        font-size: 1rem;        line-height: 1.45;    }.admin-dish-dietary-options {    display: grid;    grid-template-columns: repeat(3, minmax(0, 1fr));    gap: 0.75rem;}.admin-dish-checkbox-option {    display: flex;    gap: 0.7rem;    min-height: 92px;    align-items: start;    border: 1px solid var(--kameni-border);    border-radius: 8px;    padding: 0.9rem;    background: rgba(248, 243, 235, 0.48);    cursor: pointer;}    .admin-dish-checkbox-option input {        width: 1rem;        height: 1rem;        margin-top: 0.17rem;        accent-color: var(--kameni-terracotta);    }        .admin-dish-checkbox-option input:disabled {            cursor: not-allowed;        }    .admin-dish-checkbox-option span {        display: grid;        gap: 0.25rem;    }    .admin-dish-checkbox-option strong {        color: var(--kameni-black);        font-size: 0.84rem;    }    .admin-dish-checkbox-option small {        color: var(--kameni-stone-grey);        font-size: 0.75rem;        line-height: 1.45;    }.admin-dish-form-error {    margin-top: 1.25rem;    border: 1px solid rgba(156, 56, 44, 0.2);    border-radius: 6px;    padding: 0.85rem 1rem;    background: rgba(156, 56, 44, 0.07);    color: #9c382c;    font-size: 0.88rem;}.admin-dish-form-actions {    display: flex;    gap: 0.75rem;    justify-content: flex-end;    margin-top: 1.5rem;    border-top: 1px solid var(--kameni-border);    padding-top: 1.35rem;}@media (max-width: 991.98px) {    .admin-dish-dietary-section {        grid-template-columns: 1fr;    }    .admin-dish-dietary-options {        grid-template-columns: repeat(3, minmax(0, 1fr));    }}@media (max-width: 640px) {    .admin-dish-form-panel {        margin-inline: -0.25rem;        padding: 1.15rem;    }    .admin-dish-form-header {        gap: 0.8rem;    }    .admin-dish-form-grid {        grid-template-columns: 1fr;    }    .admin-dish-form-field-wide {        grid-column: auto;    }    .admin-dish-dietary-options {        grid-template-columns: 1fr;    }    .admin-dish-checkbox-option {        min-height: 0;    }    .admin-dish-form-actions {        flex-direction: column-reverse;    }        .admin-dish-form-actions .kameni-btn-primary,        .admin-dish-form-actions .kameni-btn-outline {            width: 100%;            justify-content: center;        }}/* =========================================================   CREATE DISH PAGE   ========================================================= */.admin-create-dish-page {    padding: 2.5rem 0 4rem;    background: var(--kameni-warm-white);}.admin-create-dish-header {    margin-bottom: 2rem;}.admin-create-dish-back-link {    display: inline-flex;    margin-bottom: 1.2rem;    color: var(--kameni-terracotta);    font-size: 0.86rem;    font-weight: 700;    text-decoration: none;}    .admin-create-dish-back-link:hover {        color: var(--kameni-black);    }.admin-create-dish-description {    max-width: 680px;    margin: 0.75rem 0 0;    color: var(--kameni-stone-grey);    line-height: 1.65;}    .admin-create-dish-description strong {        color: var(--kameni-black);    }.admin-create-dish-layout {    display: grid;    grid-template-columns: minmax(0, 1.22fr) minmax(300px, 0.78fr);    gap: 1.5rem;    align-items: start;}.admin-create-dish-form-card,.admin-create-dish-preview {    border: 1px solid var(--kameni-border);    border-radius: 10px;    background: #ffffff;}.admin-create-dish-form-card {    padding: 1.5rem;    box-shadow: 0 16px 42px rgba(30, 24, 20, 0.06);}.admin-create-dish-form-card-header {    display: flex;    gap: 1rem;    align-items: start;    justify-content: space-between;    margin-bottom: 1.5rem;    border-bottom: 1px solid var(--kameni-border);    padding-bottom: 1.2rem;}    .admin-create-dish-form-card-header h2 {        margin: 0.45rem 0 0;        color: var(--kameni-black);        font-family: var(--kameni-font-display);        font-size: clamp(1.4rem, 2.8vw, 1.9rem);    }.admin-create-dish-form-restaurant {    display: inline-flex;    max-width: 180px;    border-radius: 999px;    padding: 0.35rem 0.65rem;    background: rgba(184, 72, 28, 0.1);    color: var(--kameni-terracotta);    font-size: 0.74rem;    font-weight: 700;    line-height: 1.3;    text-align: center;}.admin-create-dish-loading {    padding: 1.5rem 0;    color: var(--kameni-stone-grey);}.admin-create-dish-form-grid {    display: grid;    grid-template-columns: repeat(2, minmax(0, 1fr));    gap: 1.15rem;}.admin-create-dish-dietary-section {    display: grid;    grid-template-columns: minmax(180px, 0.78fr) minmax(0, 2fr);    gap: 1.5rem;    margin-top: 1.5rem;    border-top: 1px solid var(--kameni-border);    padding-top: 1.5rem;}    .admin-create-dish-dietary-section h3 {        margin: 0.45rem 0 0;        color: var(--kameni-black);        font-size: 1rem;        line-height: 1.45;    }.admin-create-dish-actions {    display: flex;    gap: 0.75rem;    justify-content: flex-end;    margin-top: 1.5rem;    border-top: 1px solid var(--kameni-border);    padding-top: 1.35rem;}.admin-create-dish-preview {    position: sticky;    top: calc(var(--kameni-header-height) + 1.5rem);    overflow: hidden;    padding: 1.25rem;    background: linear-gradient( 145deg, rgba(248, 243, 235, 0.95), #ffffff 55% );}.admin-create-dish-preview-heading {    display: flex;    gap: 1rem;    align-items: start;    justify-content: space-between;    margin-bottom: 1rem;}    .admin-create-dish-preview-heading h2 {        margin: 0.4rem 0 0;        color: var(--kameni-black);        font-family: var(--kameni-font-display);        font-size: 1.35rem;    }    .admin-create-dish-preview-heading > span {        border-radius: 999px;        padding: 0.28rem 0.55rem;        background: rgba(55, 122, 76, 0.1);        color: #2d7442;        font-size: 0.69rem;        font-weight: 700;        white-space: nowrap;    }.admin-create-dish-preview-card {    overflow: hidden;    border: 1px solid rgba(15, 13, 11, 0.1);    border-radius: 9px;    background: #ffffff;    box-shadow: 0 12px 28px rgba(30, 24, 20, 0.08);}.admin-create-dish-preview-image,.admin-create-dish-preview-image-placeholder {    position: relative;    display: grid;    height: 205px;    place-items: center;    overflow: hidden;    background: radial-gradient( circle at 25% 20%, rgba(214, 99, 58, 0.35), transparent 24% ), linear-gradient( 130deg, #211611, #4b281c 56%, #8b4326 );}    .admin-create-dish-preview-image img {        width: 100%;        height: 100%;        object-fit: cover;    }.admin-create-dish-preview-image-placeholder {    color: rgba(255, 255, 255, 0.86);}    .admin-create-dish-preview-image-placeholder svg {        width: 3.2rem;        height: 3.2rem;    }    .admin-create-dish-preview-image-placeholder span {        margin-top: 0.35rem;        font-size: 0.78rem;        font-weight: 700;    }.admin-create-dish-preview-content {    padding: 1.15rem;}.admin-create-dish-preview-topline {    display: flex;    gap: 0.8rem;    align-items: center;    justify-content: space-between;    color: var(--kameni-terracotta);    font-size: 0.74rem;    font-weight: 700;    letter-spacing: 0.06em;    text-transform: uppercase;}    .admin-create-dish-preview-topline strong {        color: var(--kameni-black);        font-size: 0.82rem;        letter-spacing: 0;        text-transform: none;        white-space: nowrap;    }.admin-create-dish-preview-content h3 {    margin: 0.7rem 0 0;    color: var(--kameni-black);    font-family: var(--kameni-font-display);    font-size: 1.45rem;    line-height: 1.25;}.admin-create-dish-preview-content > p {    display: -webkit-box;    min-height: 4.25rem;    overflow: hidden;    margin: 0.7rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.86rem;    line-height: 1.6;    -webkit-box-orient: vertical;    -webkit-line-clamp: 3;}.admin-create-dish-preview-dietary {    display: flex;    gap: 0.4rem;    flex-wrap: wrap;    min-height: 1.7rem;    margin-top: 1rem;}    .admin-create-dish-preview-dietary span {        display: inline-flex;        min-height: 1.55rem;        align-items: center;        border-radius: 999px;        padding: 0.15rem 0.55rem;        background: rgba(55, 122, 76, 0.11);        color: #2d7442;        font-size: 0.69rem;        font-weight: 700;    }.admin-create-dish-preview-order-button {    width: 100%;    min-height: 2.75rem;    margin-top: 1.2rem;    border: 0;    border-radius: 5px;    background: var(--kameni-terracotta);    color: #ffffff;    font-family: inherit;    font-size: 0.86rem;    font-weight: 700;    opacity: 0.7;}.admin-create-dish-preview-note {    margin: 1rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.77rem;    line-height: 1.55;}.admin-dish-edit-button {    display: inline-flex;    align-items: center;    justify-content: center;    text-decoration: none;}.admin-dish-action-error {    width: 100%;    margin-top: 0.2rem;    color: #9c382c;    font-size: 0.74rem;    line-height: 1.4;}.admin-dish-toast {    position: fixed;    z-index: 1200;    top: calc(var(--kameni-header-height) + 1rem);    right: 1.25rem;    display: flex;    max-width: min(420px, calc(100vw - 2rem));    gap: 0.7rem;    align-items: center;    border: 1px solid rgba(55, 122, 76, 0.22);    border-radius: 8px;    padding: 0.85rem 1rem;    background: #ffffff;    box-shadow: 0 14px 34px rgba(30, 24, 20, 0.14);    color: var(--kameni-black);    font-size: 0.86rem;    line-height: 1.45;}.admin-dish-toast-icon {    display: grid;    width: 1.55rem;    height: 1.55rem;    flex: 0 0 1.55rem;    place-items: center;    border-radius: 50%;    background: rgba(55, 122, 76, 0.12);    color: #2d7442;    font-size: 0.85rem;    font-weight: 700;}@media (max-width: 991.98px) {    .admin-dish-toast {        top: calc(var(--kameni-mobile-header-height) + 0.85rem);    }}@media (max-width: 640px) {    .admin-dish-toast {        right: 0.75rem;        left: 0.75rem;        max-width: none;    }}@media (max-width: 991.98px) {    .admin-create-dish-page {        padding: 1.8rem 0 6rem;    }    .admin-create-dish-layout {        grid-template-columns: 1fr;    }    .admin-create-dish-preview {        position: static;    }    .admin-create-dish-dietary-section {        grid-template-columns: 1fr;    }}@media (max-width: 640px) {    .admin-create-dish-page {        padding-top: 1.35rem;    }    .admin-create-dish-form-card,    .admin-create-dish-preview {        margin-inline: -0.25rem;        padding: 1.1rem;    }    .admin-create-dish-form-grid {        grid-template-columns: 1fr;    }    .admin-create-dish-form-card-header {        flex-direction: column;    }    .admin-create-dish-form-restaurant {        max-width: 100%;    }    .admin-create-dish-actions {        flex-direction: column-reverse;    }        .admin-create-dish-actions .kameni-btn-primary,        .admin-create-dish-actions .kameni-btn-outline {            width: 100%;            justify-content: center;        }    .admin-create-dish-preview-image,    .admin-create-dish-preview-image-placeholder {        height: 185px;    }}/* =========================================================   GLOBAL TOAST NOTIFICATIONS   ========================================================= */.sidro-toast {    display: flex;    width: 100%;    gap: 0.75rem;    align-items: center;    border: 1px solid var(--kameni-border);    border-radius: 9px;    padding: 0.9rem 1rem;    background: #ffffff;    box-shadow: 0 16px 36px rgba(30, 24, 20, 0.16);    color: var(--kameni-black);    pointer-events: auto;    animation: sidro-toast-enter 0.22s ease-out;}.sidro-toast-success {    border-color: rgba(55, 122, 76, 0.28);}.sidro-toast-error {    border-color: rgba(156, 56, 44, 0.3);}.sidro-toast-information {    border-color: rgba(184, 72, 28, 0.25);}.sidro-toast-icon {    display: grid;    width: 1.65rem;    height: 1.65rem;    flex: 0 0 1.65rem;    place-items: center;    border-radius: 50%;    font-size: 0.85rem;    font-weight: 700;}.sidro-toast-success .sidro-toast-icon {    background: rgba(55, 122, 76, 0.12);    color: #2d7442;}.sidro-toast-error .sidro-toast-icon {    background: rgba(156, 56, 44, 0.1);    color: #9c382c;}.sidro-toast-information .sidro-toast-icon {    background: rgba(184, 72, 28, 0.1);    color: var(--kameni-terracotta);}.sidro-toast-message {    flex: 1 1 auto;    font-size: 0.86rem;    line-height: 1.45;}.sidro-toast-stack {    position: fixed;    z-index: 5000;    top: calc(var(--kameni-header-height) + 1rem);    right: 1.25rem;    display: grid;    width: min(430px, calc(100vw - 2rem));    gap: 0.7rem;    pointer-events: none;}.sidro-toast-close {    display: grid;    width: 1.7rem;    height: 1.7rem;    flex: 0 0 1.7rem;    place-items: center;    border: 0;    border-radius: 50%;    background: transparent;    color: var(--kameni-stone-grey);    font-family: inherit;    font-size: 1.3rem;    line-height: 1;    cursor: pointer;}    .sidro-toast-close:hover {        background: rgba(15, 13, 11, 0.06);        color: var(--kameni-black);    }@keyframes sidro-toast-enter {    from {        opacity: 0;        transform: translateY(-0.6rem);    }    to {        opacity: 1;        transform: translateY(0);    }}.sidro-toast-leaving {    pointer-events: none;    animation: sidro-toast-exit 0.45s ease-in forwards;}@keyframes sidro-toast-exit {    0% {        opacity: 1;        transform: translateX(0);    }    28% {        transform: translateX(-0.55rem);    }    100% {        opacity: 0;        transform: translateX(115%);    }}@media (max-width: 991.98px) {    .sidro-toast-stack {        top: calc(var(--kameni-mobile-header-height) + 0.85rem);    }}@media (max-width: 640px) {    .sidro-toast-stack {        right: 0.75rem;        left: 0.75rem;        width: auto;    }}/* =========================================================   ADMIN MENUS   ========================================================= */.admin-menus-page {    padding: 2.5rem 0 4rem;    background: var(--kameni-warm-white);}.admin-menus-header {    display: flex;    gap: 1.5rem;    align-items: end;    justify-content: space-between;    margin-bottom: 2rem;}.admin-menus-description {    max-width: 650px;    margin: 0.7rem 0 0;    color: var(--kameni-stone-grey);    line-height: 1.65;}.admin-menus-filters {    display: grid;    grid-template-columns: minmax(180px, 0.9fr) minmax(220px, 1.4fr) minmax(160px, 0.75fr) auto;    gap: 1rem;    align-items: end;    margin-bottom: 1.25rem;    border: 1px solid var(--kameni-border);    border-radius: 10px;    padding: 1.1rem;    background: #ffffff;}.admin-menus-filter-field {    min-width: 0;}    .admin-menus-filter-field label {        display: block;        margin-bottom: 0.4rem;        color: var(--kameni-black);        font-size: 0.78rem;        font-weight: 700;    }.admin-menus-filter-actions {    display: flex;    justify-content: flex-end;}.admin-menus-list {    overflow: hidden;    border: 1px solid var(--kameni-border);    border-radius: 10px;    background: #ffffff;    box-shadow: 0 14px 34px rgba(30, 24, 20, 0.05);}.admin-menus-list-header,.admin-menu-row {    display: grid;    grid-template-columns: minmax(220px, 1.6fr) minmax(150px, 1fr) minmax(110px, 0.6fr) minmax(110px, 0.6fr) minmax(180px, 0.9fr);    gap: 1rem;    align-items: center;}.admin-menus-list-header {    border-bottom: 1px solid var(--kameni-border);    padding: 0.8rem 1.1rem;    background: rgba(248, 243, 235, 0.75);    color: var(--kameni-stone-grey);    font-size: 0.72rem;    font-weight: 700;    letter-spacing: 0.06em;    text-transform: uppercase;}.admin-menu-row {    min-height: 94px;    border-bottom: 1px solid var(--kameni-border);    padding: 1rem 1.1rem;}    .admin-menu-row:last-child {        border-bottom: 0;    }.admin-menu-main h2 {    margin: 0;    color: var(--kameni-black);    font-family: var(--kameni-font-display);    font-size: 1.15rem;    line-height: 1.3;}.admin-menu-main p {    display: -webkit-box;    overflow: hidden;    margin: 0.35rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.8rem;    line-height: 1.45;    -webkit-box-orient: vertical;    -webkit-line-clamp: 2;}.admin-menu-main .admin-menu-no-description {    color: rgba(104, 93, 84, 0.72);    font-style: italic;}.admin-menu-location,.admin-menu-display-order {    color: var(--kameni-black);    font-size: 0.84rem;    line-height: 1.45;}.admin-menu-mobile-label {    display: none;}.admin-menu-status-badge {    display: inline-flex;    min-height: 1.65rem;    align-items: center;    border-radius: 999px;    padding: 0.16rem 0.6rem;    font-size: 0.72rem;    font-weight: 700;}.admin-menu-status-active {    background: rgba(55, 122, 76, 0.11);    color: #2d7442;}.admin-menu-status-disabled {    background: rgba(156, 56, 44, 0.1);    color: #9c382c;}.admin-menu-actions {    display: flex;    gap: 0.55rem;    flex-wrap: wrap;    align-items: center;}.admin-menu-edit-button,.admin-menu-disable-button,.admin-menu-enable-button {    display: inline-flex;    min-height: 2.2rem;    align-items: center;    justify-content: center;    border-radius: 5px;    padding: 0.38rem 0.72rem;    font-family: inherit;    font-size: 0.76rem;    font-weight: 700;    text-decoration: none;    cursor: pointer;}.admin-menu-edit-button {    border: 1px solid var(--kameni-border);    background: #ffffff;    color: var(--kameni-black);}    .admin-menu-edit-button:hover {        border-color: var(--kameni-black);    }.admin-menu-disable-button {    border: 1px solid rgba(156, 56, 44, 0.25);    background: rgba(156, 56, 44, 0.06);    color: #9c382c;}.admin-menu-enable-button {    border: 1px solid rgba(55, 122, 76, 0.25);    background: rgba(55, 122, 76, 0.07);    color: #2d7442;}    .admin-menu-disable-button:disabled,    .admin-menu-enable-button:disabled {        cursor: not-allowed;        opacity: 0.6;    }.admin-menu-action-error {    width: 100%;    color: #9c382c;    font-size: 0.72rem;    line-height: 1.4;}.admin-menus-empty-state {    border: 1px dashed rgba(30, 24, 20, 0.2);    border-radius: 10px;    padding: 3.5rem 1.25rem;    background: #ffffff;    text-align: center;}    .admin-menus-empty-state h2 {        margin: 0.45rem 0 0;        color: var(--kameni-black);        font-family: var(--kameni-font-display);        font-size: 1.7rem;    }    .admin-menus-empty-state p {        max-width: 560px;        margin: 0.8rem auto 1.3rem;        color: var(--kameni-stone-grey);        line-height: 1.6;    }@media (max-width: 991.98px) {    .admin-menus-page {        padding: 1.8rem 0 6rem;    }    .admin-menus-header {        align-items: start;        flex-direction: column;    }    .admin-menus-filters {        grid-template-columns: repeat(2, minmax(0, 1fr));    }    .admin-menus-filter-actions {        grid-column: span 2;        justify-content: stretch;    }        .admin-menus-filter-actions .kameni-btn-outline {            width: 100%;            justify-content: center;        }    .admin-menus-list-header {        display: none;    }    .admin-menu-row {        grid-template-columns: repeat(2, minmax(0, 1fr));        gap: 1rem;        padding: 1.05rem;    }    .admin-menu-main {        grid-column: span 2;    }    .admin-menu-mobile-label {        display: block;        margin-bottom: 0.28rem;        color: var(--kameni-stone-grey);        font-size: 0.67rem;        font-weight: 700;        letter-spacing: 0.05em;        text-transform: uppercase;    }    .admin-menu-actions {        grid-column: span 2;    }}@media (max-width: 640px) {    .admin-menus-page {        padding-top: 1.35rem;    }    .admin-menus-header .kameni-btn-primary {        width: 100%;        justify-content: center;    }    .admin-menus-filters {        grid-template-columns: 1fr;    }    .admin-menus-filter-actions {        grid-column: auto;    }    .admin-menu-row {        grid-template-columns: 1fr;    }    .admin-menu-main,    .admin-menu-actions {        grid-column: auto;    }    .admin-menu-actions {        align-items: stretch;    }    .admin-menu-edit-button,    .admin-menu-disable-button,    .admin-menu-enable-button {        flex: 1 1 0;    }}/* =========================================================   MENU EDITOR   ========================================================= */.admin-menu-editor-page {    padding: 2.5rem 0 4rem;    background: var(--kameni-warm-white);}.admin-menu-editor-header {    margin-bottom: 2rem;}.admin-menu-editor-back-link {    display: inline-flex;    margin-bottom: 1.2rem;    color: var(--kameni-terracotta);    font-size: 0.86rem;    font-weight: 700;    text-decoration: none;}    .admin-menu-editor-back-link:hover {        color: var(--kameni-black);    }.admin-menu-editor-description {    max-width: 680px;    margin: 0.75rem 0 0;    color: var(--kameni-stone-grey);    line-height: 1.65;}    .admin-menu-editor-description strong {        color: var(--kameni-black);    }.admin-menu-editor-layout {    display: grid;    grid-template-columns: minmax(0, 1.15fr) minmax(300px, 0.85fr);    gap: 1.5rem;    align-items: start;}.admin-menu-editor-form-card,.admin-menu-editor-preview {    border: 1px solid var(--kameni-border);    border-radius: 10px;    background: #ffffff;}.admin-menu-editor-form-card {    padding: 1.5rem;    box-shadow: 0 16px 42px rgba(30, 24, 20, 0.06);}.admin-menu-editor-form-card-header {    display: flex;    gap: 1rem;    align-items: flex-start;    justify-content: space-between;    margin-bottom: 1.5rem;    border-bottom: 1px solid var(--kameni-border);    padding-bottom: 1.2rem;}    .admin-menu-editor-form-card-header h2 {        margin: 0.45rem 0 0;        color: var(--kameni-black);        font-family: var(--kameni-font-display);        font-size: clamp(1.4rem, 2.8vw, 1.9rem);    }.admin-menu-editor-tenant-badge {    display: inline-flex;    max-width: 180px;    border-radius: 999px;    padding: 0.35rem 0.65rem;    background: rgba(184, 72, 28, 0.1);    color: var(--kameni-terracotta);    font-size: 0.74rem;    font-weight: 700;    line-height: 1.3;    text-align: center;}.admin-menu-editor-loading {    padding: 1.5rem 0;    color: var(--kameni-stone-grey);}.admin-menu-editor-form-grid {    display: grid;    grid-template-columns: repeat(2, minmax(0, 1fr));    gap: 1.15rem;}.admin-menu-editor-field {    min-width: 0;}.admin-menu-editor-field-wide {    grid-column: span 2;}.admin-menu-editor-field label {    display: block;    margin-bottom: 0.42rem;    color: var(--kameni-black);    font-size: 0.82rem;    font-weight: 700;}    .admin-menu-editor-field label small {        margin-left: 0.35rem;        color: var(--kameni-stone-grey);        font-size: 0.72rem;        font-weight: 500;    }.admin-menu-editor-description-input {    min-height: 130px;    resize: vertical;}.admin-menu-editor-field-help {    display: block;    margin-top: 0.4rem;    color: var(--kameni-stone-grey);    font-size: 0.73rem;    line-height: 1.4;}.admin-menu-editor-validation-summary {    margin-bottom: 1rem;    color: #9c382c;    font-size: 0.8rem;}    .admin-menu-editor-validation-summary ul {        margin: 0;        padding-left: 1.1rem;    }.admin-menu-editor-error {    margin-top: 1.2rem;    border: 1px solid rgba(156, 56, 44, 0.22);    border-radius: 6px;    padding: 0.75rem 0.85rem;    background: rgba(156, 56, 44, 0.06);    color: #9c382c;    font-size: 0.8rem;    line-height: 1.5;}.admin-menu-editor-actions {    display: flex;    gap: 0.75rem;    justify-content: flex-end;    margin-top: 1.5rem;    border-top: 1px solid var(--kameni-border);    padding-top: 1.35rem;}.admin-menu-editor-preview {    position: sticky;    top: calc(var(--kameni-header-height) + 1.5rem);    padding: 1.25rem;    background: linear-gradient( 145deg, rgba(248, 243, 235, 0.95), #ffffff 55% );}.admin-menu-editor-preview-heading {    display: flex;    gap: 1rem;    align-items: flex-start;    justify-content: space-between;    margin-bottom: 1rem;}    .admin-menu-editor-preview-heading h2 {        margin: 0.4rem 0 0;        color: var(--kameni-black);        font-family: var(--kameni-font-display);        font-size: 1.35rem;    }    .admin-menu-editor-preview-heading > span {        border-radius: 999px;        padding: 0.28rem 0.55rem;        background: rgba(55, 122, 76, 0.1);        color: #2d7442;        font-size: 0.69rem;        font-weight: 700;        white-space: nowrap;    }.admin-menu-editor-preview-card {    overflow: hidden;    border: 1px solid rgba(15, 13, 11, 0.1);    border-radius: 9px;    background: #ffffff;    box-shadow: 0 12px 28px rgba(30, 24, 20, 0.08);}.admin-menu-editor-preview-hero {    display: grid;    min-height: 190px;    place-items: center;    align-content: center;    padding: 1.5rem;    background: radial-gradient( circle at 26% 25%, rgba(214, 99, 58, 0.3), transparent 22% ), linear-gradient( 145deg, #1f1510, #523020 58%, #8d492b );    color: #ffffff;    text-align: center;}    .admin-menu-editor-preview-hero p {        margin: 0;        color: rgba(255, 255, 255, 0.8);        font-size: 0.72rem;        font-weight: 700;        letter-spacing: 0.1em;        text-transform: uppercase;    }    .admin-menu-editor-preview-hero h3 {        margin: 0.7rem 0;        font-family: var(--kameni-font-display);        font-size: 2rem;        line-height: 1.15;    }.admin-menu-editor-preview-hero-line {    width: min(165px, 72%);    height: 1px;    background: rgba(255, 255, 255, 0.52);}.admin-menu-editor-preview-content {    padding: 1.15rem;}.admin-menu-editor-preview-location {    display: flex;    gap: 0.8rem;    align-items: center;    justify-content: space-between;    color: var(--kameni-stone-grey);    font-size: 0.74rem;    font-weight: 700;    letter-spacing: 0.06em;    text-transform: uppercase;}    .admin-menu-editor-preview-location strong {        color: var(--kameni-black);        font-size: 0.82rem;        letter-spacing: 0;        text-align: right;        text-transform: none;    }.admin-menu-editor-preview-description {    min-height: 4.3rem;    margin: 1rem 0;    color: var(--kameni-stone-grey);    font-size: 0.86rem;    line-height: 1.6;}.admin-menu-editor-preview-divider {    height: 1px;    background: var(--kameni-border);}.admin-menu-editor-preview-placeholder-items {    display: grid;    gap: 0.75rem;    margin-top: 1rem;}    .admin-menu-editor-preview-placeholder-items > div {        display: flex;        justify-content: space-between;        gap: 1rem;    }    .admin-menu-editor-preview-placeholder-items span:first-child {        width: 62%;        height: 0.62rem;        border-radius: 999px;        background: rgba(30, 24, 20, 0.1);    }    .admin-menu-editor-preview-placeholder-items span:last-child {        width: 18%;        height: 0.62rem;        border-radius: 999px;        background: rgba(184, 72, 28, 0.18);    }.admin-menu-editor-preview-note {    margin: 1rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.75rem;    line-height: 1.5;    text-align: center;}.admin-menu-editor-preview-footer {    margin: 1rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.77rem;    line-height: 1.55;}@media (max-width: 991.98px) {    .admin-menu-editor-page {        padding: 1.8rem 0 6rem;    }    .admin-menu-editor-layout {        grid-template-columns: 1fr;    }    .admin-menu-editor-preview {        position: static;    }}@media (max-width: 640px) {    .admin-menu-editor-page {        padding-top: 1.35rem;    }    .admin-menu-editor-form-card,    .admin-menu-editor-preview {        margin-inline: -0.25rem;        padding: 1.1rem;    }    .admin-menu-editor-form-card-header {        flex-direction: column;    }    .admin-menu-editor-tenant-badge {        max-width: 100%;    }    .admin-menu-editor-form-grid {        grid-template-columns: 1fr;    }    .admin-menu-editor-field-wide {        grid-column: auto;    }    .admin-menu-editor-actions {        flex-direction: column-reverse;    }        .admin-menu-editor-actions .kameni-btn-primary,        .admin-menu-editor-actions .kameni-btn-outline {            width: 100%;            justify-content: center;        }    .admin-menu-editor-preview-hero h3 {        font-size: 1.7rem;    }}/* =========================================================   MENU ITEMS MANAGEMENT   ========================================================= */.admin-menu-items-page {    padding: 2.5rem 0 4rem;    background: var(--kameni-warm-white);}.admin-menu-items-header {    display: flex;    gap: 1.5rem;    align-items: end;    justify-content: space-between;    margin-bottom: 2rem;}.admin-menu-items-back-link {    display: inline-flex;    margin-bottom: 1.2rem;    color: var(--kameni-terracotta);    font-size: 0.86rem;    font-weight: 700;    text-decoration: none;}    .admin-menu-items-back-link:hover {        color: var(--kameni-black);    }.admin-menu-items-description {    max-width: 720px;    margin: 0.75rem 0 0;    color: var(--kameni-stone-grey);    line-height: 1.65;}.admin-menu-item-form-panel {    margin-bottom: 1.25rem;    border: 1px solid var(--kameni-border);    border-radius: 10px;    padding: 1.4rem;    background: #ffffff;    box-shadow: 0 16px 40px rgba(30, 24, 20, 0.06);}.admin-menu-item-form-header {    display: flex;    gap: 1rem;    align-items: flex-start;    justify-content: space-between;    margin-bottom: 1.35rem;    border-bottom: 1px solid var(--kameni-border);    padding-bottom: 1.1rem;}    .admin-menu-item-form-header h2 {        margin: 0.4rem 0 0;        color: var(--kameni-black);        font-family: var(--kameni-font-display);        font-size: 1.45rem;    }.admin-menu-item-form-close {    display: grid;    width: 2rem;    height: 2rem;    flex: 0 0 2rem;    place-items: center;    border: 0;    border-radius: 50%;    background: rgba(15, 13, 11, 0.06);    color: var(--kameni-black);    font-size: 1.4rem;    line-height: 1;    cursor: pointer;}    .admin-menu-item-form-close:hover {        background: rgba(15, 13, 11, 0.12);    }.admin-menu-item-form-grid {    display: grid;    grid-template-columns: repeat(2, minmax(0, 1fr));    gap: 1.15rem;}.admin-menu-item-field {    min-width: 0;}.admin-menu-item-field-wide {    grid-column: span 2;}.admin-menu-item-field label {    display: block;    margin-bottom: 0.42rem;    color: var(--kameni-black);    font-size: 0.82rem;    font-weight: 700;}    .admin-menu-item-field label small {        margin-left: 0.35rem;        color: var(--kameni-stone-grey);        font-size: 0.72rem;        font-weight: 500;    }.admin-menu-item-field-help {    display: block;    margin-top: 0.38rem;    color: var(--kameni-stone-grey);    font-size: 0.73rem;    line-height: 1.4;}.admin-menu-item-selected-dish {    display: grid;    gap: 0.22rem;    border: 1px solid var(--kameni-border);    border-radius: 6px;    padding: 0.85rem;    background: rgba(248, 243, 235, 0.62);}    .admin-menu-item-selected-dish > span {        color: var(--kameni-stone-grey);        font-size: 0.7rem;        font-weight: 700;        letter-spacing: 0.05em;        text-transform: uppercase;    }    .admin-menu-item-selected-dish strong {        color: var(--kameni-black);        font-size: 0.95rem;    }    .admin-menu-item-selected-dish small {        color: var(--kameni-stone-grey);        font-size: 0.78rem;    }.admin-menu-item-validation-summary {    margin-bottom: 1rem;    color: #9c382c;    font-size: 0.8rem;}    .admin-menu-item-validation-summary ul {        margin: 0;        padding-left: 1.1rem;    }.admin-menu-item-form-error {    margin-top: 1.2rem;    border: 1px solid rgba(156, 56, 44, 0.22);    border-radius: 6px;    padding: 0.75rem 0.85rem;    background: rgba(156, 56, 44, 0.06);    color: #9c382c;    font-size: 0.8rem;    line-height: 1.5;}.admin-menu-item-form-actions {    display: flex;    gap: 0.75rem;    justify-content: flex-end;    margin-top: 1.5rem;    border-top: 1px solid var(--kameni-border);    padding-top: 1.25rem;}.admin-menu-items-filters {    display: grid;    grid-template-columns: minmax(220px, 1.4fr) minmax(170px, 0.8fr) auto;    gap: 1rem;    align-items: end;    margin-bottom: 1.25rem;    border: 1px solid var(--kameni-border);    border-radius: 10px;    padding: 1.1rem;    background: #ffffff;}.admin-menu-items-filter-field label {    display: block;    margin-bottom: 0.4rem;    color: var(--kameni-black);    font-size: 0.78rem;    font-weight: 700;}.admin-menu-items-filter-actions {    display: flex;    justify-content: flex-end;}.admin-menu-items-list {    overflow: hidden;    border: 1px solid var(--kameni-border);    border-radius: 10px;    background: #ffffff;    box-shadow: 0 14px 34px rgba(30, 24, 20, 0.05);}.admin-menu-items-list-header,.admin-menu-item-row {    display: grid;    grid-template-columns: minmax(180px, 1.45fr) minmax(105px, 0.65fr) minmax(110px, 0.65fr) minmax(80px, 0.4fr) minmax(110px, 0.65fr) minmax(240px, 1.2fr);    gap: 1rem;    align-items: center;}.admin-menu-items-list-header {    border-bottom: 1px solid var(--kameni-border);    padding: 0.8rem 1.1rem;    background: rgba(248, 243, 235, 0.75);    color: var(--kameni-stone-grey);    font-size: 0.72rem;    font-weight: 700;    letter-spacing: 0.06em;    text-transform: uppercase;}.admin-menu-item-row {    min-height: 94px;    border-bottom: 1px solid var(--kameni-border);    padding: 1rem 1.1rem;}    .admin-menu-item-row:last-child {        border-bottom: 0;    }.admin-menu-item-main h2 {    margin: 0;    color: var(--kameni-black);    font-family: var(--kameni-font-display);    font-size: 1.12rem;    line-height: 1.3;}.admin-menu-item-main p {    margin: 0.35rem 0 0;    color: var(--kameni-stone-grey);    font-size: 0.79rem;}.admin-menu-item-price strong {    color: var(--kameni-black);    font-size: 0.84rem;}.admin-menu-item-quantity,.admin-menu-item-order {    color: var(--kameni-black);    font-size: 0.84rem;}.admin-menu-item-unlimited {    color: var(--kameni-stone-grey);    font-style: italic;}.admin-menu-item-mobile-label {    display: none;}.admin-menu-item-status-badge {    display: inline-flex;    min-height: 1.65rem;    align-items: center;    border-radius: 999px;    padding: 0.16rem 0.6rem;    font-size: 0.72rem;    font-weight: 700;}.admin-menu-item-status-active {    background: rgba(55, 122, 76, 0.11);    color: #2d7442;}.admin-menu-item-status-disabled {    background: rgba(156, 56, 44, 0.1);    color: #9c382c;}.admin-menu-item-status-sold-out {    background: rgba(184, 72, 28, 0.11);    color: var(--kameni-terracotta);}.admin-menu-item-actions {    display: flex;    gap: 0.45rem;    flex-wrap: wrap;    align-items: center;}.admin-menu-item-edit-button,.admin-menu-item-disable-button,.admin-menu-item-enable-button,.admin-menu-item-sold-out-button,.admin-menu-item-available-button {    display: inline-flex;    min-height: 2.15rem;    align-items: center;    justify-content: center;    border-radius: 5px;    padding: 0.36rem 0.68rem;    font-family: inherit;    font-size: 0.74rem;    font-weight: 700;    cursor: pointer;}.admin-menu-item-edit-button {    border: 1px solid var(--kameni-border);    background: #ffffff;    color: var(--kameni-black);}.admin-menu-item-disable-button {    border: 1px solid rgba(156, 56, 44, 0.25);    background: rgba(156, 56, 44, 0.06);    color: #9c382c;}.admin-menu-item-enable-button,.admin-menu-item-available-button {    border: 1px solid rgba(55, 122, 76, 0.25);    background: rgba(55, 122, 76, 0.07);    color: #2d7442;}.admin-menu-item-sold-out-button {    border: 1px solid rgba(184, 72, 28, 0.24);    background: rgba(184, 72, 28, 0.07);    color: var(--kameni-terracotta);}    .admin-menu-item-edit-button:disabled,    .admin-menu-item-disable-button:disabled,    .admin-menu-item-enable-button:disabled,    .admin-menu-item-sold-out-button:disabled,    .admin-menu-item-available-button:disabled {        cursor: not-allowed;        opacity: 0.58;    }.admin-menu-item-action-error {    width: 100%;    color: #9c382c;    font-size: 0.72rem;    line-height: 1.4;}.admin-menu-items-empty-state {    border: 1px dashed rgba(30, 24, 20, 0.2);    border-radius: 10px;    padding: 3.5rem 1.25rem;    background: #ffffff;    text-align: center;}    .admin-menu-items-empty-state h2 {        margin: 0.45rem 0 0;        color: var(--kameni-black);        font-family: var(--kameni-font-display);        font-size: 1.65rem;    }    .admin-menu-items-empty-state p {        max-width: 540px;        margin: 0.8rem auto 1.3rem;        color: var(--kameni-stone-grey);        line-height: 1.6;    }@media (max-width: 991.98px) {    .admin-menu-items-page {        padding: 1.8rem 0 6rem;    }    .admin-menu-items-header {        align-items: flex-start;        flex-direction: column;    }    .admin-menu-items-filters {        grid-template-columns: repeat(2, minmax(0, 1fr));    }    .admin-menu-items-filter-actions {        grid-column: span 2;    }        .admin-menu-items-filter-actions .kameni-btn-outline {            width: 100%;            justify-content: center;        }    .admin-menu-items-list-header {        display: none;    }    .admin-menu-item-row {        grid-template-columns: repeat(2, minmax(0, 1fr));        gap: 1rem;        padding: 1.05rem;    }    .admin-menu-item-main {        grid-column: span 2;    }    .admin-menu-item-actions {        grid-column: span 2;    }    .admin-menu-item-mobile-label {        display: block;        margin-bottom: 0.28rem;        color: var(--kameni-stone-grey);        font-size: 0.67rem;        font-weight: 700;        letter-spacing: 0.05em;        text-transform: uppercase;    }}@media (max-width: 640px) {    .admin-menu-items-page {        padding-top: 1.35rem;    }    .admin-menu-items-header .kameni-btn-primary {        width: 100%;        justify-content: center;    }    .admin-menu-item-form-panel {        margin-inline: -0.25rem;        padding: 1.1rem;    }    .admin-menu-item-form-grid,    .admin-menu-items-filters,    .admin-menu-item-row {        grid-template-columns: 1fr;    }    .admin-menu-item-field-wide,    .admin-menu-item-main,    .admin-menu-item-actions,    .admin-menu-items-filter-actions {        grid-column: auto;    }    .admin-menu-item-form-actions {        flex-direction: column-reverse;    }        .admin-menu-item-form-actions .kameni-btn-primary,        .admin-menu-item-form-actions .kameni-btn-outline {            width: 100%;            justify-content: center;        }    .admin-menu-item-actions {        align-items: stretch;    }    .admin-menu-item-edit-button,    .admin-menu-item-disable-button,    .admin-menu-item-enable-button,    .admin-menu-item-sold-out-button,    .admin-menu-item-available-button {        flex: 1 1 auto;    }}/* =========================================================   MENU ITEM PRICING & PROMOTIONS   ========================================================= */.admin-menu-item-pricing-button {    display: inline-flex;    min-height: 2.15rem;    align-items: center;    justify-content: center;    border: 1px solid rgba(184, 72, 28, 0.25);    border-radius: 5px;    padding: 0.36rem 0.68rem;    background: rgba(184, 72, 28, 0.07);    color: var(--kameni-terracotta);    font-family: inherit;    font-size: 0.74rem;    font-weight: 700;    text-decoration: none;}    .admin-menu-item-pricing-button:hover {        border-color: var(--kameni-terracotta);        background: rgba(184, 72, 28, 0.13);    }.admin-price-rules-page {    padding: 2.5rem 0 4rem;    background: var(--kameni-warm-white);}.admin-price-rules-header {    display: flex;    gap: 1.5rem;    align-items: end;    justify-content: space-between;    margin-bottom: 1.5rem;}.admin-price-rules-back-link {    display: inline-flex;    margin-bottom: 1.2rem;    color: var(--kameni-terracotta);    font-size: 0.86rem;    font-weight: 700;    text-decoration: none;}    .admin-price-rules-back-link:hover {        color: var(--kameni-black);    }.admin-price-rules-description {    max-width: 720px;    margin: 0.75rem 0 0;    color: var(--kameni-stone-grey);    line-height: 1.65;}.admin-price-rules-item-summary {    display: flex;    gap: 1rem;    align-items: center;    justify-content: space-between;    margin-bottom: 1.25rem;    border: 1px solid var(--kameni-border);    border-radius: 10px;    padding: 1.25rem;    background: #ffffff;    box-shadow: 0 12px 28px rgba(30, 24, 20, 0.04);}    .admin-price-rules-item-summary h2 {        margin: 0.38rem 0 0;        color: var(--kameni-black);        font-family: var(--kameni-font-display);        font-size: 1.45rem;    }    .admin-price-rules-item-summary p {        margin: 0.35rem 0 0;        color: var(--kameni-stone-grey);        font-size: 0.82rem;    }.admin-price-rules-regular-price {    display: grid;    gap: 0.25rem;    justify-items: end;}    .admin-price-rules-regular-price span {        color: var(--kameni-stone-grey);        font-size: 0.72rem;        font-weight: 700;        letter-spacing: 0.05em;        text-transform: uppercase;    }    .admin-price-rules-regular-price strong {        color: var(--kameni-black);        font-size: 1.2rem;    }.admin-price-rule-form-panel {    margin-bottom: 1.25rem;    border: 1px solid var(--kameni-border);    border-radius: 10px;    padding: 1.4rem;    background: #ffffff;    box-shadow: 0 16px 40px rgba(30, 24, 20, 0.06);}.admin-price-rule-form-header {    display: flex;    gap: 1rem;    align-items: flex-start;    justify-content: space-between;    margin-bottom: 1.35rem;    border-bottom: 1px solid var(--kameni-border);    padding-bottom: 1.1rem;}    .admin-price-rule-form-header h2 {        margin: 0.4rem 0 0;        color: var(--kameni-black);        font-family: var(--kameni-font-display);        font-size: 1.45rem;    }.admin-price-rule-form-grid {    display: grid;    grid-template-columns: repeat(2, minmax(0, 1fr));    gap: 1.15rem;}.admin-price-rule-weekdays {    display: flex;    gap: 0.55rem;    flex-wrap: wrap;}    .admin-price-rule-weekdays label {        display: inline-flex;        min-width: 3.5rem;        min-height: 2.25rem;        align-items: center;        justify-content: center;        gap: 0.35rem;        margin: 0;        border: 1px solid var(--kameni-border);        border-radius: 5px;        padding: 0.35rem 0.5rem;        background: #ffffff;        color: var(--kameni-black);        font-size: 0.76rem;        font-weight: 700;        cursor: pointer;    }    .admin-price-rule-weekdays input {        margin: 0;    }.admin-price-rules-empty-state {    border: 1px dashed rgba(30, 24, 20, 0.2);    border-radius: 10px;    padding: 3.5rem 1.25rem;    background: #ffffff;    text-align: center;}    .admin-price-rules-empty-state h2 {        margin: 0.45rem 0 0;        color: var(--kameni-black);        font-family: var(--kameni-font-display);        font-size: 1.65rem;    }    .admin-price-rules-empty-state p {        max-width: 560px;        margin: 0.8rem auto 1.3rem;        color: var(--kameni-stone-grey);        line-height: 1.6;    }.admin-price-rules-list {    overflow: hidden;    border: 1px solid var(--kameni-border);    border-radius: 10px;    background: #ffffff;    box-shadow: 0 14px 34px rgba(30, 24, 20, 0.05);}.admin-price-rules-list-header,.admin-price-rule-row {    display: grid;    grid-template-columns: minmax(210px, 1.25fr) minmax(185px, 1fr) minmax(75px, 0.4fr) minmax(105px, 0.55fr) minmax(180px, 0.8fr);    gap: 1rem;    align-items: center;}.admin-price-rules-list-header {    border-bottom: 1px solid var(--kameni-border);    padding: 0.8rem 1.1rem;    background: rgba(248, 243, 235, 0.75);    color: var(--kameni-stone-grey);    font-size: 0.72rem;    font-weight: 700;    letter-spacing: 0.06em;    text-transform: uppercase;}.admin-price-rule-row {    min-height: 94px;    border-bottom: 1px solid var(--kameni-border);    padding: 1rem 1.1rem;}    .admin-price-rule-row:last-child {        border-bottom: 0;    }.admin-price-rule-schedule,.admin-price-rule-adjustment {    display: grid;    gap: 0.25rem;}    .admin-price-rule-schedule strong,    .admin-price-rule-adjustment strong {        color: var(--kameni-black);        font-size: 0.86rem;    }    .admin-price-rule-schedule span,    .admin-price-rule-adjustment span {        color: var(--kameni-stone-grey);        font-size: 0.76rem;    }    .admin-price-rule-schedule small {        color: var(--kameni-stone-grey);        font-size: 0.7rem;        line-height: 1.4;    }.admin-price-rule-priority strong {    color: var(--kameni-black);    font-size: 0.86rem;}.admin-price-rule-actions {    display: flex;    gap: 0.45rem;    flex-wrap: wrap;    align-items: center;}.admin-price-rule-mobile-label {    display: none;}@media (max-width: 991.98px) {    .admin-price-rules-page {        padding: 1.8rem 0 6rem;    }    .admin-price-rules-header {        align-items: flex-start;        flex-direction: column;    }    .admin-price-rules-list-header {        display: none;    }    .admin-price-rule-row {        grid-template-columns: repeat(2, minmax(0, 1fr));        gap: 1rem;        padding: 1.05rem;    }    .admin-price-rule-schedule,    .admin-price-rule-adjustment,    .admin-price-rule-actions {        grid-column: span 2;    }    .admin-price-rule-mobile-label {        display: block;        margin-bottom: 0.28rem;        color: var(--kameni-stone-grey);        font-size: 0.67rem;        font-weight: 700;        letter-spacing: 0.05em;        text-transform: uppercase;    }}@media (max-width: 640px) {    .admin-price-rules-page {        padding-top: 1.35rem;    }    .admin-price-rules-header .kameni-btn-primary {        width: 100%;        justify-content: center;    }    .admin-price-rules-item-summary {        align-items: flex-start;        flex-direction: column;    }    .admin-price-rules-regular-price {        justify-items: start;    }    .admin-price-rule-form-panel {        margin-inline: -0.25rem;        padding: 1.1rem;    }    .admin-price-rule-form-grid,    .admin-price-rule-row {        grid-template-columns: 1fr;    }    .admin-price-rule-schedule,    .admin-price-rule-adjustment,    .admin-price-rule-actions {        grid-column: auto;    }    .admin-price-rule-weekdays {        gap: 0.4rem;    }        .admin-price-rule-weekdays label {            min-width: 3.2rem;        }    .admin-price-rule-actions {        align-items: stretch;    }        .admin-price-rule-actions .admin-menu-item-edit-button,        .admin-price-rule-actions .admin-menu-item-disable-button,        .admin-price-rule-actions .admin-menu-item-enable-button {            flex: 1 1 auto;        }}.header-left-actions {    display: flex;    align-items: center;}.site-menu-toggle {    display: inline-flex;    width: 2.45rem;    height: 2.45rem;    flex-direction: column;    align-items: center;    justify-content: center;    gap: 0.28rem;    border: 1px solid rgba(15, 13, 11, 0.14);    border-radius: 5px;    background: transparent;    cursor: pointer;}    .site-menu-toggle:hover {        border-color: var(--kameni-terracotta);        background: rgba(184, 72, 28, 0.06);    }    .site-menu-toggle span {        display: block;        width: 1.05rem;        height: 2px;        border-radius: 999px;        background: var(--kameni-black);    }.site-side-menu-backdrop {    position: fixed;    z-index: 1100;    inset: 0;    visibility: hidden;    background: rgba(15, 13, 11, 0);    opacity: 0;    pointer-events: none;    transition: opacity 180ms ease, visibility 180ms ease;}    .site-side-menu-backdrop.is-visible {        visibility: visible;        background: rgba(15, 13, 11, 0.42);        opacity: 1;        pointer-events: auto;    }.site-side-menu {    position: fixed;    z-index: 1150;    top: 0;    bottom: 0;    left: 0;    display: flex;    width: min(340px, calc(100vw - 2rem));    flex-direction: column;    border-right: 1px solid var(--kameni-border);    background: var(--kameni-warm-white);    box-shadow: 14px 0 36px rgba(15, 13, 11, 0.18);    transform: translateX(-105%);    transition: transform 220ms ease;}    .site-side-menu.is-open {        transform: translateX(0);    }.site-side-menu-header {    display: flex;    align-items: flex-start;    justify-content: space-between;    border-bottom: 1px solid var(--kameni-border);    padding: 1.4rem 1.25rem 1.15rem;}    .site-side-menu-header h2 {        margin: 0.4rem 0 0;        font-family: var(--kameni-font-display);        font-size: 1.55rem;    }.site-side-menu-close {    display: grid;    width: 2.2rem;    height: 2.2rem;    place-items: center;    border: 1px solid var(--kameni-border);    border-radius: 50%;    background: #ffffff;    color: var(--kameni-black);    cursor: pointer;    font-size: 1.5rem;    line-height: 1;}.site-side-menu-navigation {    display: grid;    gap: 0.25rem;    padding: 1rem 0.75rem;}.site-side-menu-link-icon {    display: inline-flex;    align-items: center;    justify-content: center;    width: 1.25rem; /* keeps all labels aligned */    min-width: 1.25rem;    flex-shrink: 0;}.site-side-menu-link {    display: flex;    align-items: center;    gap: 0.85rem; /* space between icon and text */}    .site-side-menu-link:hover {        background: rgba(184, 72, 28, 0.07);        color: var(--kameni-black);    }    .site-side-menu-link.active {        border-left-color: var(--kameni-terracotta);        background: rgba(184, 72, 28, 0.11);        color: var(--kameni-black);    }.site-side-menu-footer {    margin-top: auto;    border-top: 1px solid var(--kameni-border);    padding: 1.15rem 1.25rem;}    .site-side-menu-footer form {        margin: 0;    }.site-side-menu-logout {    border: 0;    padding: 0;    background: transparent;    color: var(--kameni-terracotta);    cursor: pointer;    font: inherit;    font-size: 0.78rem;    font-weight: 800;    letter-spacing: 0.05em;    text-transform: uppercase;}@media (max-width: 991.98px) {    .site-side-menu {        width: min(320px, calc(100vw - 1.25rem));    }}/* Side-menu link cleanup */.site-side-menu .site-side-menu-link,.site-side-menu .site-side-menu-link:visited,.site-side-menu .site-side-menu-link:hover,.site-side-menu .site-side-menu-link:focus,.site-side-menu .site-side-menu-link.active {    text-decoration: none !important;}.site-side-menu-link {    min-height: 3.9rem;    gap: 1rem;    padding: 0.95rem 1.15rem;    font-size: 1.08rem;    font-weight: 700;    line-height: 1.2;}.site-side-menu-link-icon {    display: inline-flex;    width: 1.5rem;    min-width: 1.5rem;    align-items: center;    justify-content: center;    font-size: 1.1rem;}.site-side-menu-section-title {    margin-bottom: 0.8rem;    font-size: 0.78rem;    font-weight: 800;}.site-side-menu-navigation {    gap: 0.55rem;    padding: 1.6rem 1rem;}/* Keep exactly one hamburger visible per breakpoint */.header-left-actions {    display: flex;    align-items: center;}.mobile-site-menu-toggle {    display: none;}@media (max-width: 991.98px) {    .header-left-actions {        display: none !important;    }    .mobile-site-menu-toggle {        display: inline-flex;    }}/* =========================================================   HEADER BRAND + MOBILE MENU FINAL FIX   ========================================================= */.site-header {    overflow: hidden;}.brand-logo,.mobile-brand-logo {    flex: 0 0 auto;    overflow: hidden;}.brand-logo {    width: 220px;    height: 64px;}    .brand-logo img {        width: 220px !important;        height: 64px !important;        max-width: 100% !important;        max-height: 64px !important;        object-fit: contain;        transform: scale(1.35) !important;        transform-origin: center;    }.header-left-actions {    display: flex;    align-items: center;}.mobile-site-menu-toggle {    display: none;}@media (max-width: 991.98px) {    .site-header {        overflow: visible;    }    .header-left-actions {        display: none !important;    }    .mobile-site-menu-toggle {        display: inline-flex !important;    }    .mobile-actions {        gap: 0.65rem;    }    .mobile-brand-logo {        width: 118px;        height: 42px;        margin-inline: auto;    }    .mobile-brand-logo img {        width: 118px !important;        height: 42px !important;        max-width: 100% !important;        max-height: 42px !important;        object-fit: contain;        transform: none !important;    }}/* =========================================================   LANGUAGE SWITCHER   ========================================================= */.site-language-switcher {    --language-primary: var(--kameni-terracotta);    --language-text: var(--kameni-terracotta);    position: relative;    display: grid;    grid-template-columns: 1fr 1fr;    align-items: center;    width: 100px;    height: 28px;    padding: 2px;    overflow: hidden;    border: 1px solid var(--language-primary);    border-radius: 999px;    background: transparent;}    /* Sliding terracotta active background */    .site-language-switcher::before {        content: "";        position: absolute;        top: 2px;        bottom: 2px;        left: 2px;        width: calc(50% - 2px);        border-radius: 999px;        background: var(--language-primary);        pointer-events: none;        transition: transform 240ms cubic-bezier(.22, .75, .25, 1);    }    /* EN active */    .site-language-switcher.is-english::before {        transform: translateX(0);    }    /* SRB active */    .site-language-switcher.is-serbian::before {        transform: translateX(100%);    }.site-language-option {    position: relative;    z-index: 1;    display: flex;    height: 100%;    align-items: center;    justify-content: center;    border-radius: 999px;    color: var(--language-text);    cursor: pointer;    font-size: 0.64rem;    font-weight: 700;    letter-spacing: 0.03em;    line-height: 1;    text-decoration: none;    transition: color 160ms ease, transform 160ms ease;}    .site-language-option:hover {        transform: scale(1.05);    }    .site-language-option:focus-visible {        outline: 2px solid var(--kameni-terracotta);        outline-offset: 3px;    }/* White text only on selected language */.site-language-switcher.is-english .site-language-option:first-child,.site-language-switcher.is-serbian .site-language-option:last-child {    color: #ffffff;}/* Keep inactive option terracotta */.site-language-switcher.is-english .site-language-option:last-child,.site-language-switcher.is-serbian .site-language-option:first-child {    color: var(--language-text);}/* A little smaller again on mobile */.mobile-language-switcher {    position: absolute;    right: 0;    margin: 0;}    .mobile-language-switcher .site-language-option {        font-size: 0.6rem;    }@media (prefers-reduced-motion: reduce) {    .site-language-switcher::before,    .site-language-option {        transition: none;    }}@media (max-width: 991.98px) {    .mobile-brand-logo {        width: 180px !important;        height: 58px !important;        transform: translate(-50%, -50%) scale(1.45) !important;        transform-origin: center;    }        .mobile-brand-logo img {            width: 100% !important;            height: 100% !important;            max-width: none !important;            object-fit: contain;        }}/* TENANT USERS */.admin-team-page {    min-height: 100%;    padding: 2.25rem 0 4.5rem;    background: radial-gradient(circle at 75% 8%, rgba(204, 83, 37, 0.06), transparent 26rem), #fbf8f3;}.team-page-header {    display: flex;    align-items: flex-end;    justify-content: space-between;    gap: 2rem;    padding-bottom: 1.75rem;    border-bottom: 1px solid #e5ddd3;}.team-page-header-copy {    max-width: 43rem;}.team-page-description {    max-width: 38rem;    margin: 0.8rem 0 0;    color: #665f59;    font-size: 1rem;    line-height: 1.7;}.team-page-header-actions {    display: flex;    align-items: center;    gap: 1rem;}.team-member-count {    display: flex;    flex-direction: column;    align-items: flex-end;    min-width: 6rem;}    .team-member-count strong {        color: #28231f;        font-family: Georgia, "Times New Roman", serif;        font-size: 2rem;        font-weight: 400;        line-height: 1;    }    .team-member-count span {        margin-top: 0.35rem;        color: #82776c;        font-size: 0.68rem;        letter-spacing: 0.11em;        text-transform: uppercase;    }.team-add-icon {    display: inline-flex;    margin-right: 0.35rem;    font-size: 1.15rem;    line-height: 0;}.team-insight-strip {    display: grid;    grid-template-columns: repeat(4, minmax(0, 1fr));    margin: 1.7rem 0;    border: 1px solid #e1d8cd;    background: rgba(255, 252, 247, 0.72);}.team-insight-card {    min-height: 8.2rem;    padding: 1.25rem 1.35rem;    border-right: 1px solid #e1d8cd;}    .team-insight-card:last-child {        border-right: 0;    }.team-insight-label {    display: block;    color: #bd4b25;    font-size: 0.67rem;    font-weight: 700;    letter-spacing: 0.13em;}.team-insight-card strong {    display: block;    margin-top: 0.7rem;    color: #29231f;    font-family: Georgia, "Times New Roman", serif;    font-size: 2rem;    font-weight: 400;}.team-insight-card small,.team-insight-card p {    display: block;    margin: 0.55rem 0 0;    color: #746b62;    font-size: 0.79rem;    line-height: 1.55;}.team-insight-card-note {    background: #262421;}    .team-insight-card-note .team-insight-label {        color: #d76a41;    }    .team-insight-card-note p {        color: #e8ded4;    }.team-form-panel {    margin: 1.7rem 0;    padding: 1.65rem;    border: 1px solid #dcd1c5;    background: #fffdf9;    box-shadow: 0 1rem 2.5rem rgba(45, 31, 19, 0.06);}.team-form-header {    display: flex;    justify-content: space-between;    gap: 1.5rem;    padding-bottom: 1.25rem;    border-bottom: 1px solid #e8dfd5;}    .team-form-header h2 {        margin: 0.35rem 0 0;        color: #2c2722;        font-family: Georgia, "Times New Roman", serif;        font-size: 1.8rem;        font-weight: 400;    }    .team-form-header p:not(.kameni-eyebrow) {        margin: 0.5rem 0 0;        color: #736a60;        line-height: 1.6;    }.team-form-close {    width: 2.2rem;    height: 2.2rem;    border: 1px solid #d8cec2;    border-radius: 50%;    background: transparent;    color: #5d554e;    cursor: pointer;    font-size: 1.6rem;    line-height: 1;}    .team-form-close:hover:not(:disabled) {        border-color: #c6542b;        color: #c6542b;    }.team-form-grid {    display: grid;    grid-template-columns: repeat(2, minmax(0, 1fr));    gap: 1.2rem;    padding: 1.5rem 0;}.team-form-field {    display: flex;    flex-direction: column;    gap: 0.45rem;}.team-form-field-wide {    grid-column: 1 / -1;}.team-form-field label {    color: #625950;    font-size: 0.69rem;    font-weight: 700;    letter-spacing: 0.1em;    text-transform: uppercase;}.team-form-help {    color: #82776d;    font-size: 0.76rem;    line-height: 1.5;}.team-owner-indicator {    display: flex;    align-items: center;    min-height: 2.8rem;}.team-checkbox-row {    display: flex;    align-items: flex-start;    gap: 0.75rem;    cursor: pointer;}    .team-checkbox-row input {        width: 1rem;        height: 1rem;        margin-top: 0.18rem;        accent-color: #c6542b;    }    .team-checkbox-row span {        display: flex;        flex-direction: column;        gap: 0.2rem;    }    .team-checkbox-row strong {        color: #3d3731;        font-size: 0.88rem;    }    .team-checkbox-row small {        color: #81766c;        font-size: 0.76rem;        line-height: 1.45;    }.team-location-access-section {    margin-top: 0.3rem;    padding-top: 1.35rem;    border-top: 1px solid #e8dfd5;}.team-location-access-heading {    display: flex;    align-items: flex-start;    justify-content: space-between;    gap: 1.5rem;}    .team-location-access-heading h3 {        margin: 0.3rem 0 0;        color: #2d2823;        font-family: Georgia, "Times New Roman", serif;        font-size: 1.3rem;        font-weight: 400;    }    .team-location-access-heading p:not(.kameni-eyebrow) {        max-width: 36rem;        margin: 0.45rem 0 0;        color: #746b61;        font-size: 0.85rem;        line-height: 1.55;    }.team-all-locations-toggle {    min-width: 12.5rem;    padding: 0.75rem;    border: 1px solid #e1d7cb;    background: #fdf9f4;}.team-location-grid {    display: grid;    grid-template-columns: repeat(2, minmax(0, 1fr));    gap: 0.8rem;    margin-top: 1.1rem;}.team-location-option {    display: flex;    align-items: center;    gap: 0.75rem;    min-height: 4.4rem;    padding: 0.85rem;    border: 1px solid #e3d8cc;    background: #fffdf9;    cursor: pointer;    transition: border-color 0.18s ease, background 0.18s ease;}    .team-location-option:hover {        border-color: #c96a46;    }.team-location-option-selected {    border-color: #c6542b;    background: #fff7f1;}.team-location-option input {    accent-color: #c6542b;}.team-location-option-icon {    color: #c6542b;    font-size: 1.35rem;}.team-location-option span:last-child {    display: flex;    flex-direction: column;    gap: 0.2rem;}.team-location-option strong {    color: #3e3730;    font-size: 0.9rem;}.team-location-option small {    color: #83776c;    font-size: 0.74rem;}.team-no-locations {    margin-top: 1rem;    padding: 0.95rem;    border: 1px dashed #d7cabc;    color: #776b60;    font-size: 0.86rem;}.team-form-error,.team-validation-summary {    margin-top: 1.1rem;    padding: 0.85rem 1rem;    border: 1px solid #d7886b;    background: #fff3ed;    color: #9f3d1c;    font-size: 0.84rem;}.team-form-actions {    display: flex;    justify-content: flex-end;    gap: 0.75rem;    margin-top: 1.6rem;}.team-filters {    display: grid;    grid-template-columns: minmax(16rem, 1.7fr) minmax(9rem, 0.8fr) minmax(9rem, 0.8fr) auto;    align-items: end;    gap: 0.9rem;    margin: 1.7rem 0;    padding: 1rem;    border: 1px solid #e2d8ce;    background: #fffdf9;}.team-filter-field {    display: flex;    flex-direction: column;    gap: 0.45rem;}    .team-filter-field label {        color: #675d54;        font-size: 0.67rem;        font-weight: 700;        letter-spacing: 0.1em;        text-transform: uppercase;    }.team-filter-actions {    display: flex;    justify-content: flex-end;}.team-list {    border: 1px solid #e1d7cd;    background: #fffdf9;}.team-list-header,.team-member-row {    display: grid;    grid-template-columns: minmax(15rem, 1.5fr) minmax(8rem, 0.7fr) minmax(12rem, 1.1fr) minmax(6rem, 0.55fr) minmax(10rem, 0.85fr);    gap: 1rem;    align-items: center;}.team-list-header {    padding: 0.8rem 1.15rem;    border-bottom: 1px solid #e4d9ce;    background: #f7f1ea;    color: #81766d;    font-size: 0.62rem;    font-weight: 700;    letter-spacing: 0.1em;}.team-member-row {    min-height: 6.4rem;    padding: 1rem 1.15rem;    border-bottom: 1px solid #eee5dc;}    .team-member-row:last-child {        border-bottom: 0;    }.team-member-main {    display: flex;    align-items: center;    gap: 0.85rem;    min-width: 0;}.team-member-avatar {    display: grid;    flex: 0 0 auto;    width: 2.9rem;    height: 2.9rem;    place-items: center;    border: 1px solid #d7c7b7;    border-radius: 50%;    background: #2c2925;    color: #f7eee5;    font-family: Georgia, "Times New Roman", serif;    font-size: 0.9rem;}.team-member-main h2 {    overflow: hidden;    margin: 0;    color: #302a24;    font-family: Georgia, "Times New Roman", serif;    font-size: 1.03rem;    font-weight: 400;    text-overflow: ellipsis;    white-space: nowrap;}.team-member-main p,.team-member-main small {    display: block;    overflow: hidden;    margin: 0.2rem 0 0;    color: #776c62;    font-size: 0.76rem;    text-overflow: ellipsis;    white-space: nowrap;}.team-member-main small {    color: #a09890;    font-size: 0.69rem;}.team-role-badge,.team-status-badge,.team-all-locations-badge {    display: inline-flex;    align-items: center;    justify-content: center;    width: fit-content;    min-height: 1.8rem;    padding: 0.25rem 0.6rem;    border: 1px solid transparent;    border-radius: 999px;    font-size: 0.69rem;    font-weight: 700;    letter-spacing: 0.04em;}.team-role-owner {    border-color: #d98460;    background: #fff0e8;    color: #a23e1d;}.team-role-manager {    border-color: #d9c692;    background: #fff8df;    color: #806516;}.team-role-kitchen {    border-color: #bed4b8;    background: #f0f8ed;    color: #527a45;}.team-role-standard {    border-color: #d7d0ca;    background: #f5f3f1;    color: #655d57;}.team-owner-note {    display: block;    margin-top: 0.35rem;    color: #9a6f4a;    font-size: 0.7rem;}.team-all-locations-badge {    gap: 0.35rem;    border-color: #c7d9be;    background: #f2f8ee;    color: #527444;    font-weight: 600;}.team-location-summary {    display: flex;    flex-direction: column;    gap: 0.28rem;}    .team-location-summary strong {        color: #50463e;        font-size: 0.8rem;        font-weight: 600;    }    .team-location-summary span {        color: #81776d;        font-size: 0.73rem;        line-height: 1.45;    }.team-status-active {    border-color: #b9d5aa;    background: #eef8e9;    color: #4c7841;}.team-status-inactive {    border-color: #d8d0c8;    background: #f4f1ee;    color: #726961;}.team-member-actions {    display: flex;    flex-wrap: wrap;    gap: 0.45rem;}.team-edit-button,.team-activate-button,.team-deactivate-button {    min-height: 2rem;    padding: 0.35rem 0.65rem;    border: 1px solid transparent;    background: transparent;    cursor: pointer;    font-size: 0.72rem;    font-weight: 700;}.team-edit-button {    border-color: #d5c9bc;    color: #5f554c;}    .team-edit-button:hover:not(:disabled) {        border-color: #bfae9e;        background: #faf6f1;    }.team-activate-button {    border-color: #a9cda0;    background: #eef7eb;    color: #4d7744;}.team-deactivate-button {    border-color: #e0b6a4;    background: #fff3ee;    color: #ab4320;}.team-action-error {    width: 100%;    color: #b23e1a;    font-size: 0.72rem;    line-height: 1.4;}.team-state,.team-empty-state,.team-error-state {    display: flex;    flex-direction: column;    align-items: flex-start;    max-width: 42rem;    margin: 3rem auto;    padding: 2.25rem;    border: 1px solid #e0d5c9;    background: #fffdf9;}.team-empty-state {    align-items: center;    text-align: center;}.team-empty-icon {    display: grid;    width: 3rem;    height: 3rem;    margin-bottom: 1rem;    place-items: center;    border: 1px solid #d5c4b2;    border-radius: 50%;    color: #c6542b;    font-family: Georgia, "Times New Roman", serif;    font-size: 1.5rem;}.team-state-title,.team-empty-state h2,.team-error-state h2 {    margin: 0.35rem 0 0;    color: #312a24;    font-family: Georgia, "Times New Roman", serif;    font-size: 1.8rem;    font-weight: 400;}.team-empty-state p:not(.kameni-eyebrow),.team-error-state p:not(.kameni-eyebrow) {    max-width: 34rem;    margin: 0.75rem 0 1.25rem;    color: #776d63;    line-height: 1.65;}.team-error-state {    flex-direction: row;    align-items: center;    justify-content: space-between;    gap: 1.5rem;    border-color: #e3b09c;    background: #fff8f4;}@media (max-width: 1050px) {    .team-insight-strip {        grid-template-columns: repeat(2, minmax(0, 1fr));    }    .team-insight-card:nth-child(2) {        border-right: 0;    }    .team-insight-card:nth-child(-n + 2) {        border-bottom: 1px solid #e1d8cd;    }    .team-list-header {        display: none;    }    .team-member-row {        grid-template-columns: minmax(14rem, 1.3fr) minmax(8rem, 0.7fr) minmax(11rem, 1fr);    }    .team-member-status,    .team-member-actions {        grid-column: auto;    }    .team-member-actions {        justify-content: flex-start;    }}@media (max-width: 760px) {    .admin-team-page {        padding-top: 1.3rem;    }    .team-page-header,    .team-page-header-actions,    .team-location-access-heading,    .team-error-state {        align-items: flex-start;        flex-direction: column;    }    .team-page-header-actions {        width: 100%;    }    .team-member-count {        align-items: flex-start;    }    .team-page-header-actions .kameni-btn-primary {        width: 100%;    }    .team-insight-strip,    .team-location-grid,    .team-form-grid,    .team-filters {        grid-template-columns: 1fr;    }    .team-insight-card,    .team-insight-card:nth-child(2) {        border-right: 0;        border-bottom: 1px solid #e1d8cd;    }        .team-insight-card:last-child {            border-bottom: 0;        }    .team-all-locations-toggle {        width: 100%;    }    .team-member-row {        grid-template-columns: 1fr;        gap: 0.8rem;    }        .team-member-row > div {            position: relative;            padding-left: 7.4rem;        }            .team-member-row > div::before {                position: absolute;                left: 0;                color: #90847a;                font-size: 0.62rem;                font-weight: 700;                letter-spacing: 0.09em;            }    .team-member-main {        padding-left: 0 !important;    }        .team-member-main::before {            display: none;        }    .team-member-role::before {        content: "ROLE";    }    .team-member-locations::before {        content: "LOCATIONS";    }    .team-member-status::before {        content: "STATUS";    }    .team-member-actions {        padding-left: 0 !important;    }        .team-member-actions::before {            display: none;        }    .team-form-panel,    .team-state,    .team-empty-state,    .team-error-state {        padding: 1.25rem;    }    .team-form-actions {        flex-direction: column-reverse;    }        .team-form-actions button {            width: 100%;        }}.kameni-login-help-text {    display: block;    margin-top: 0.45rem;    font-size: 0.78rem;    line-height: 1.45;    opacity: 0.76;}.kameni-login-password-input {    position: relative;}    .kameni-login-password-input .kameni-login-control {        padding-right: 3.25rem;    }.kameni-login-password-toggle {    position: absolute;    top: 50%;    right: 0.8rem;    display: inline-flex;    align-items: center;    justify-content: center;    width: 2.2rem;    height: 2.2rem;    padding: 0;    border: 0;    background: transparent;    color: inherit;    cursor: pointer;    transform: translateY(-50%);    opacity: 0.65;    transition: opacity 0.16s ease, transform 0.16s ease;}    .kameni-login-password-toggle:hover,    .kameni-login-password-toggle:focus-visible {        opacity: 1;        transform: translateY(-50%) scale(1.06);    }    .kameni-login-password-toggle:focus-visible {        outline: 2px solid currentColor;        outline-offset: 2px;        border-radius: 0.45rem;    }    .kameni-login-password-toggle svg {        width: 1.25rem;        height: 1.25rem;        fill: none;        stroke: currentColor;        stroke-linecap: round;        stroke-linejoin: round;        stroke-width: 1.9;    }@media (max-width: 991.98px) {    .mobile-language-switcher {        z-index: 5;        pointer-events: auto;    }        .mobile-language-switcher .site-language-option {            position: relative;            z-index: 1;            pointer-events: auto;        }}/* POS CSS */.waiter-pos-page {    min-height: 100vh;    padding: 24px;}.waiter-pos-header {    display: flex;    justify-content: space-between;    gap: 16px;    align-items: flex-start;    margin-bottom: 20px;}    .waiter-pos-header h1 {        margin: 0;        font-size: 32px;        font-weight: 800;    }.waiter-pos-eyebrow {    margin: 0 0 4px;    font-size: 12px;    text-transform: uppercase;    letter-spacing: .12em;    opacity: .7;}.waiter-pos-subtitle {    margin: 4px 0 0;    opacity: .75;}.waiter-pos-header-actions {    display: flex;    align-items: center;    gap: 10px;}.waiter-shift-pill {    border: 1px solid rgba(255,255,255,.14);    border-radius: 999px;    padding: 8px 14px;    display: flex;    flex-direction: column;    line-height: 1.1;}    .waiter-shift-pill span {        font-size: 11px;        opacity: .65;    }.waiter-start-card {    max-width: 420px;    border: 1px solid rgba(255,255,255,.12);    border-radius: 18px;    padding: 22px;    background: rgba(255,255,255,.04);}.waiter-pos-layout {    display: grid;    grid-template-columns: minmax(0, 1fr) 380px;    gap: 20px;    align-items: start;}.waiter-floor-panel,.waiter-order-panel {    border: 1px solid rgba(255,255,255,.12);    border-radius: 18px;    background: rgba(255,255,255,.04);    padding: 18px;}.waiter-floor-area + .waiter-floor-area {    margin-top: 24px;}.waiter-floor-area-header {    display: flex;    justify-content: space-between;    align-items: center;    margin-bottom: 14px;}    .waiter-floor-area-header h2 {        margin: 0;        font-size: 20px;        font-weight: 700;    }.waiter-floor-canvas {    position: relative;    overflow: auto;    border: 1px dashed rgba(255,255,255,.18);    border-radius: 16px;    background: rgba(0,0,0,.12);    min-height: 360px;}.waiter-table {    position: absolute;    border: 1px solid rgba(255,255,255,.22);    border-radius: 16px;    padding: 8px;    cursor: pointer;    color: inherit;    display: flex;    flex-direction: column;    justify-content: center;    align-items: center;    gap: 3px;    transition: transform .15s ease, filter .15s ease, border-color .15s ease;}    .waiter-table.rectangle {        border-radius: 16px;    }    .waiter-table.round {        border-radius: 999px;    }    .waiter-table:hover {        filter: brightness(1.12);        border-color: rgba(255,255,255,.45);    }    .waiter-table.free {        background: rgba(46, 204, 113, .20);    }    .waiter-table.occupied {        background: rgba(231, 76, 60, .22);    }.waiter-table-number {    font-size: 18px;    font-weight: 800;}.waiter-table-name {    font-size: 12px;    opacity: .85;}.waiter-table-status {    font-size: 11px;    text-transform: uppercase;    letter-spacing: .08em;    opacity: .75;}.waiter-table-total {    font-size: 13px;    font-weight: 700;}.waiter-order-header {    display: flex;    justify-content: space-between;    align-items: start;    gap: 10px;    margin-bottom: 18px;}    .waiter-order-header h2 {        margin: 0;        font-size: 22px;        font-weight: 800;    }.waiter-small-status {    border-radius: 999px;    padding: 6px 10px;    font-size: 12px;    font-weight: 700;}    .waiter-small-status.free {        background: rgba(46, 204, 113, .20);    }    .waiter-small-status.occupied {        background: rgba(231, 76, 60, .22);    }.waiter-order-empty {    opacity: .7;}.waiter-order-summary {    display: grid;    grid-template-columns: 1fr 1fr;    gap: 10px;    margin-bottom: 16px;}    .waiter-order-summary > div {        border: 1px solid rgba(255,255,255,.1);        border-radius: 14px;        padding: 12px;    }    .waiter-order-summary span {        display: block;        font-size: 12px;        opacity: .65;    }    .waiter-order-summary strong {        display: block;        margin-top: 4px;        font-size: 18px;    }.waiter-order-items {    display: flex;    flex-direction: column;    gap: 8px;}.waiter-order-item {    border: 1px solid rgba(255,255,255,.1);    border-radius: 14px;    padding: 10px;    display: flex;    justify-content: space-between;    gap: 12px;}    .waiter-order-item span {        display: block;        font-size: 12px;        opacity: .7;    }.waiter-order-actions {    display: flex;    flex-wrap: wrap;    gap: 8px;    margin-top: 18px;}@media (max-width: 992px) {    .waiter-pos-layout {        grid-template-columns: 1fr;    }    .waiter-pos-header {        flex-direction: column;    }    .waiter-pos-header-actions {        width: 100%;        flex-wrap: wrap;    }}.layout-builder-page {    min-height: 100vh;    padding: 24px;}.layout-builder-header {    display: flex;    justify-content: space-between;    align-items: flex-start;    gap: 16px;    margin-bottom: 20px;}.layout-builder-eyebrow {    margin: 0 0 4px;    font-size: 12px;    text-transform: uppercase;    letter-spacing: .12em;    opacity: .7;}.layout-builder-header h1 {    margin: 0;    font-size: 32px;    font-weight: 800;}.layout-builder-subtitle {    margin-top: 6px;    opacity: .75;}.layout-builder-grid {    display: grid;    grid-template-columns: 320px minmax(0, 1fr) 340px;    gap: 18px;    align-items: start;}.layout-builder-sidebar,.layout-builder-properties {    display: flex;    flex-direction: column;    gap: 14px;}.layout-builder-card,.layout-builder-canvas-shell {    border: 1px solid rgba(255,255,255,.12);    border-radius: 18px;    background: rgba(255,255,255,.04);    padding: 18px;}    .layout-builder-card h2 {        font-size: 18px;        font-weight: 800;        margin-bottom: 14px;    }.layout-builder-two-cols {    display: grid;    grid-template-columns: 1fr 1fr;    gap: 10px;}.layout-builder-area-list {    display: flex;    flex-direction: column;    gap: 8px;}.layout-builder-area-button {    border: 1px solid rgba(255,255,255,.12);    border-radius: 14px;    background: rgba(255,255,255,.04);    color: inherit;    text-align: left;    padding: 12px;}    .layout-builder-area-button.active {        border-color: rgba(13,110,253,.75);        background: rgba(13,110,253,.12);    }    .layout-builder-area-button span {        display: block;        font-size: 12px;        opacity: .7;    }.layout-builder-canvas-header {    display: flex;    justify-content: space-between;    margin-bottom: 12px;}    .layout-builder-canvas-header h2 {        margin: 0;        font-size: 22px;        font-weight: 800;    }.layout-builder-canvas {    position: relative;    overflow: auto;    border: 1px dashed rgba(255,255,255,.18);    border-radius: 16px;    background: rgba(0,0,0,.12);    min-height: 420px;}.layout-builder-table {    position: absolute;    border: 2px solid rgba(255,255,255,.22);    border-radius: 16px;    background: rgba(46, 204, 113, .22);    color: inherit;    display: flex;    flex-direction: column;    align-items: center;    justify-content: center;    gap: 4px;    cursor: pointer;}    .layout-builder-table.round {        border-radius: 999px;    }    .layout-builder-table.selected {        border-color: rgba(13,110,253,.95);        box-shadow: 0 0 0 4px rgba(13,110,253,.18);    }    .layout-builder-table strong {        font-size: 18px;    }    .layout-builder-table span,    .layout-builder-table small {        font-size: 12px;        opacity: .75;    }.layout-builder-empty {    border: 1px dashed rgba(255,255,255,.18);    border-radius: 18px;    padding: 40px;    opacity: .7;}.layout-builder-page {    position: relative;}.layout-builder-grid {    position: relative;    overflow: visible;}.layout-builder-sidebar,.layout-builder-properties {    position: relative;    z-index: 30;}.layout-builder-main {    position: relative;    z-index: 1;    min-width: 0;    overflow: auto;}.layout-builder-canvas-shell {    position: relative;    z-index: 1;    overflow: auto;}.layout-builder-canvas {    position: relative;    z-index: 1;}.layout-builder-table {    z-index: 2;}    .layout-builder-table.selected {        z-index: 5;    }    .layout-builder-table.dragging {        z-index: 10;    }@media (max-width: 1200px) {    .layout-builder-grid {        grid-template-columns: 1fr;    }}.layout-builder-drag-hint {    position: absolute;    left: 16px;    bottom: 12px;    margin: 0;    font-size: 12px;    opacity: .55;    pointer-events: none;}.layout-builder-table {    user-select: none;    touch-action: none;}    .layout-builder-table.dragging {        cursor: grabbing;        opacity: .85;        z-index: 10;    }    .layout-builder-table.wide {        border-radius: 18px;    }.layout-builder-unsaved-text {    margin: 8px 0 0;    font-size: 12px;    color: #b58100;}.layout-builder-preset-section {    margin-top: 14px;}.layout-builder-preset-buttons {    display: flex;    flex-wrap: wrap;    gap: 8px;}.layout-builder-table-actions {    display: flex;    flex-direction: column;    gap: 8px;    margin-top: 14px;}.layout-builder-card .btn + .btn {    display: block;    width: 100%;}.layout-builder-confirm-box {    margin-top: 14px;    border: 1px solid rgba(220, 53, 69, .35);    background: rgba(220, 53, 69, .08);    border-radius: 14px;    padding: 14px;}    .layout-builder-confirm-box h3 {        font-size: 16px;        font-weight: 800;        margin: 0 0 6px;    }    .layout-builder-confirm-box p {        font-size: 13px;        margin: 0 0 12px;        opacity: .8;    }.layout-builder-confirm-actions {    display: flex;    flex-direction: column;    gap: 8px;}    .layout-builder-confirm-actions .btn {        width: 100%;    }.layout-builder-unsaved-confirm-box {    border-color: rgba(255, 193, 7, .45);    background: rgba(255, 193, 7, .10);}/* WAITER POS */.waiter-menu-picker {    margin-top: 22px;    border-top: 1px solid rgba(255,255,255,.10);    padding-top: 18px;}.waiter-menu-picker-header {    display: flex;    justify-content: space-between;    gap: 12px;    align-items: start;    margin-bottom: 12px;}    .waiter-menu-picker-header h3 {        margin: 0;        font-size: 18px;        font-weight: 800;    }.waiter-menu-items {    margin-top: 12px;    display: flex;    flex-direction: column;    gap: 10px;    max-height: 520px;    overflow: auto;    padding-right: 4px;}.waiter-menu-item-card {    display: grid;    grid-template-columns: 72px minmax(0, 1fr);    gap: 10px;    border: 1px solid rgba(255,255,255,.10);    border-radius: 14px;    padding: 10px;    background: rgba(255,255,255,.04);}.waiter-menu-item-image {    width: 72px;    height: 72px;    border-radius: 12px;    overflow: hidden;    background: rgba(0,0,0,.10);    display: flex;    align-items: center;    justify-content: center;    font-size: 11px;    font-weight: 700;}    .waiter-menu-item-image img {        width: 100%;        height: 100%;        object-fit: cover;    }.waiter-menu-item-content {    min-width: 0;}.waiter-menu-item-title-row {    display: flex;    justify-content: space-between;    gap: 8px;    align-items: start;}    .waiter-menu-item-title-row strong {        font-size: 14px;    }    .waiter-menu-item-title-row span {        font-weight: 800;    }.waiter-menu-item-content small {    display: block;    margin-top: 3px;    opacity: .7;}.waiter-menu-item-content p {    margin: 6px 0 0;    font-size: 12px;    opacity: .75;}.waiter-menu-item-footer {    display: flex;    justify-content: space-between;    gap: 8px;    align-items: center;    margin-top: 10px;}    .waiter-menu-item-footer span {        font-size: 12px;        opacity: .75;    }.waiter-floor-panel {    position: relative;}.waiter-menu-overlay {    position: absolute;    left: 24px;    right: 24px;    top: 24px;    bottom: 24px;    z-index: 30;    border: 1px solid rgba(255,255,255,.16);    border-radius: 20px;    background: rgba(255, 251, 244, .96);    backdrop-filter: blur(10px);    box-shadow: 0 18px 50px rgba(0,0,0,.16);    padding: 18px;    display: flex;    flex-direction: column;}.waiter-menu-overlay-header {    display: flex;    justify-content: space-between;    gap: 14px;    align-items: flex-start;    margin-bottom: 14px;}    .waiter-menu-overlay-header h3 {        margin: 0;        font-size: 22px;        font-weight: 800;    }.waiter-menu-overlay-items {    margin-top: 14px;    display: grid;    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));    gap: 12px;    overflow: auto;    padding-right: 4px;}.waiter-menu-overlay-card {    display: grid;    grid-template-columns: 84px minmax(0, 1fr);    gap: 12px;    border: 1px solid rgba(0,0,0,.08);    border-radius: 16px;    padding: 10px;    background: rgba(255,255,255,.75);}.waiter-menu-overlay-image {    width: 84px;    height: 84px;    border-radius: 14px;    overflow: hidden;    background: rgba(0,0,0,.08);    display: flex;    align-items: center;    justify-content: center;    font-size: 11px;    font-weight: 700;}    .waiter-menu-overlay-image img {        width: 100%;        height: 100%;        object-fit: cover;    }.waiter-menu-overlay-footer {    display: flex;    justify-content: space-between;    align-items: center;    gap: 8px;    margin-top: 10px;}    .waiter-menu-overlay-footer span {        font-size: 12px;        opacity: .75;    }@media (max-width: 992px) {    .waiter-menu-overlay {        left: 10px;        right: 10px;        top: 10px;        bottom: 10px;        padding: 14px;    }    .waiter-menu-overlay-items {        grid-template-columns: 1fr;    }}.waiter-menu-overlay-items {    margin-top: 14px;    display: flex;    flex-direction: column;    gap: 8px;    overflow: auto;    padding-right: 4px;}.waiter-menu-overlay-image {    width: 64px;    height: 64px;    border-radius: 12px;    overflow: hidden;    background: rgba(0,0,0,.08);    display: flex;    align-items: center;    justify-content: center;    font-size: 11px;    font-weight: 700;}    .waiter-menu-overlay-image img {        width: 100%;        height: 100%;        object-fit: cover;    }.waiter-menu-overlay-card-compact .btn {    width: 100%;}@media (max-width: 768px) {    .waiter-menu-overlay-card-compact {        grid-template-columns: 56px minmax(0, 1fr);    }    .waiter-menu-overlay-card-compact .btn {        grid-column: 1 / -1;    }}.waiter-menu-overlay-items {    margin-top: 14px;    display: grid;    grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));    gap: 12px;    overflow: auto;    padding-right: 4px;}.waiter-menu-overlay-card-pos {    display: flex;    flex-direction: column;    gap: 10px;    border: 1px solid rgba(0,0,0,.08);    border-radius: 16px;    padding: 10px;    background: rgba(255,255,255,.82);    min-height: 230px;}    .waiter-menu-overlay-card-pos .waiter-menu-overlay-image {        width: 100%;        height: 105px;        border-radius: 14px;        overflow: hidden;        background: rgba(0,0,0,.08);        display: flex;        align-items: center;        justify-content: center;        font-size: 11px;        font-weight: 700;    }        .waiter-menu-overlay-card-pos .waiter-menu-overlay-image img {            width: 100%;            height: 100%;            object-fit: cover;        }.waiter-menu-overlay-card-body {    display: flex;    flex-direction: column;    gap: 4px;    flex: 1;}    .waiter-menu-overlay-card-body strong {        font-size: 14px;        font-weight: 800;        line-height: 1.25;    }.waiter-menu-overlay-price {    font-size: 16px;    font-weight: 900;}.waiter-menu-overlay-warning {    color: #b42318;    font-size: 12px;    font-weight: 700;}.waiter-menu-overlay-card-pos .btn {    width: 100%;    margin-top: auto;}@media (max-width: 768px) {    .waiter-menu-overlay-items {        grid-template-columns: repeat(auto-fill, minmax(145px, 1fr));    }    .waiter-menu-overlay-card-pos {        min-height: 210px;    }        .waiter-menu-overlay-card-pos .waiter-menu-overlay-image {            height: 90px;        }}.restaurant-requests-list {    margin-bottom: 28px;    overflow: hidden;}.restaurant-requests-list-header {    display: grid;    grid-template-columns: 1.4fr 1fr .8fr 1fr 160px;    gap: 14px;    align-items: center;}.restaurant-request-row {    display: grid;    grid-template-columns: 1.4fr 1fr .8fr 1fr 160px;    gap: 14px;    align-items: center;    width: 100%;}    .restaurant-request-row small {        display: block;        margin-top: 4px;        opacity: .65;        font-size: 12px;    }    .restaurant-request-row .kameni-btn-primary {        width: 100%;        min-height: 40px;        white-space: nowrap;    }.restaurant-request-items {    display: flex;    flex-wrap: wrap;    gap: 8px;    margin: -6px 0 14px;    padding: 0 18px 14px;    border-bottom: 1px solid rgba(0,0,0,.06);}    .restaurant-request-items span {        border-radius: 999px;        padding: 6px 11px;        background: rgba(0,0,0,.05);        font-size: 13px;        font-weight: 600;    }@media (max-width: 900px) {    .restaurant-requests-list-header {        display: none;    }    .restaurant-request-row {        grid-template-columns: 1fr;        gap: 8px;    }        .restaurant-request-row .kameni-btn-primary {            width: 100%;        }    .restaurant-request-items {        margin-top: 0;        padding-left: 12px;        padding-right: 12px;    }}.waiter-remove-table-box {    border: 1px solid rgba(220, 53, 69, .35);    border-radius: 14px;    padding: 14px;    background: rgba(220, 53, 69, .04);}.waiter-remove-reason-options {    display: flex;    flex-wrap: wrap;    gap: 8px;    margin-bottom: 10px;}    .waiter-remove-reason-options .btn {        text-align: left;        white-space: normal;    }.waiter-payment-box,.waiter-payment-warning-box {    border-radius: 14px;    padding: 14px;}.waiter-payment-box {    border: 1px solid rgba(25, 135, 84, .35);    background: rgba(25, 135, 84, .05);}.waiter-payment-warning-box {    border: 1px solid rgba(255, 193, 7, .55);    background: rgba(255, 193, 7, .08);}.waiter-payment-options {    display: flex;    flex-wrap: wrap;    gap: 8px;}    .waiter-payment-options .btn {        min-width: 90px;    }.waiter-pos-shell {    width: min(1780px, calc(100vw - 48px));    margin: 0 auto;}.waiter-pos-layout {    position: relative;    display: grid;    grid-template-columns: minmax(0, 1fr) 390px;    gap: 28px;    align-items: start;}.waiter-floor-panel {    min-width: 0;}.waiter-order-panel {    position: sticky;    top: 24px;    width: 390px;    transition: transform .35s ease, opacity .25s ease;    will-change: transform, opacity;}    .waiter-order-panel.is-collapsed {        pointer-events: none;        opacity: 0;        transform: translateX(calc(100% + 40px));    }.waiter-order-card {    border: 1px solid rgba(17, 24, 39, .08);    border-radius: 24px;    padding: 22px;    background: rgba(255, 250, 243, .96);    box-shadow: 0 18px 60px rgba(17, 24, 39, .08);}.waiter-order-card-header {    display: flex;    align-items: flex-start;    justify-content: space-between;    gap: 14px;    margin-bottom: 16px;}    .waiter-order-card-header h2 {        margin: 0;        font-size: 1.35rem;        font-weight: 800;    }.waiter-order-card-close {    width: 36px;    height: 36px;    border: 1px solid rgba(17, 24, 39, .12);    border-radius: 999px;    background: rgba(255, 255, 255, .85);    font-size: 1.35rem;    line-height: 1;    color: #111827;    transition: background .18s ease, transform .18s ease;}    .waiter-order-card-close:hover {        background: #fff;        transform: scale(1.04);    }.waiter-order-card-status-row {    display: flex;    justify-content: flex-end;    margin-bottom: 14px;}.waiter-order-reopen-tab {    position: fixed;    right: 0;    top: 45%;    z-index: 1200;    display: grid;    gap: 4px;    min-width: 118px;    border: 0;    border-radius: 16px 0 0 16px;    padding: 14px 12px;    background: #111827;    color: #fff;    box-shadow: 0 18px 45px rgba(17, 24, 39, .3);    transform: translateX(0);    transition: transform .24s ease, background .18s ease;}    .waiter-order-reopen-tab:hover {        background: #0f172a;        transform: translateX(-4px);    }    .waiter-order-reopen-tab span {        font-size: .72rem;        text-transform: uppercase;        letter-spacing: .08em;        opacity: .75;    }    .waiter-order-reopen-tab strong {        font-size: 1.05rem;    }.waiter-popup-backdrop {    position: fixed;    inset: 0;    z-index: 3000;    display: flex;    align-items: center;    justify-content: center;    padding: 24px;    background: rgba(15, 23, 42, .55);    backdrop-filter: blur(3px);}.waiter-popup-modal {    width: min(560px, 100%);    max-height: calc(100vh - 48px);    overflow-y: auto;    border-radius: 24px;    border: 1px solid rgba(255, 255, 255, .35);    background: #fffaf3;    box-shadow: 0 24px 80px rgba(15, 23, 42, .35);    padding: 24px;}.waiter-popup-header {    display: flex;    align-items: flex-start;    justify-content: space-between;    gap: 16px;    margin-bottom: 18px;}    .waiter-popup-header h2 {        margin: 0;        font-size: 1.45rem;        font-weight: 800;    }.waiter-popup-close {    width: 38px;    height: 38px;    border: 1px solid rgba(15, 23, 42, .14);    border-radius: 999px;    background: rgba(255, 255, 255, .85);    font-size: 1.6rem;    line-height: 1;    color: #111827;}    .waiter-popup-close:disabled {        opacity: .6;    }.waiter-payment-modal-summary {    display: grid;    grid-template-columns: 1fr 1fr;    gap: 12px;    margin-bottom: 16px;}    .waiter-payment-modal-summary div {        border-radius: 14px;        padding: 12px;        background: rgba(17, 24, 39, .04);    }    .waiter-payment-modal-summary span {        display: block;        font-size: .78rem;        color: #6b7280;    }    .waiter-payment-modal-summary strong {        display: block;        margin-top: 4px;        font-size: 1.1rem;    }.waiter-payment-modal-items {    display: grid;    gap: 8px;    margin-bottom: 16px;}.waiter-payment-modal-item {    display: flex;    justify-content: space-between;    gap: 12px;    border-bottom: 1px dashed rgba(17, 24, 39, .16);    padding-bottom: 8px;}    .waiter-payment-modal-item span {        display: block;        color: #6b7280;        font-size: .85rem;    }.waiter-payment-section {    margin-top: 16px;    border-radius: 16px;    padding: 14px;    background: rgba(25, 135, 84, .06);    border: 1px solid rgba(25, 135, 84, .25);}.waiter-payment-options {    display: flex;    flex-wrap: wrap;    gap: 8px;}    .waiter-payment-options .btn {        min-width: 110px;    }.waiter-payment-warning-box {    border: 1px solid rgba(255, 193, 7, .55);    border-radius: 16px;    padding: 14px;    background: rgba(255, 193, 7, .12);}.waiter-popup-actions {    display: flex;    justify-content: flex-end;    gap: 10px;    margin-top: 18px;}@media (max-width: 1100px) {    .waiter-pos-layout {        grid-template-columns: 1fr;    }        .waiter-pos-layout.details-collapsed {            grid-template-columns: 1fr;        }    .waiter-order-panel {        position: static;    }        .waiter-order-panel.is-collapsed {            display: none;        }}@media (max-width: 640px) {    .waiter-pos-shell {        width: min(100%, calc(100vw - 24px));    }    .waiter-popup-backdrop {        align-items: flex-end;        padding: 12px;    }    .waiter-popup-modal {        border-radius: 20px 20px 14px 14px;    }    .waiter-payment-modal-summary {        grid-template-columns: 1fr;    }    .waiter-popup-actions {        flex-direction: column-reverse;    }        .waiter-popup-actions .btn {            width: 100%;        }}