/* =============================================
   Pesquisa Pública - page_pesquisapublica
   ============================================= */

.pp-page { font-family:'Roboto',sans-serif; min-height:100%; padding:0; }

/* Header */
.pp-header { background:#fff; border-radius:0 0 20px 20px; padding:24px 28px 20px; box-shadow:0 4px 20px rgba(0,0,0,.08); margin-bottom:24px; border-top:4px solid #c62828; display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
.pp-header-logo { width:70px; height:70px; object-fit:contain; border-radius:12px; border:2px solid #f0f0f0; background:#fff; padding:4px; flex-shrink:0; }
.pp-header-info { flex:1; min-width:180px; }
.pp-header-info h2 { font-size:20px; font-weight:700; color:#c62828; margin:0 0 4px; }
.pp-header-info p { font-size:13px; color:#888; margin:0; }
.pp-tutorial-btn { font-size:13px; color:#c62828; text-decoration:none; display:inline-flex; align-items:center; gap:4px; }
.pp-tutorial-btn:hover { color:#a31515; }

/* Tabs */
.pp-tabs { display:flex; gap:8px; padding:0; margin-bottom:20px; flex-wrap:wrap; }
.pp-tab { padding:8px 20px; border-radius:50px; font-size:13px; font-weight:600; cursor:pointer; border:2px solid #e0e0e0; background:#fff; color:#666; transition:all .2s; }
.pp-tab.active { background:#c62828; color:#fff; border-color:#c62828; }
.pp-tab:hover:not(.active) { border-color:#c62828; color:#c62828; }

/* Seções */
.pp-section { padding:0; }
.pp-card { background:#fff; border-radius:16px; padding:22px; box-shadow:0 2px 12px rgba(0,0,0,.06); margin-bottom:18px; }
.pp-card-title { font-size:15px; font-weight:700; color:#333; margin-bottom:16px; display:flex; align-items:center; gap:8px; }
.pp-card-title i { color:#c62828; font-size:20px; }

/* QR Code */
.pp-qr-wrap { display:flex; align-items:center; gap:20px; flex-wrap:wrap; }
.pp-qr-preview { width:120px; height:120px; border:3px solid #c62828; border-radius:12px; padding:6px; display:flex; align-items:center; justify-content:center; background:#fff; flex-shrink:0; }
.pp-qr-preview img { width:100%; height:100%; object-fit:contain; }
.pp-qr-info { flex:1; min-width:200px; }

/* Link box */
.pp-link-box { display:flex; align-items:center; gap:8px; background:#f8f8f8; border:1px solid #e0e0e0; border-radius:8px; padding:8px 12px; margin-bottom:12px; flex-wrap:wrap; }
.pp-link-box a { font-size:13px; color:#c62828; word-break:break-all; flex:1; min-width:120px; }
.pp-link-box button { flex-shrink:0; border:none; background:#c62828; color:#fff; border-radius:6px; padding:6px 10px; cursor:pointer; font-size:13px; display:inline-flex; align-items:center; gap:4px; }
.pp-link-box button:hover { background:#a31515; }

/* Toggle / select */
.pp-toggle-row { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.pp-toggle-label { font-size:14px; color:#444; font-weight:500; }
.pp-toggle-select { border:2px solid #e0e0e0; border-radius:8px; padding:7px 12px; font-size:14px; color:#333; cursor:pointer; outline:none; transition:border-color .2s; padding-right: 30px; }
.pp-toggle-select:focus { border-color:#c62828; }

/* Botão salvar */
.pp-save-btn { background:#c62828; color:#fff; border:none; border-radius:8px; padding:9px 22px; font-size:14px; font-weight:600; cursor:pointer; display:inline-flex; align-items:center; gap:6px; transition:all .2s; }
.pp-save-btn:hover { background:#a31515; transform:translateY(-1px); }

/* Botão imprimir */
.pp-print-btn { background:#e53935; color:#fff; border:none; border-radius:8px; padding:10px 20px; font-size:14px; font-weight:600; cursor:pointer; display:inline-flex; align-items:center; gap:6px; transition:all .2s; text-decoration:none; }
.pp-print-btn:hover { background:#b71c1c; transform:translateY(-1px); color:#fff; }

/* Grid de filiais */
.pp-filiais-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:16px; }
.pp-filial-card { background:#fff; border-radius:14px; padding:18px; box-shadow:0 2px 12px rgba(0,0,0,.07); border-left:4px solid #e0e0e0; transition:all .3s; }
.pp-filial-card.ativa { border-left-color:#27ae60; }
.pp-filial-card.inativa { border-left-color:#e53935; }
.pp-filial-card:hover { transform:translateY(-3px); box-shadow:0 8px 24px rgba(0,0,0,.12); }
.pp-filial-top { display:flex; align-items:center; gap:12px; margin-bottom:14px; }
.pp-filial-logo { width:46px; height:46px; border-radius:10px; object-fit:contain; border:1px solid #f0f0f0; background:#fafafa; padding:3px; flex-shrink:0; }
.pp-filial-name { font-size:14px; font-weight:700; color:#333; flex:1; }
.pp-filial-badge { font-size:11px; font-weight:700; padding:3px 10px; border-radius:50px; }
.pp-filial-badge.on { background:#e8f5e9; color:#27ae60; }
.pp-filial-badge.off { background:#ffebee; color:#e53935; }
.pp-filial-actions { display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.pp-filial-link { font-size:12px; color:#c62828; text-decoration:none; word-break:break-all; flex:1; min-width:100px; }
.pp-filial-link:hover { text-decoration:underline; }
.pp-filial-copy { border:none; background:#f5f5f5; color:#555; border-radius:6px; padding:5px 8px; cursor:pointer; font-size:12px; display:inline-flex; align-items:center; gap:3px; flex-shrink:0; }
.pp-filial-copy:hover { background:#e0e0e0; }
.pp-filial-print { border:none; background:#fff3e0; color:#e65100; border-radius:6px; padding:5px 8px; cursor:pointer; font-size:12px; display:inline-flex; align-items:center; gap:3px; flex-shrink:0; text-decoration:none; }
.pp-filial-print:hover { background:#ffe0b2; }
.pp-filial-toggle { border:1px solid #e0e0e0; border-radius:6px; padding:5px 8px; font-size:12px; color:#333; background:#fff; cursor:pointer; }
.pp-filial-toggle:focus { outline:none; border-color:#c62828; }
.pp-filial-save { border:none; background:#c62828; color:#fff; border-radius:6px; padding:5px 10px; cursor:pointer; font-size:12px; display:inline-flex; align-items:center; gap:3px; }
.pp-filial-save:hover { background:#a31515; }

/* Responsivo */
@media (max-width:600px) {
    .pp-header { padding:16px 16px 14px; }
    .pp-section { padding:0 14px 20px; }
    .pp-tabs { padding:0 14px; }
}
