/* /Components/Layout/LandingLayout.razor.rz.scp.css */
/* Used for landing background in LandingLayout.razor */
.landing-bg[b-cjzs0soiyo] {
    position: relative;
    min-height: 100vh;
    width: 100%;
    background: url('/images/restaurant-bg.jpg') no-repeat center center;
    background-size: cover;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Used for overlay in LandingLayout.razor */
.overlay[b-cjzs0soiyo] {
    background: linear-gradient(180deg, rgba(19, 26, 33, 0.82) 0%, rgba(30, 52, 68, 0.70) 55%, rgba(19, 26, 33, 0.88) 100%);
    width: 100%;
    height: 100%;
    padding: clamp(1rem, 5vw, 2rem);
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* MainLayout — shell wrapper. Sidebar + topbar own their own scoped styles
   (NavMenu.razor.css / TopBar.razor.css); this file holds only the shell
   content region and the global error banner. */

main[b-1g7wu2wr5o] {
    flex: 1;
    min-width: 0; /* allow wide children (tables) to scroll instead of overflowing */
}

.admin-bg[b-1g7wu2wr5o] {
    background: var(--smo-canvas);
}

#blazor-error-ui[b-1g7wu2wr5o] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(19, 26, 33, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-1g7wu2wr5o] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/NavMenu.razor.rz.scp.css */
/* NavMenu — app sidebar. Dark slate surface, amber active accent.
   All color from var(--smo-*) tokens (smo-design-system.css). No raw hex.
   Single responsive breakpoint: 992px (framework §6). */

.sidebar[b-bjpmhb593f] {
    width: 250px;
    min-width: 220px;
    max-width: 280px;
    background: var(--smo-slate);
    color: var(--smo-porcelain);
    min-height: 100vh;
    padding: 1.5rem 1rem;
    box-sizing: border-box;
}

/* Logo + version meta */
.sidebar-logo[b-bjpmhb593f] {
    font-family: var(--smo-font-display);
    font-size: 1.5rem;
    color: var(--smo-porcelain);
}

.sidebar-meta[b-bjpmhb593f] {
    font-size: var(--smo-fs-sm);
    color: var(--smo-muted-dark);
    letter-spacing: 0.2px;
}

.sidebar-meta .text-info[b-bjpmhb593f] {
    color: var(--smo-amber-bright) !important;
}

.sidebar-hr[b-bjpmhb593f] {
    border-color: var(--smo-line-dark);
}

/* Nav links */
.sidebar[b-bjpmhb593f]  .nav-link {
    color: var(--smo-porcelain);
    border-radius: var(--smo-r-sm);
    min-height: 44px;
    padding: 0 0.85rem;
    line-height: 44px;
    font-size: var(--smo-fs-sm);
    font-weight: 500;
    transition: background-color var(--smo-dur) var(--smo-ease-out),
                color var(--smo-dur) var(--smo-ease-out);
}

.sidebar[b-bjpmhb593f]  .nav-link:hover {
    background: var(--smo-slate-2);
    color: var(--smo-porcelain);
}

.sidebar[b-bjpmhb593f]  .nav-link.active {
    background: var(--smo-slate-2);
    color: var(--smo-porcelain);
    box-shadow: inset 3px 0 0 0 var(--smo-amber);
}

.sidebar[b-bjpmhb593f]  .nav-link.active .bi {
    color: var(--smo-amber);
}

.sidebar[b-bjpmhb593f]  .nav-link:focus-visible {
    outline: 3px solid var(--smo-amber-bright);
    outline-offset: -3px;
}

/* Floating open button (mobile only) */
.sidebar-fab[b-bjpmhb593f] {
    position: fixed;
    top: 50%;
    left: 0.15rem;
    transform: translateY(-50%);
    width: 48px;
    height: 48px;
    background: var(--smo-slate);
    color: var(--smo-porcelain);
    border: none;
    border-radius: 50%;
    box-shadow: var(--smo-shadow);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1200;
    transition: background-color var(--smo-dur) var(--smo-ease-out);
    padding: 0;
}

.sidebar-fab:hover[b-bjpmhb593f] {
    background: var(--smo-slate-2);
}

.sidebar-fab .bi[b-bjpmhb593f] {
    font-size: 1.5rem;
}

/* ── Responsive: single 992px cutoff ──────────────────────────────── */

/* Mobile: slide-in drawer */
@media (max-width: 991.98px) {
    .sidebar[b-bjpmhb593f] {
        transition: left 0.3s var(--smo-ease-out), box-shadow 0.3s;
        position: fixed;
        top: 0;
        left: 0;
        height: 100vh;
        z-index: 1040;
    }

    .sidebar.sidebar-closed[b-bjpmhb593f] {
        left: -300px;
        box-shadow: 2px 0 8px rgba(19, 26, 33, 0.18);
        border-top-right-radius: var(--smo-r-lg);
        border-bottom-right-radius: var(--smo-r-lg);
    }

    .sidebar.sidebar-open[b-bjpmhb593f] {
        left: 0;
        box-shadow: 2px 0 16px rgba(19, 26, 33, 0.28);
    }
}

/* Desktop: always-visible static sidebar, no FAB */
@media (min-width: 992px) {
    .sidebar[b-bjpmhb593f] {
        position: sticky;
        top: 0;
        left: 0;
        height: 100vh;
        z-index: auto;
        overflow-y: auto;
    }

    .sidebar-fab[b-bjpmhb593f] {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .sidebar[b-bjpmhb593f],
    .sidebar[b-bjpmhb593f]  .nav-link,
    .sidebar-fab[b-bjpmhb593f] {
        transition: none;
    }
}
/* /Components/Layout/TopBar.razor.rz.scp.css */
/* TopBar — light surface header. All color from var(--smo-*) tokens. */

.topbar[b-pbvo9b7eum] {
    min-height: 64px;
    background: var(--smo-surface);
    border-bottom: 1px solid var(--smo-line);
}

.topbar-title[b-pbvo9b7eum] {
    font-family: var(--smo-font-display);
    font-size: 1.75rem;
    color: var(--smo-slate);
}

.topbar-subtitle[b-pbvo9b7eum] {
    font-size: var(--smo-fs-sm);
    color: var(--smo-muted);
    margin-left: 0.5rem;
}

/* Decorative tech glyphs — brand-tinted */
.topbar-tech-ai[b-pbvo9b7eum] {
    color: var(--smo-slate);
}

.topbar-tech-love[b-pbvo9b7eum] {
    color: var(--smo-amber);
}

.topbar-actions[b-pbvo9b7eum] {
    gap: 1.5rem;
}

/* Notification button */
.notification-btn[b-pbvo9b7eum] {
    background: none;
    border: none;
    outline: none;
    padding: 0;
    position: relative;
    min-width: 44px;
    min-height: 44px;
}

.notification-circle[b-pbvo9b7eum] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: var(--smo-canvas);
    border-radius: 50%;
    position: relative;
}

.notification-bell[b-pbvo9b7eum] {
    font-size: 1.3rem;
    color: var(--smo-slate);
}

.notification-badge[b-pbvo9b7eum] {
    background: var(--smo-amber-ink);
    color: var(--smo-surface);
    font-weight: 700;
    font-size: var(--smo-fs-xs);
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: var(--smo-shadow);
    position: absolute;
    top: 0;
    left: 100%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
}

/* User dropdown trigger */
.login-btn[b-pbvo9b7eum] {
    background: var(--smo-slate);
    color: var(--smo-porcelain);
    border: 1px solid var(--smo-slate);
    min-height: 44px;
    transition: background-color var(--smo-dur) var(--smo-ease-out),
                color var(--smo-dur) var(--smo-ease-out);
}

.login-btn:hover[b-pbvo9b7eum] {
    background: var(--smo-slate-2) !important;
    color: var(--smo-porcelain) !important;
    border-color: var(--smo-slate-2) !important;
}

.login-btn:focus-visible[b-pbvo9b7eum] {
    outline: 3px solid var(--smo-amber-bright);
    outline-offset: 3px;
}

.custom-dropdown-shadow[b-pbvo9b7eum] {
    box-shadow: var(--smo-shadow-lg);
    border-radius: var(--smo-r-sm);
}

.dropdown-menu.custom-dropdown-shadow[b-pbvo9b7eum] {
    margin-top: 0.75rem !important;
    top: 100% !important;
}

/* Mobile: tighten header so title + actions never overflow the viewport.
   FAB open button sits top-left, so pull the title clear of it. */
@media (max-width: 991.98px) {
    .topbar[b-pbvo9b7eum] {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    .topbar-title[b-pbvo9b7eum] {
        font-size: 1.35rem;
    }

    .topbar-subtitle[b-pbvo9b7eum] {
        display: block;
        margin-left: 0;
    }

    .topbar-actions[b-pbvo9b7eum] {
        gap: 0.75rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .login-btn[b-pbvo9b7eum] {
        transition: none;
    }
}
/* /Components/Pages/Home/Home.razor.rz.scp.css */
/* Smart Menu Optimizer — landing (scoped). Premium refine on the slate+amber brand. */

.smo[b-vau72plfmx] {
    --smo-ink: #131A21;
    --smo-slate: #1E3444;
    --smo-slate-2: #232E3C;
    --smo-porcelain: #F5F1E9;
    --smo-amber: #E7A94C;
    --smo-amber-bright: #F2C572;
    --smo-sage: #7FB79A;
    --smo-line: rgba(245, 241, 233, 0.14);
    --smo-muted: rgba(245, 241, 233, 0.66);

    --ease-out: cubic-bezier(.22, 1, .36, 1);
    --ease-spring: cubic-bezier(.34, 1.56, .64, 1);

    color: var(--smo-porcelain);
    font-family: 'Plus Jakarta Sans', system-ui, -apple-system, "Segoe UI", sans-serif;
    max-width: 1180px;
    margin-inline: auto;
    padding-inline: clamp(1rem, 4vw, 2rem);
}

/* ---------- Reveal ---------- */
[data-anim][b-vau72plfmx] {
    opacity: 0;
    transform: translateY(26px);
    transition: opacity .7s var(--ease-out), transform .7s var(--ease-out);
    transition-delay: calc(var(--i, 0) * 90ms);
}

    [data-anim].is-in[b-vau72plfmx] {
        opacity: 1;
        transform: none;
    }

/* ---------- Hero ---------- */
.smo-hero[b-vau72plfmx] {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: clamp(1.5rem, 4vw, 3.5rem);
    align-items: center;
    min-height: min(88dvh, 760px);
    padding-block: clamp(2rem, 6vw, 4rem);
}

.smo-eyebrow[b-vau72plfmx] {
    font-size: .8rem;
    font-weight: 600;
    letter-spacing: .28em;
    text-transform: uppercase;
    color: var(--smo-amber);
    margin: 0 0 1.1rem;
}

.smo-display[b-vau72plfmx] {
    font-family: 'Instrument Serif', Georgia, "Times New Roman", serif;
    font-weight: 400;
    font-size: clamp(2.6rem, 6vw, 4.5rem);
    line-height: 1.02;
    letter-spacing: -.015em;
    margin: 0 0 1.4rem;
    text-wrap: balance;
}

.smo-display__accent[b-vau72plfmx] {
    display: block;
    font-style: italic;
    color: var(--smo-amber-bright);
}

.smo-lead[b-vau72plfmx] {
    font-size: clamp(1.02rem, 1.4vw, 1.2rem);
    line-height: 1.65;
    color: var(--smo-muted);
    max-width: 34ch;
    margin: 0 0 2rem;
}

.smo-cta-row[b-vau72plfmx] {
    display: flex;
    align-items: center;
    gap: 1.1rem;
    flex-wrap: wrap;
}

.smo-cta[b-vau72plfmx] {
    display: inline-flex;
    align-items: center;
    min-height: 52px;
    padding: .95rem 2rem;
    border-radius: 999px;
    background: var(--smo-amber);
    color: var(--smo-ink);
    font-weight: 600;
    font-size: 1.05rem;
    text-decoration: none;
    box-shadow: 0 10px 30px -12px rgba(231, 169, 76, .7);
    transition: transform .25s var(--ease-spring), background .25s var(--ease-out), box-shadow .25s var(--ease-out);
}

    .smo-cta:hover[b-vau72plfmx] {
        transform: translateY(-2px);
        background: var(--smo-amber-bright);
        box-shadow: 0 16px 38px -12px rgba(231, 169, 76, .85);
    }

    .smo-cta:focus-visible[b-vau72plfmx] {
        outline: 3px solid var(--smo-amber-bright);
        outline-offset: 3px;
    }

.smo-cta__note[b-vau72plfmx] {
    font-size: .85rem;
    color: var(--smo-muted);
}

/* ---------- Signature plate ---------- */
.smo-plate-wrap[b-vau72plfmx] {
    perspective: 1000px;
    display: flex;
    justify-content: center;
}

.smo-plate[b-vau72plfmx] {
    --rx: 0deg;
    --ry: 0deg;
    --gx: 50%;
    --gy: 0%;
    position: relative;
    width: min(100%, 420px);
    padding: 1.6rem 1.6rem 1.4rem;
    border-radius: 22px;
    background: linear-gradient(160deg, rgba(35, 46, 60, .92), rgba(19, 26, 33, .92));
    border: 1px solid var(--smo-line);
    box-shadow: 0 40px 80px -40px rgba(0, 0, 0, .8);
    transform: perspective(1000px) rotateX(var(--rx)) rotateY(var(--ry));
    transform-style: preserve-3d;
    transition: transform .4s var(--ease-spring);
    overflow: hidden;
}

    .smo-plate.is-tilting[b-vau72plfmx] {
        transition: transform .08s linear;
    }

.smo-plate__glow[b-vau72plfmx] {
    position: absolute;
    inset: 0;
    background: radial-gradient(360px circle at var(--gx) var(--gy), rgba(242, 197, 114, .22), transparent 60%);
    opacity: 0;
    transition: opacity .3s var(--ease-out);
    pointer-events: none;
}

.smo-plate.is-tilting .smo-plate__glow[b-vau72plfmx] {
    opacity: 1;
}

.smo-plate__head[b-vau72plfmx] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    margin-bottom: 1.1rem;
}

.smo-plate__dish[b-vau72plfmx] {
    font-family: 'Instrument Serif', Georgia, serif;
    font-size: 1.35rem;
    font-weight: 400;
}

.smo-plate__badge[b-vau72plfmx] {
    font-size: .72rem;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--smo-sage);
    border: 1px solid rgba(127, 183, 154, .4);
    border-radius: 999px;
    padding: .28rem .7rem;
    white-space: nowrap;
}

.smo-plate__spark[b-vau72plfmx] {
    height: 80px;
    margin-bottom: 1.2rem;
}

    .smo-plate__spark svg[b-vau72plfmx] {
        width: 100%;
        height: 100%;
        display: block;
    }

    .smo-plate__spark path[b-vau72plfmx] {
        stroke: var(--smo-amber);
        stroke-dasharray: 420;
        stroke-dashoffset: 420;
    }

.smo-plate-wrap.is-in .smo-plate__spark path[b-vau72plfmx] {
    animation: smo-draw-b-vau72plfmx 1.5s var(--ease-out) .35s forwards;
}

@keyframes smo-draw-b-vau72plfmx {
    to {
        stroke-dashoffset: 0;
    }
}

.smo-plate__kpis[b-vau72plfmx] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: .75rem;
    margin: 0;
}

.smo-kpi[b-vau72plfmx] {
    text-align: center;
    padding: .6rem .3rem;
    border-radius: 12px;
    background: rgba(245, 241, 233, .04);
    border: 1px solid var(--smo-line);
}

    .smo-kpi dt[b-vau72plfmx] {
        font-size: .68rem;
        letter-spacing: .08em;
        text-transform: uppercase;
        color: var(--smo-muted);
        margin-bottom: .3rem;
    }

    .smo-kpi dd[b-vau72plfmx] {
        margin: 0;
        font-weight: 600;
        font-size: 1.15rem;
        font-variant-numeric: tabular-nums;
        color: var(--smo-amber-bright);
    }

.smo-num[b-vau72plfmx] {
    font-variant-numeric: tabular-nums;
}

/* ---------- KPI strip ---------- */
.smo-stats[b-vau72plfmx] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    padding: 1.6rem clamp(1rem, 3vw, 2rem);
    margin-block: 1rem 4rem;
    border-block: 1px solid var(--smo-line);
}

.smo-stat[b-vau72plfmx] {
    text-align: center;
}

.smo-stat__num[b-vau72plfmx] {
    display: block;
    font-family: 'Instrument Serif', Georgia, serif;
    font-size: clamp(2rem, 4vw, 2.9rem);
    font-weight: 400;
    color: var(--smo-porcelain);
    line-height: 1;
}

.smo-stat__label[b-vau72plfmx] {
    font-size: .85rem;
    color: var(--smo-muted);
    letter-spacing: .02em;
}

/* ---------- Section headings ---------- */
.smo-h2[b-vau72plfmx] {
    font-family: 'Instrument Serif', Georgia, serif;
    font-weight: 400;
    font-size: clamp(1.8rem, 3.4vw, 2.6rem);
    letter-spacing: -.01em;
    margin: 0 0 2rem;
}

/* ---------- Why / feature tiles ---------- */
.smo-why[b-vau72plfmx] {
    padding-block: clamp(2rem, 5vw, 3.5rem);
}

    .smo-why .smo-h2[b-vau72plfmx] {
        text-align: center;
    }

.smo-tiles[b-vau72plfmx] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.25rem;
}

.smo-tile[b-vau72plfmx] {
    padding: 1.6rem 1.35rem;
    border-radius: 16px;
    background: linear-gradient(165deg, rgba(35, 46, 60, .78), rgba(19, 26, 33, .78));
    border: 1px solid var(--smo-line);
    position: relative;
    transition: transform .3s var(--ease-out), border-color .3s var(--ease-out);
}

    .smo-tile[b-vau72plfmx]::after {
        content: "";
        position: absolute;
        left: 1.35rem;
        bottom: 1.1rem;
        width: 0;
        height: 2px;
        background: var(--smo-amber);
        transition: width .4s var(--ease-out);
    }

    .smo-tile:hover[b-vau72plfmx] {
        transform: translateY(-6px);
        border-color: rgba(231, 169, 76, .45);
    }

        .smo-tile:hover[b-vau72plfmx]::after {
            width: 2.4rem;
        }

.smo-tile__icon[b-vau72plfmx] {
    font-size: 2rem;
    color: var(--smo-amber);
    display: block;
    margin-bottom: 1rem;
}

.smo-tile h3[b-vau72plfmx] {
    font-size: 1.15rem;
    font-weight: 600;
    margin: 0 0 .6rem;
}

.smo-tile p[b-vau72plfmx] {
    font-size: .93rem;
    line-height: 1.6;
    color: var(--smo-muted);
    margin: 0;
}

/* ---------- Brand ---------- */
.smo-brand[b-vau72plfmx] {
    display: grid;
    grid-template-columns: 1fr .85fr;
    gap: clamp(1.5rem, 4vw, 3.5rem);
    align-items: center;
    padding-block: clamp(2.5rem, 6vw, 5rem);
}

.smo-brand__point[b-vau72plfmx] {
    margin-top: 1.5rem;
}

    .smo-brand__point h3[b-vau72plfmx] {
        font-size: 1.1rem;
        font-weight: 600;
        color: var(--smo-amber-bright);
        margin: 0 0 .4rem;
    }

    .smo-brand__point p[b-vau72plfmx] {
        font-size: .98rem;
        line-height: 1.65;
        color: var(--smo-muted);
        margin: 0;
        max-width: 46ch;
    }

.smo-brand__card[b-vau72plfmx] {
    background: var(--smo-porcelain);
    color: var(--smo-slate-2);
    border-radius: 20px;
    padding: 1.6rem;
    box-shadow: 0 40px 80px -44px rgba(0, 0, 0, .7);
}

.smo-brand__card-head[b-vau72plfmx] {
    display: flex;
    align-items: center;
    gap: .9rem;
    margin-bottom: 1.2rem;
}

.smo-brand__card-icon[b-vau72plfmx] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: var(--smo-amber);
    color: var(--smo-slate-2);
    font-size: 1.5rem;
}

.smo-brand__card-title[b-vau72plfmx] {
    font-family: 'Instrument Serif', Georgia, serif;
    font-weight: 400;
    font-size: 1.3rem;
}

.smo-brand__rows[b-vau72plfmx] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: .7rem;
}

    .smo-brand__rows li[b-vau72plfmx] {
        display: flex;
        align-items: center;
        gap: .7rem;
        padding: .8rem 1rem;
        border-radius: 12px;
        background: rgba(30, 52, 68, .06);
        font-weight: 500;
        font-size: .96rem;
    }

        .smo-brand__rows li .bi[b-vau72plfmx] {
            color: var(--smo-amber);
        }

/* ---------- Responsive ---------- */
@media (max-width: 992px) {
    .smo-hero[b-vau72plfmx] {
        grid-template-columns: 1fr;
        min-height: unset;
        text-align: center;
    }

    .smo-lead[b-vau72plfmx] {
        max-width: 46ch;
        margin-inline: auto;
    }

    .smo-cta-row[b-vau72plfmx] {
        justify-content: center;
    }

    .smo-brand[b-vau72plfmx] {
        grid-template-columns: 1fr;
    }

    .smo-tiles[b-vau72plfmx] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 560px) {
    .smo-stats[b-vau72plfmx] {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    .smo-tiles[b-vau72plfmx] {
        grid-template-columns: 1fr;
    }
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
    [data-anim][b-vau72plfmx] {
        opacity: 1;
        transform: none;
        transition: none;
    }

    .smo-plate[b-vau72plfmx] {
        transform: none;
        transition: none;
    }

    .smo-plate__spark path[b-vau72plfmx] {
        stroke-dashoffset: 0;
        animation: none;
    }

    .smo-cta[b-vau72plfmx],
    .smo-tile[b-vau72plfmx] {
        transition: none;
    }
}
/* /Components/Shared/DetailCard.razor.rz.scp.css */
/* DetailCard — surface card, brand-tokenized. All color from var(--smo-*). */

.card[b-zeoq1xgjxu] {
    background: var(--smo-surface);
    border: 1px solid var(--smo-line);
    border-radius: var(--smo-r-lg);
}

.card-header[b-zeoq1xgjxu] {
    background: var(--smo-porcelain);
    border-bottom: 1px solid var(--smo-line);
    color: var(--smo-slate);
    font-family: var(--smo-font-display);
}

.card-header .bi[b-zeoq1xgjxu] {
    color: var(--smo-amber-ink);
}

.card-footer[b-zeoq1xgjxu] {
    background: var(--smo-canvas);
    border-top: 1px solid var(--smo-line);
}
/* /Components/Shared/ErrorAlert.razor.rz.scp.css */
/* ErrorAlert — brand radius. Status colors stay semantic (danger/warning/info/
   success) per functional-color rule; only shape/scale tokenized. */

.alert[b-nd68gmf45a] {
    border-radius: var(--smo-r-md);
    font-size: var(--smo-fs-sm);
}
/* /Components/Shared/LoadingSpinner.razor.rz.scp.css */
/* LoadingSpinner — brand-tinted indicator (default). Caller-passed text-*
   classes still override. */

.spinner-border[b-v5sxtkw5nu] {
    color: var(--smo-amber);
}
/* /Components/Shared/NotFoundAlert.razor.rz.scp.css */
/* NotFoundAlert — brand radius + amber glyph. Warning status color stays
   semantic. */

.alert[b-pavk8a210g] {
    border-radius: var(--smo-r-md);
    font-size: var(--smo-fs-sm);
}

.bi[b-pavk8a210g] {
    color: var(--smo-amber-ink);
}
/* /Components/Shared/StatItem.razor.rz.scp.css */
/* StatItem — key/value row, brand-tokenized. */

.text-muted[b-a2xpf2f27n] {
    color: var(--smo-muted) !important;
}

.badge[b-a2xpf2f27n] {
    background: var(--smo-slate);
    color: var(--smo-porcelain);
    font-weight: 600;
}
/* /Features/AI/Components/AiSuggestionModal.razor.rz.scp.css */
namespace SmartMenuOptim.Server.Components.Pages[b-6qqmm7hvu7]
{
    public class AiSuggestionModal
    {
    }
}
/* /Features/AI/Components/Insights.razor.rz.scp.css */
/* Insights guide — matches Dashboard "How to use" guide, uses global --smo-* tokens. */

.smo-insights-guide-toggle[b-s7q3c0hm18] {
    display: flex;
    justify-content: center;
    margin-bottom: 1.25rem;
}

.smo-guide[b-s7q3c0hm18] {
    background: var(--smo-canvas);
    border: 1px solid var(--smo-line);
    border-radius: 13px;
    padding: 1.1rem 1.25rem;
    margin-bottom: 1.5rem;
    font-size: .9rem;
    color: var(--smo-slate);
}

.smo-guide strong[b-s7q3c0hm18] {
    display: block;
    margin: .9rem 0 .5rem;
    color: var(--smo-slate);
    font-weight: 700;
}

.smo-guide strong:first-child[b-s7q3c0hm18] { margin-top: 0; }

.smo-guide p[b-s7q3c0hm18] { margin: 0 0 .5rem; }

.smo-guide ul[b-s7q3c0hm18] {
    margin: 0 0 .5rem;
    padding-left: 1.15rem;
    display: grid;
    gap: .3rem;
}

.smo-guide-foot[b-s7q3c0hm18] {
    display: block;
    margin-top: .5rem;
    color: var(--smo-muted);
    font-size: .85rem;
}
/* /Features/AI/Components/Underperforming.razor.rz.scp.css */
/* Underperforming guide — matches Dashboard/Insights "How to use" guide, global --smo-* tokens. */

.smo-guide-toggle[b-8pb02gt5zi] {
    display: flex;
    justify-content: center;
    margin-bottom: 1.25rem;
}

.smo-guide[b-8pb02gt5zi] {
    background: var(--smo-canvas);
    border: 1px solid var(--smo-line);
    border-radius: 13px;
    padding: 1.1rem 1.25rem;
    margin-bottom: 1.5rem;
    font-size: .9rem;
    color: var(--smo-slate);
}

.smo-guide strong[b-8pb02gt5zi] {
    display: block;
    margin: .9rem 0 .5rem;
    color: var(--smo-slate);
    font-weight: 700;
}

.smo-guide strong:first-child[b-8pb02gt5zi] { margin-top: 0; }

.smo-guide p[b-8pb02gt5zi] { margin: 0 0 .5rem; }

.smo-guide ul[b-8pb02gt5zi] {
    margin: 0 0 .5rem;
    padding-left: 1.15rem;
    display: grid;
    gap: .3rem;
}

.smo-guide-foot[b-8pb02gt5zi] {
    display: block;
    margin-top: .5rem;
    color: var(--smo-muted);
    font-size: .85rem;
}
/* /Features/Dashboard/Components/Dashboard.razor.rz.scp.css */
/* ══════════════════════════════════════════════════════════════════
   Dashboard — premium restyle.
   Shares the landing design language (slate + amber, Instrument Serif + Plus Jakarta Sans),
   tuned for a light, data-first product surface. Tokens are scoped locally
   because the landing tokens live in Home.razor.css (also scoped).
   ══════════════════════════════════════════════════════════════════ */

.smo-dash[b-jvdof9ixnk] {
    /* Brand */
    --ink: #131A21;
    --slate: #1E3444;
    --slate-2: #263a4b;
    --porcelain: #F5F1E9;
    --amber: #E7A94C;
    --amber-bright: #F2C572;
    --sage: #4F9E7B;
    /* Surface */
    --canvas: #F7F5F0;
    --surface: #FFFFFF;
    --line: #E6E1D6;
    --muted: #4E5A64;
    /* Motion / depth */
    --ease-out: cubic-bezier(.22, 1, .36, 1);
    --shadow: 0 1px 2px rgba(19, 26, 33, .05), 0 10px 30px -16px rgba(19, 26, 33, .18);

    max-width: 1180px;
    margin: 0 auto;
    padding: 2rem 1.25rem 4rem;
    color: var(--ink);
    font-family: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif;
    font-feature-settings: "tnum" 1;
}

/* ── Reveal (only hide content when JS motion is active) ─────────────── */
.smo-dash.js-motion [data-anim][b-jvdof9ixnk] {
    opacity: 0;
    transform: translateY(16px);
    transition: opacity .6s var(--ease-out), transform .6s var(--ease-out);
    transition-delay: calc(var(--i, 0) * 70ms);
}

.smo-dash.js-motion [data-anim].is-in[b-jvdof9ixnk] {
    opacity: 1;
    transform: none;
}

/* ── Page header ────────────────────────────────────────────────────── */
.smo-dash-head[b-jvdof9ixnk] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 1.5rem;
}

.smo-dash-title[b-jvdof9ixnk] {
    font-family: 'Instrument Serif', Georgia, serif;
    font-weight: 400;
    font-size: clamp(1.9rem, 3.5vw, 2.6rem);
    letter-spacing: -.02em;
    line-height: 1.05;
    margin: 0;
}

.smo-dash-sub[b-jvdof9ixnk] {
    color: var(--muted);
    font-size: .95rem;
    margin: .35rem 0 0;
    max-width: 60ch;
}

/* ── KPI hero band (the signature moment) ───────────────────────────── */
.smo-hero[b-jvdof9ixnk] {
    position: relative;
    overflow: hidden;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1px;
    background: var(--line);
    border-radius: 20px;
    margin-bottom: 2rem;
    box-shadow: var(--shadow);
    isolation: isolate;
}

.smo-hero[b-jvdof9ixnk]::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        radial-gradient(120% 140% at 100% 0%, rgba(231, 169, 76, .22), transparent 55%),
        linear-gradient(135deg, var(--slate) 0%, var(--ink) 100%);
}

.smo-kpi[b-jvdof9ixnk] {
    display: flex;
    flex-direction: column;
    gap: .35rem;
    padding: 1.5rem 1.35rem;
    background: transparent;
}

.smo-kpi-label[b-jvdof9ixnk] {
    font-size: .74rem;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: rgba(245, 241, 233, .62);
}

.smo-kpi-value[b-jvdof9ixnk] {
    font-family: 'Instrument Serif', Georgia, serif;
    font-weight: 400;
    font-size: clamp(1.6rem, 3vw, 2.25rem);
    line-height: 1;
    color: var(--porcelain);
    font-variant-numeric: tabular-nums;
}

.smo-kpi--accent .smo-kpi-value[b-jvdof9ixnk] {
    color: var(--amber-bright);
}

.smo-kpi-foot[b-jvdof9ixnk] {
    font-size: .78rem;
    color: rgba(245, 241, 233, .55);
}

.smo-hero-loading[b-jvdof9ixnk] {
    grid-column: 1 / -1;
    display: flex;
    gap: .5rem;
    justify-content: center;
    padding: 2.75rem;
}

.smo-hero-dot[b-jvdof9ixnk] {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--amber);
    opacity: .35;
    animation: smo-pulse-b-jvdof9ixnk 1.1s var(--ease-out) infinite;
}

.smo-hero-dot:nth-child(2)[b-jvdof9ixnk] { animation-delay: .15s; }
.smo-hero-dot:nth-child(3)[b-jvdof9ixnk] { animation-delay: .3s; }

@keyframes smo-pulse-b-jvdof9ixnk {
    0%, 100% { opacity: .3; transform: scale(.8); }
    50% { opacity: 1; transform: scale(1); }
}

/* ── Panels ─────────────────────────────────────────────────────────── */
.smo-panel[b-jvdof9ixnk] {
    background: var(--surface);
    border: 1px solid var(--line);
    border-radius: 18px;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
    box-shadow: var(--shadow);
}

.smo-panel-head[b-jvdof9ixnk] {
    display: flex;
    align-items: center;
    gap: .75rem;
    margin-bottom: 1.35rem;
}

.smo-panel-icon[b-jvdof9ixnk] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 11px;
    background: rgba(231, 169, 76, .14);
    color: #a9702a;
    font-size: 1.1rem;
    flex-shrink: 0;
}

.smo-panel-title[b-jvdof9ixnk] {
    font-family: 'Instrument Serif', Georgia, serif;
    font-weight: 400;
    font-size: 1.3rem;
    letter-spacing: -.01em;
    margin: 0;
}

.smo-panel-action[b-jvdof9ixnk] {
    margin-left: auto;
}

.smo-subhead[b-jvdof9ixnk] {
    display: flex;
    align-items: center;
    gap: .5rem;
    font-size: .82rem;
    font-weight: 600;
    letter-spacing: .03em;
    text-transform: uppercase;
    color: var(--muted);
    margin: 1.75rem 0 .85rem;
}

/* ── Stat tiles ─────────────────────────────────────────────────────── */
.smo-stats[b-jvdof9ixnk] {
    display: grid;
    gap: .85rem;
    margin-bottom: 1.5rem;
}

.smo-stats--3[b-jvdof9ixnk] { grid-template-columns: repeat(3, 1fr); }
.smo-stats--4[b-jvdof9ixnk] { grid-template-columns: repeat(4, 1fr); }

.smo-stat[b-jvdof9ixnk] {
    display: flex;
    flex-direction: column;
    gap: .15rem;
    padding: 1rem 1.1rem;
    background: var(--canvas);
    border: 1px solid var(--line);
    border-radius: 13px;
}

.smo-stat-num[b-jvdof9ixnk] {
    font-size: 1.55rem;
    font-weight: 600;
    line-height: 1.1;
    font-variant-numeric: tabular-nums;
    color: var(--slate);
}

.smo-stat-label[b-jvdof9ixnk] {
    font-size: .8rem;
    color: var(--muted);
}

.smo-stat--good .smo-stat-num[b-jvdof9ixnk] { color: var(--sage); }
.smo-stat--accent .smo-stat-num[b-jvdof9ixnk] { color: #a9702a; }
.smo-stat--muted .smo-stat-num[b-jvdof9ixnk] { color: var(--muted); }

/* ── Restaurant grid ────────────────────────────────────────────────── */
.smo-rgrid[b-jvdof9ixnk] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1rem;
}

.smo-rcard[b-jvdof9ixnk] {
    display: flex;
    flex-direction: column;
    gap: .75rem;
    padding: 1.1rem;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: var(--surface);
    transition: border-color .2s var(--ease-out), box-shadow .2s var(--ease-out), transform .2s var(--ease-out);
}

.smo-rcard:hover[b-jvdof9ixnk] {
    border-color: rgba(231, 169, 76, .5);
    box-shadow: 0 8px 24px -14px rgba(19, 26, 33, .25);
    transform: translateY(-2px);
}

.smo-rcard-top[b-jvdof9ixnk] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: .75rem;
}

.smo-rcard-name[b-jvdof9ixnk] {
    font-size: 1.02rem;
    font-weight: 600;
    margin: 0;
    line-height: 1.25;
}

.smo-rcard-loc[b-jvdof9ixnk] {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    font-size: .82rem;
    color: var(--muted);
    margin-top: .15rem;
}

.smo-rcard-hours[b-jvdof9ixnk] {
    display: flex;
    align-items: center;
    gap: .4rem;
    font-size: .85rem;
    padding-top: .1rem;
}

.smo-hours-val[b-jvdof9ixnk] { color: var(--sage); font-weight: 600; }
.smo-hours-closed[b-jvdof9ixnk] { color: var(--muted); font-style: italic; }

.smo-rcard-actions[b-jvdof9ixnk] {
    display: flex;
    gap: .5rem;
    margin-top: auto;
}

.smo-rcard-actions .smo-btn[b-jvdof9ixnk] { flex: 1; justify-content: center; }

/* ── Pills ──────────────────────────────────────────────────────────── */
.smo-pill[b-jvdof9ixnk] {
    flex-shrink: 0;
    font-size: .72rem;
    font-weight: 600;
    padding: .28rem .6rem;
    border-radius: 999px;
    letter-spacing: .02em;
}

.smo-pill--open[b-jvdof9ixnk] {
    color: #2f6a50;
    background: rgba(79, 158, 123, .16);
}

.smo-pill--closed[b-jvdof9ixnk] {
    color: var(--muted);
    background: rgba(78, 90, 100, .12);
}

/* ── Status chips ───────────────────────────────────────────────────── */
.smo-chips[b-jvdof9ixnk] {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.smo-chip[b-jvdof9ixnk] {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    padding: .4rem .75rem;
    border: 1px solid var(--line);
    border-radius: 999px;
    font-size: .82rem;
    font-weight: 500;
    background: var(--surface);
}

.smo-chip-dot[b-jvdof9ixnk] {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--slate);
    flex-shrink: 0;
}

.smo-chip-count[b-jvdof9ixnk] {
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    color: var(--slate);
}

/* ── Tables ─────────────────────────────────────────────────────────── */
.smo-table-wrap[b-jvdof9ixnk] {
    width: 100%;
    overflow-x: auto;
    border: 1px solid var(--line);
    border-radius: 12px;
}

.smo-table[b-jvdof9ixnk] {
    width: 100%;
    border-collapse: collapse;
    font-size: .9rem;
}

.smo-table thead th[b-jvdof9ixnk] {
    position: sticky;
    top: 0;
    background: var(--slate);
    color: var(--porcelain);
    font-size: .72rem;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    text-align: left;
    padding: .7rem .85rem;
    white-space: nowrap;
}

.smo-table th.num[b-jvdof9ixnk], .smo-table td.num[b-jvdof9ixnk] { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.smo-table th.ctr[b-jvdof9ixnk], .smo-table td.ctr[b-jvdof9ixnk] { text-align: center; white-space: nowrap; }

.smo-table tbody td[b-jvdof9ixnk] {
    padding: .7rem .85rem;
    border-top: 1px solid var(--line);
    vertical-align: middle;
}

.smo-table tbody tr[b-jvdof9ixnk] { transition: background-color .12s ease; }
.smo-table tbody tr:hover[b-jvdof9ixnk] { background: var(--canvas); }

.smo-num-strong[b-jvdof9ixnk] { font-weight: 600; color: var(--slate); }

.smo-tlink[b-jvdof9ixnk] {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    color: var(--slate);
    font-weight: 600;
    text-decoration: none;
}

.smo-tlink:hover[b-jvdof9ixnk] { color: #a9702a; }

.smo-badge-active[b-jvdof9ixnk] {
    display: inline-block;
    min-width: 1.6rem;
    padding: .1rem .45rem;
    border-radius: 999px;
    background: rgba(30, 52, 68, .1);
    color: var(--slate);
    font-weight: 700;
    font-size: .8rem;
    font-variant-numeric: tabular-nums;
}

/* ── Sales groups (collapsible) ─────────────────────────────────────── */
.smo-sales-group[b-jvdof9ixnk] { margin-bottom: .85rem; }

.smo-group[b-jvdof9ixnk] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: .6rem;
    width: 100%;
    text-align: left;
    padding: .8rem 1rem;
    border: none;
    border-radius: 12px;
    background: var(--slate);
    color: var(--porcelain);
    cursor: pointer;
    transition: background-color .15s var(--ease-out);
}

.smo-group:hover[b-jvdof9ixnk] { background: var(--slate-2); }
.smo-group.is-open[b-jvdof9ixnk] { border-radius: 12px 12px 0 0; }

.smo-group-main[b-jvdof9ixnk] {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    font-size: .98rem;
    min-width: 0;
}

.smo-group-chev[b-jvdof9ixnk] { font-size: .8rem; opacity: .8; }
.smo-group-name[b-jvdof9ixnk] { font-weight: 700; }

.smo-group-meta[b-jvdof9ixnk] {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .4rem;
}

.smo-tag[b-jvdof9ixnk] {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    font-size: .76rem;
    font-weight: 600;
    padding: .22rem .55rem;
    border-radius: 7px;
    background: rgba(245, 241, 233, .14);
    color: var(--porcelain);
    font-variant-numeric: tabular-nums;
}

.smo-tag--sales[b-jvdof9ixnk] { background: rgba(231, 169, 76, .2); color: var(--amber-bright); }
.smo-tag--rating[b-jvdof9ixnk] { background: rgba(245, 241, 233, .1); }

/* Category block under an expanded restaurant */
.smo-cat[b-jvdof9ixnk] {
    border: 1px solid var(--line);
    border-top: none;
    padding: 1rem;
    background: var(--canvas);
}

.smo-sales-group .smo-cat:last-child[b-jvdof9ixnk] { border-radius: 0 0 12px 12px; }

.smo-cat-head[b-jvdof9ixnk] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: .5rem;
    margin-bottom: .75rem;
}

.smo-cat-name[b-jvdof9ixnk] {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    font-weight: 600;
    color: var(--slate);
}

.smo-cat-name .bi[b-jvdof9ixnk] { color: var(--amber); }

.smo-cat-meta[b-jvdof9ixnk] { display: inline-flex; gap: .4rem; flex-wrap: wrap; }

.smo-cat .smo-tag[b-jvdof9ixnk] {
    background: rgba(30, 52, 68, .08);
    color: var(--slate);
}

.smo-cat .smo-tag--sales[b-jvdof9ixnk] {
    background: rgba(231, 169, 76, .16);
    color: #a9702a;
}

.smo-cat .smo-table-wrap[b-jvdof9ixnk] { background: var(--surface); }

.smo-dish-link[b-jvdof9ixnk] {
    color: var(--slate);
    font-weight: 600;
    text-decoration: none;
    transition: color .15s ease;
}

.smo-dish-link:hover[b-jvdof9ixnk], .smo-dish-link:focus[b-jvdof9ixnk] { color: #a9702a; outline: none; }

/* ── Stars ──────────────────────────────────────────────────────────── */
.smo-stars[b-jvdof9ixnk] {
    display: inline-flex;
    letter-spacing: .5px;
    color: var(--amber);
    font-size: .95em;
}

.smo-stars .smo-star-empty[b-jvdof9ixnk] { color: rgba(0, 0, 0, .18); }
.smo-tag .smo-stars[b-jvdof9ixnk] { color: var(--amber-bright); }

/* ── Guide callout ──────────────────────────────────────────────────── */
.smo-guide[b-jvdof9ixnk] {
    background: var(--canvas);
    border: 1px solid var(--line);
    border-radius: 13px;
    padding: 1.1rem 1.25rem;
    margin-bottom: 1.5rem;
    font-size: .9rem;
}

.smo-guide strong[b-jvdof9ixnk] { display: block; margin-bottom: .5rem; color: var(--slate); }
.smo-guide ul[b-jvdof9ixnk] { margin: 0 0 .5rem; padding-left: 1.15rem; display: grid; gap: .3rem; }
.smo-guide-foot[b-jvdof9ixnk] { color: var(--muted); font-size: .85rem; }

/* ── Buttons ────────────────────────────────────────────────────────── */
.smo-btn[b-jvdof9ixnk] {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    padding: .55rem .9rem;
    border-radius: 10px;
    font-size: .875rem;
    font-weight: 600;
    font-family: inherit;
    line-height: 1;
    cursor: pointer;
    text-decoration: none;
    border: 1px solid transparent;
    transition: background-color .15s var(--ease-out), border-color .15s var(--ease-out), color .15s var(--ease-out);
}

.smo-btn-primary[b-jvdof9ixnk] {
    background: var(--amber);
    color: var(--ink);
}

.smo-btn-primary:hover[b-jvdof9ixnk] { background: var(--amber-bright); }

.smo-btn-ghost[b-jvdof9ixnk] {
    background: var(--surface);
    border-color: var(--line);
    color: var(--slate);
}

.smo-btn-ghost:hover[b-jvdof9ixnk] { background: var(--canvas); border-color: var(--muted); }

/* ── Empty states ───────────────────────────────────────────────────── */
.smo-empty[b-jvdof9ixnk] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .65rem;
    padding: 2.75rem 1rem;
    text-align: center;
}

.smo-empty .bi[b-jvdof9ixnk] { font-size: 2.5rem; color: var(--line); }
.smo-empty p[b-jvdof9ixnk] { color: var(--muted); margin: 0; }

.smo-muted[b-jvdof9ixnk] { color: var(--muted); }

/* ── Responsive ─────────────────────────────────────────────────────── */
@media (max-width: 900px) {
    .smo-hero[b-jvdof9ixnk] { grid-template-columns: repeat(2, 1fr); }
    .smo-stats--4[b-jvdof9ixnk] { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 560px) {
    .smo-dash[b-jvdof9ixnk] { padding: 1.25rem .85rem 3rem; }
    .smo-hero[b-jvdof9ixnk] { grid-template-columns: 1fr; }
    .smo-stats--3[b-jvdof9ixnk], .smo-stats--4[b-jvdof9ixnk] { grid-template-columns: 1fr 1fr; }
    .smo-panel[b-jvdof9ixnk] { padding: 1.15rem; }
    .smo-group-meta[b-jvdof9ixnk] { width: 100%; }
}

/* ── Reduced motion ─────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
    .smo-dash.js-motion [data-anim][b-jvdof9ixnk] { opacity: 1; transform: none; transition: none; }
    .smo-rcard[b-jvdof9ixnk], .smo-table tbody tr[b-jvdof9ixnk], .smo-btn[b-jvdof9ixnk], .smo-group[b-jvdof9ixnk] { transition: none; }
    .smo-hero-dot[b-jvdof9ixnk] { animation: none; opacity: .6; }
}
/* /Features/Orders/Components/OrderList.razor.rz.scp.css */
/* OrderList guide — matches Dashboard/Insights "How to use" guide, global --smo-* tokens.
   Toggle left-aligned to sit under the page header. */

.smo-guide-toggle[b-9rbcp2vd17] {
    display: flex;
    margin-bottom: 1.25rem;
}

.smo-guide[b-9rbcp2vd17] {
    background: var(--smo-canvas);
    border: 1px solid var(--smo-line);
    border-radius: 13px;
    padding: 1.1rem 1.25rem;
    margin-bottom: 1.5rem;
    font-size: .9rem;
    color: var(--smo-slate);
}

.smo-guide strong[b-9rbcp2vd17] {
    display: block;
    margin: .9rem 0 .5rem;
    color: var(--smo-slate);
    font-weight: 700;
}

.smo-guide strong:first-child[b-9rbcp2vd17] { margin-top: 0; }

.smo-guide ul[b-9rbcp2vd17],
.smo-guide ol[b-9rbcp2vd17] {
    margin: 0 0 .5rem;
    padding-left: 1.25rem;
    display: grid;
    gap: .3rem;
}

.smo-guide-foot[b-9rbcp2vd17] {
    display: block;
    margin-top: .5rem;
    color: var(--smo-muted);
    font-size: .85rem;
}
/* /Features/Restaurants/Components/RestaurantList.razor.rz.scp.css */
.restaurant-card[b-w116d06w5h] {
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}

.restaurant-card:hover[b-w116d06w5h] {
    transform: translateY(-4px);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.restaurant-card .card-title[b-w116d06w5h] {
    font-size: 1.1rem;
    font-weight: 600;
}

.restaurant-card .badge[b-w116d06w5h] {
    font-size: 0.75rem;
    padding: 0.35em 0.65em;
}

.restaurant-card .card-footer[b-w116d06w5h] {
    border-top: 1px solid rgba(0, 0, 0, 0.075);
}

.restaurant-card .btn-group .btn[b-w116d06w5h] {
    flex: 1;
}
/* /Features/Reviews/Components/ReviewFilters.razor.rz.scp.css */
namespace SmartMenuOptim.Server.Components.Pages.Reviews[b-xacbjg45c3]
{
    public class ReviewFilters
    {
    }
}
/* /Features/Reviews/Components/Reviews.razor.rz.scp.css */
/* Reviews guide — matches Dashboard/Insights "How to use" guide, global --smo-* tokens. */

.smo-guide-toggle[b-d41tuh318v] {
    display: flex;
    justify-content: center;
    margin-bottom: 1.25rem;
}

.smo-guide[b-d41tuh318v] {
    background: var(--smo-canvas);
    border: 1px solid var(--smo-line);
    border-radius: 13px;
    padding: 1.1rem 1.25rem;
    margin-bottom: 1.5rem;
    font-size: .9rem;
    color: var(--smo-slate);
}

.smo-guide strong[b-d41tuh318v] {
    display: block;
    margin: .9rem 0 .5rem;
    color: var(--smo-slate);
    font-weight: 700;
}

.smo-guide strong:first-child[b-d41tuh318v] { margin-top: 0; }

.smo-guide p[b-d41tuh318v] { margin: 0 0 .5rem; }

.smo-guide ul[b-d41tuh318v] {
    margin: 0 0 .5rem;
    padding-left: 1.15rem;
    display: grid;
    gap: .3rem;
}

.smo-guide-foot[b-d41tuh318v] {
    display: block;
    margin-top: .5rem;
    color: var(--smo-muted);
    font-size: .85rem;
}
/* /Features/Reviews/Components/ReviewStatistics.razor.rz.scp.css */
namespace SmartMenuOptim.Server.Components.Pages.Reviews[b-b3i9cgamp9]
{
    public class ReviewStatistics
    {
    }
}
/* /Features/Reviews/Components/SubmitReview.razor.rz.scp.css */
