body { margin:0; font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; background:#f6f7f9; }
.container { max-width: 1100px; margin: 0 auto; padding: 16px; }
.topbar { background:#111827; color:#fff; padding:12px 16px; display:flex; gap:16px; align-items:center; justify-content:space-between; }
.topbar a { color:#fff; text-decoration:none; margin-left:10px; opacity:.9; }
.topbar a:hover { opacity:1; }
.brand { font-weight:700; }
.card { background:#fff; border:1px solid #e5e7eb; border-radius:10px; padding:14px; margin: 14px 0; }
.row { display:flex; gap:10px; flex-wrap:wrap; align-items:center; }
.grid2 { display:grid; grid-template-columns: 1fr 1fr; gap: 14px; }
@media(max-width: 800px){ .grid2{ grid-template-columns:1fr; } }

input, select, button { padding:10px 12px; border-radius:8px; border:1px solid #d1d5db; font-size:16px; }
button, .btn { background:#2563eb; color:#fff; border:none; cursor:pointer; text-decoration:none; display:inline-block; }
.btn { padding:10px 12px; border-radius:8px; }
.actions .btn { background:#374151; }
.table { width:100%; border-collapse: collapse; background:#fff; border:1px solid #e5e7eb; }
.table th, .table td { padding:10px; border-bottom:1px solid #eef2f7; text-align:left; }
.table th { background:#f3f4f6; }
.num { text-align:right; font-variant-numeric: tabular-nums; }
.low { background: #fee2e2; }
.alert { background:#fee2e2; border:1px solid #fecaca; padding:10px; border-radius:10px; }
.muted { color:#6b7280; }
.hint { color:#374151; margin:10px 0; }
.tile-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 20px;
  margin-top: 20px;
}

.tile {
  display: block;
  padding: 20px;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  background: #fff;
  text-decoration: none;
  color: inherit;
  transition: box-shadow 0.2s, transform 0.2s;
}

.tile:hover {
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
  transform: translateY(-2px);
}

.tile-icon {
  font-size: 32px;
}

.tile-title {
  font-weight: 700;
  margin-top: 10px;
}

.tile-desc {
  font-size: 0.9em;
  color: #555;
}
``