
:root { font-family: system-ui, -apple-system, Segoe UI, Roboto, Noto Sans, "Noto Sans Arabic", "Noto Sans JP", "Noto Sans SC", Arial, sans-serif; }
body.container { margin: 0 auto; max-width: 1100px; padding: 1rem; }
.topbar { display: flex; gap: 1rem; align-items: center; justify-content: space-between; flex-wrap: wrap; }
.topbar nav a { margin-right: 1rem; text-decoration: none; }
.hero-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 1rem; }
.card { border: 1px solid #ddd; border-radius: 12px; overflow: hidden; }
.card img { width: 100%; height: auto; object-fit: cover; background: #f0f0f0; }
.card-body { padding: .75rem 1rem; }
.actions .btn { display: inline-block; padding: .5rem .8rem; border: 1px solid #333; border-radius: 8px; margin-right: .5rem; text-decoration: none; }
.detail { display: grid; grid-template-columns: 200px 1fr; gap: 1rem; }
.detail .portrait { width: 200px; height: 240px; object-fit: cover; background: #f0f0f0; }
.footer { margin-top: 2rem; border-top: 1px solid #eee; padding-top: 1rem; font-size: .9rem; color: #555; }
.lang-switch { display:flex; align-items: center; gap: .5rem; }
