/* Identidade visual compartilhada. Impressão mantém os comprovantes originais. */
@media screen {
    :root {
        --primary: #047857; --primary-dark: #065f46; --primary-color: #047857;
        --secondary: #102a2a; --bg-light: #f3f6f5; --text-main: #334b48;
        --text-dark: #16332e; --text-muted: #6b7d78; --border-color: #e0e9e5;
        --radius: 16px; --shadow-sm: 0 4px 20px #16332e06;
    }
    body { background: #f3f6f5; color: #334b48; font-family: 'Segoe UI', system-ui, sans-serif; }
    * { font-family: 'Segoe UI', system-ui, sans-serif; }
    body .sidebar { background: #102a2a; width: 260px; padding: 28px 16px; }
    .sidebar-brand { font-size: 19px; letter-spacing: -.5px; line-height: 1.25; padding: 8px 10px 24px; margin-bottom: 16px; border-bottom: 1px solid #ffffff14; }
    .sidebar-brand span { color: #6ee7b7; }
    .sidebar-menu { gap: 6px; }
    .nav-link { font-weight: 500; color: #aac2b9; padding: 13px 12px; border-radius: 10px; }
    .nav-link:hover { color: #f0fdf4; background: #ffffff0c; }
    .nav-link.active { background: #0c765b; box-shadow: 0 3px 10px #00000014; color: #fff; }
    .nav-cozinha-status { gap: 5px; padding: 8px 0; }
    .nav-cozinha-indicador { background: #ffffff08; color: #bfd2ca; }
    .nav-cozinha-indicador:hover { background: #ffffff15; }
    .nav-cozinha-indicador.PRONTO { border-color: #34866c; }
    body .main-content { padding: 32px; max-width: calc(100% - 260px); }
    .header, .header-actions { margin-bottom: 28px; gap: 16px; }
    .header h1, .header-actions h1 { font-size: clamp(22px, 2vw, 28px); letter-spacing: -.7px; line-height: 1.3; font-weight: 700; color: #16332e; }
    .card, .kpi-card, .comanda-card, .pedido-cozinha { background: #fff; border-color: #e0e9e5; border-radius: 16px; box-shadow: 0 4px 20px #16332e06; }
    .card { padding: 24px; margin-bottom: 24px; }
    .card-header { font-size: 16px; font-weight: 650; color: #16332e; margin-bottom: 20px; padding-bottom: 14px; border-bottom: 1px solid #eef3f0; }
    .kpi-card { padding: 22px 24px; }
    .kpi-title { color: #6b7d78; font-size: 13px; font-weight: 500; margin-bottom: 12px; }
    .kpi-value { font-size: 30px; letter-spacing: -1px; font-weight: 700; color: #16332e; }
    .grid-cards { gap: 16px; margin-bottom: 24px; }
    .form-group label { font-size: 12px; font-weight: 650; color: #526860; letter-spacing: .1px; }
    .form-group input, .form-group select, .form-group textarea, .search-bar-container input { min-height: 44px; border-color: #d6e2dc; border-radius: 9px; background: #fff; padding: 11px 12px; color: #16332e; }
    input::placeholder { color: #93a29b; }
    .form-group input:focus, .form-group select:focus, .form-group textarea:focus { border-color: #059669; box-shadow: 0 0 0 3px #05966914; }
    .btn { min-height: 44px; border-radius: 9px; font-size: 13px; font-weight: 650; padding: 11px 16px; }
    .btn-primary { background: #047857; box-shadow: 0 2px 5px #04785712; }
    .btn-primary:hover { background: #065f46; }
    .btn-outline { background: white; border: 1px solid #d6e2dc; color: #425d52; }
    .btn-outline:hover { background: #f0f7f3; border-color: #9ebcae; }
    .btn:disabled { opacity: .6; cursor: wait; }
    :focus-visible { outline: 3px solid #34d399; outline-offset: 3px; }
    th { background: #f4f8f6; color: #64776e; font-size: 11px; font-weight: 650; letter-spacing: .5px; padding: 14px; border-color: #e5eee9; }
    td { padding: 15px 14px; font-size: 13px; border-color: #edf2ef; color: #334b48; }
    tbody tr:hover { background: #f8fbf9; }
    .table-responsive { border-radius: 12px; }
    .badge-num { border-radius: 8px; background: #e8f5ef; color: #047857; }
    .comanda-card-header, .comanda-card-footer { border-color: #e6eee9; }
    .comanda-total-val { color: #047857; font-size: 22px; }
    .modal-overlay { backdrop-filter: blur(3px); }
    .modal-card { border-radius: 18px; }
    .modal-card h2, .modal-card h3 { color: #16332e; letter-spacing: -.4px; }
    .modal-footer { border-color: #e5eee9; }
    .grupo-card { background: #f0f8f3; color: #047857; border-color: #c5e3d3; border-radius: 12px; }
    .grupo-card:hover { background: #e2f3e9; border-color: #059669; }
    .prod-item-card { border-color: #e0e9e5; border-radius: 12px; padding: 16px; }
    .prod-item-card:hover { background: #f6fbf7; border-color: #059669; }
    .login-body { background: #102a2a; background-image: radial-gradient(ellipse at top, #1d5047, transparent 70%); }
    .login-box { border-radius: 20px; box-shadow: 0 24px 70px #00000025; padding: 32px; }
    .filtros-cozinha button[aria-pressed="true"] { background: #16332e; border-color: #16332e; }
    .cozinha-intro, #cozinha-status { color: #6b7d78; }
    .pedido-obs { background: #fff9e9; border-left: 3px solid #e4b544; }
    .pwa-barra { border: 1px solid #e0e9e5; }
}
@media screen and (min-width: 769px) {
    body .sidebar { position: sticky; top: 0; height: 100dvh; overflow-y: auto; align-self: flex-start; }
}
@media screen and (max-width: 768px) {
    body .sidebar { width: 100%; padding: 16px; align-items: center; }
    .sidebar-brand { width: auto; flex: 1; margin: 0; padding: 4px 0; border: none; }
    .sidebar-toggle { background: #ffffff10; }
    body .main-content { padding: 20px 16px; max-width: 100%; width: 100%; }
    .sidebar-menu { padding-top: 12px; }
    .card { padding: 18px; }
    .kpi-card { padding: 18px; }
    .kpi-value { font-size: 26px; }
    .form-group input, .form-group select, .form-group textarea { font-size: 16px; }
    .pwa-barra { bottom: max(12px, env(safe-area-inset-bottom)); }
}
