/* ============================================================
   COMPACT TEMPLATE - Dense, fast, price-focused
   ============================================================ */
body.template-compact {
    background: #F0F2F5;
    color: #1A1A2E;
    font-family: 'Inter', 'Tajawal', sans-serif;
}

body.template-compact .app-header {
    background: #1A1A2E !important;
    padding: 12px 16px 10px !important;
    border-radius: 0 !important;
    margin-bottom: 0 !important;
}
body.template-compact .header-bg { display: none; }
body.template-compact .header-top-row { margin-bottom: 6px; }
body.template-compact .header-delivery { font-size: 0.75rem; }
body.template-compact .restaurant-name { font-size: 1.1rem; font-weight: 800; letter-spacing: -0.5px; }
body.template-compact .restaurant-rating { font-size: 0.75rem; margin-bottom: 2px; }
body.template-compact .restaurant-meta span { font-size: 0.7rem; padding: 2px 8px; }
body.template-compact .header-restaurant-logo { width: 40px; height: 40px; font-size: 1rem; }

/* Categories - more compact */
body.template-compact .categories-wrapper { padding: 6px 0 4px; background: #FFFFFF; }
body.template-compact .cat-tab { padding: 4px 12px; font-size: 0.72rem; font-weight: 700; border-radius: 4px; }
body.template-compact .cat-tab i { font-size: 0.7rem; }
body.template-compact .cat-tab-img { width: 16px; height: 16px; }

/* Items - compact horizontal layout */
body.template-compact .menu-content { padding: 4px 8px; max-width: 100%; }
body.template-compact .menu-section { margin-bottom: 4px; }
body.template-compact .menu-section-header { padding: 6px 4px 2px; }
body.template-compact .menu-section-title { font-size: 0.85rem; font-weight: 800; }
body.template-compact .menu-section-count { font-size: 0.65rem; }
body.template-compact .menu-items-list { gap: 4px; }

body.template-compact .menu-item { border-radius: 6px; border: none; background: #FFFFFF; box-shadow: 0 1px 3px rgba(0,0,0,0.06); min-height: 0; }
body.template-compact .menu-item-image-wrap { width: 60px; min-height: 60px; }
body.template-compact .menu-item-info { padding: 8px 10px; }
body.template-compact .menu-item-name { font-size: 0.82rem; font-weight: 700; margin-bottom: 0; }
body.template-compact .menu-item-name-en { font-size: 0.65rem; margin-bottom: 2px; }
body.template-compact .menu-item-desc { font-size: 0.68rem; -webkit-line-clamp: 1; margin-bottom: 4px; }
body.template-compact .menu-item-bottom { margin-top: 0; }
body.template-compact .menu-item-price { font-size: 0.85rem; font-weight: 800; color: #E53935; }
body.template-compact .menu-item-price::before { content: ''; font-size: 0.65rem; }
body.template-compact .menu-item-add-btn { padding: 3px 10px; font-size: 0.68rem; border-radius: 4px; font-weight: 700; background: #1A1A2E; color: #fff; }
body.template-compact .menu-item-add-btn:hover { background: #E53935; }
body.template-compact .menu-item-add-btn.added { background: #4CAF50; }

/* Bottom nav - compact */
body.template-compact .bottom-nav { height: 50px; background: #1A1A2E; border-top: none; }
body.template-compact .nav-item { padding: 4px 12px; color: #666688; }
body.template-compact .nav-item i { font-size: 1rem; }
body.template-compact .nav-item span { font-size: 0.6rem; }
body.template-compact .nav-item.active { color: #FFFFFF; }
body.template-compact .nav-cart-badge { width: 16px; height: 16px; font-size: 0.5rem; top: 0; right: 4px; background: #E53935; }

/* Cart - compact */
body.template-compact .cart-fab { bottom: 65px; right: 10px; }
body.template-compact .cart-fab-btn { width: 48px; height: 48px; font-size: 1.1rem; background: #E53935; }
body.template-compact .cart-fab-total { font-size: 0.75rem; padding: 5px 10px; background: #FFFFFF; color: #E53935; font-weight: 800; }
body.template-compact .cart-badge { width: 18px; height: 18px; font-size: 0.55rem; background: #FF9800; }
body.template-compact .cart-drawer-header { padding: 14px 16px 10px; }
body.template-compact .cart-drawer-header h3 { font-size: 0.95rem; font-weight: 800; }
body.template-compact .cart-item { padding: 10px 0; }
body.template-compact .cart-item-name { font-size: 0.8rem; }
body.template-compact .cart-item-price { font-size: 0.75rem; font-weight: 700; }
body.template-compact .cart-item-qty { padding: 2px; }
body.template-compact .cart-qty-btn { width: 24px; height: 24px; font-size: 0.6rem; }
body.template-compact .cart-qty-num { font-size: 0.78rem; min-width: 16px; }
body.template-compact .cart-footer { padding: 12px 16px 20px; }
body.template-compact .cart-subtotal, body.template-compact .cart-total { font-size: 0.78rem; padding: 4px 0; }
body.template-compact .cart-total-price { font-size: 0.95rem; }
body.template-compact .cart-checkout-btn { padding: 12px; font-size: 0.82rem; font-weight: 700; }
body.template-compact .cart-empty { padding: 20px 0; }
body.template-compact .cart-empty i { font-size: 1.8rem; }

/* Promo */
body.template-compact .promo-banner { margin: 6px 8px 0; padding: 8px 12px; }
body.template-compact .promo-icon { width: 28px; height: 28px; font-size: 0.75rem; }
body.template-compact .promo-text { font-size: 0.75rem; }

/* Loading */
body.template-compact .menu-loading { padding: 40px 16px; }
body.template-compact .loading-dots span { width: 8px; height: 8px; background: #1A1A2E; }

/* Search */
body.template-compact .search-bar { padding: 8px 12px; }
body.template-compact .search-bar-inner input { font-size: 0.82rem; padding: 8px 0; }

/* Reduce body padding */
body.template-compact { padding-bottom: calc(50px + 10px); }
