    :root {
      --bg: #f3f4f8;
      --card: #fff;
      --accent: #0ea5a4;
      --muted: #6b7280;
      --border: #e5e7eb;
      --shadow: 0 3px 12px rgba(0,0,0,0.08);
    }
    body { margin: 0; font-family: "Inter", system-ui, sans-serif; background: var(--bg); color: #111; }
    header { background: var(--card); padding: 18px 28px; box-shadow: 0 2px 10px rgba(0,0,0,0.05); display:flex; justify-content:space-between; align-items:center; position:sticky; top:0; z-index:100; }
    header h1 { font-size:22px; margin:0; color:var(--accent); }
    .actions { display:flex; gap:10px; }
    .btn-outline { display:inline-block; padding:10px 14px; border:1px solid #c7d6d6; color:#b9c9c9; border-radius:6px; text-decoration:none; font-weight:600; }
    .btn-accent { padding:10px 16px; border-radius:8px; border:0; font-weight:600; cursor:pointer; background:var(--accent); color:#fff; }
    .container { display:grid; grid-template-columns: 2fr 1fr; gap:20px; padding:24px; }
    .card { background: var(--card); border-radius:14px; padding:20px; box-shadow: var(--shadow); }
    #map { width:100%; height:420px; border-radius:12px; border:1px solid var(--border); }
    .info-grid { display:grid; grid-template-columns: repeat(auto-fit, minmax(140px,1fr)); gap:14px; margin-bottom:18px; }
    .info { background:#f9fafb; border-radius:10px; padding:16px; text-align:center; box-shadow:0 1px 6px rgba(0,0,0,0.04); }
    .info h3 { margin:0; color:var(--accent); font-size:26px; }
    .info p { margin:6px 0 0; font-size:14px; color:var(--muted); }
    .charts-grid { display:grid; grid-template-columns: 1fr; gap:18px; margin-top:12px; }
    .small { font-size:13px; color:var(--muted); margin-top:6px; }
    #dashboard { display:flex; flex-direction:column; gap:12px; }
    #nuvemDificuldades { width:100%; height:240px; border-radius:8px; background:#fff; padding:6px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; }

    #nuvemDificuldades span {
      font-size: 10px !important;
    }

    @media (max-width:900px) { .container { grid-template-columns:1fr; } }
    
    