/* ===================================================================
   FAZ 9 — Kurumsal POS tasarım dili (tüm yüzeyler)
   =================================================================== */

body.cafe-admin-app,
body.cafe-app,
body.pos-terminal-app,
body.admin-login-page,
body.admin-suite-login {
    font-family: var(--cafe-font, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif) !important;
}

body.cafe-app.waiter-app,
body.cafe-app.waiter-login-app {
    font-family: var(--cafe-font, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif) !important;
}

.cafe-pos-card {
    border: 1px solid var(--cafe-line, #e2e8f0);
    border-radius: var(--cafe-radius-sm, 8px);
    background: var(--cafe-surface, #fff);
    box-shadow: none;
}

.cafe-pos-panel-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 8px;
}

.cafe-pos-panel-head h3 {
    margin: 0;
    font-size: 13px;
    font-weight: 700;
    color: var(--cafe-ink, #0f172a);
}

body.pos-terminal-app button,
body.cafe-app.waiter-app button,
body.cafe-menu-app button {
    min-height: var(--cafe-touch-min, 44px);
}

/* ===================================================================
   FAZ 10 — Orantı, hizalama, spacing sistemi (16/20/24)
   =================================================================== */

:root {
    --pos-space-sm: 16px;
    --pos-space-md: 20px;
    --pos-space-lg: 24px;
    --pos-max-admin: 1480px;
    --pos-max-menu: 920px;
    --pos-max-login: 960px;
}

/* ——— Admin ——— */
body.cafe-admin-app.admin-suite .erp-page {
    max-width: var(--pos-max-admin);
    margin: 0 auto;
    width: 100%;
}

body.cafe-admin-app.admin-suite .erp-dashboard {
    gap: var(--pos-space-sm);
}

body.cafe-admin-app.admin-suite .erp-kpi-row {
    gap: 12px;
}

body.cafe-admin-app.admin-suite .erp-kpi-card {
    min-height: 72px;
    max-height: 88px;
    padding: 12px 14px;
}

body.cafe-admin-app.admin-suite .erp-kpi-body .v {
    font-size: 20px;
}

body.cafe-admin-app.admin-suite .erp-module-grid,
body.cafe-admin-app.admin-suite .erp-module-grid-5 {
    gap: 12px;
}

body.cafe-admin-app.admin-suite .erp-module-card {
    min-height: 96px;
    max-height: 110px;
    padding: 14px;
    justify-content: flex-start;
}

body.cafe-admin-app.admin-suite .erp-module-title {
    font-size: 13px;
}

body.cafe-admin-app.admin-suite .erp-panel {
    padding: 12px 14px 14px;
}

body.cafe-admin-app.admin-suite .erp-workspace-grid {
    gap: 12px;
}

body.cafe-admin-app.admin-suite .erp-ticket-list {
    max-height: 260px;
    gap: 8px;
}

body.cafe-admin-app.admin-suite .erp-ticket-id {
    display: none;
}

body.cafe-admin-app.admin-suite .erp-table-grid {
    max-height: 280px;
    gap: 8px;
}

body.cafe-admin-app.admin-suite .erp-nav {
    gap: 3px;
}

body.cafe-admin-app.admin-suite .erp-nav-item {
    min-height: 40px !important;
    padding: 0 10px !important;
}

body.cafe-admin-app.admin-suite .erp-topbar-titles h2 {
    font-size: 17px;
    font-weight: 700;
}

body.cafe-admin-app.admin-workspace .admin-ops-shell {
    max-width: var(--pos-max-admin);
    margin: 0 auto;
}

body.cafe-admin-app.admin-workspace .grid-workflow {
    gap: 12px !important;
}


/* ——— Garson ——— */
body.waiter-app .main {
    padding: var(--pos-space-sm) !important;
    padding-bottom: calc(92px + env(safe-area-inset-bottom, 0px)) !important;
}

body.waiter-app .table-grid {
    gap: 8px !important;
}

body.waiter-app .table-card {
    min-height: 84px !important;
    max-height: 100px;
    padding: 10px 8px !important;
}

body.waiter-app .prod-grid {
    gap: 10px !important;
}

body.waiter-app .prod-card {
    min-height: 116px;
    max-height: 140px;
}

body.waiter-app .cart-bar {
    min-height: 64px;
    align-items: center;
}

body.waiter-app .cart-info {
    min-width: 0;
}

@media (max-width: 390px) {
    body.waiter-app .header-user {
        display: none;
    }

    body.waiter-app .cart-bar {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    body.waiter-app .btn-send {
        min-width: 108px;
        padding: 0 12px;
    }
}

/* ——— Login ——— */
body.admin-suite-login .admin-pro-login-shell {
    max-width: var(--pos-max-login);
    margin: 0 auto;
}

@media (min-width: 1920px) {
    body.cafe-admin-app.admin-suite .erp-page,
    body.cafe-admin-app.admin-workspace .admin-ops-shell {
        max-width: 1440px;
    }
}

@media (max-width: 768px) {
    body.cafe-admin-app.admin-suite .erp-kpi-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.cafe-admin-app.admin-suite .erp-module-grid-5 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 360px) {
    body.cafe-admin-app.admin-suite .erp-kpi-row {
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }

    body.cafe-admin-app.admin-suite .erp-kpi-body .v {
        font-size: 18px;
    }
}
