
:root{
  --ink:#1f2937;
  --ink-2:#374151;
  --bg:#f8fafc;
  --card:#ffffff;
  --accent:#3b82f6;
  --border:#e5e7eb;
}
*{box-sizing:border-box}
body{
  margin:0;
  font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  color:var(--ink);
  background:var(--bg);
}
.site-header{
  background:linear-gradient(180deg,#ffffff 0,#f4f7fb 100%);
  border-bottom:1px solid var(--border);
  padding:1rem 1.25rem;
}
.site-header h1{
  margin:0 0 .5rem 0;
  font-size:1.75rem;
}
.site-header h1 a{text-decoration:none;color:var(--ink)}
.primary-nav ul{
  display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin:0;
}
.primary-nav a{
  display:inline-block;padding:.4rem .8rem;border:1px solid var(--border);
  background:var(--card);border-radius:.5rem;text-decoration:none;color:var(--ink-2);
}
.primary-nav a:hover{border-color:var(--accent)}
.content{max-width:1000px;margin:2rem auto;padding:0 1rem}
.content h2{margin-top:0.2rem}
.category-sample img,.gallery-grid img{width:100%;height:auto;display:block;border-radius:.5rem;border:1px solid var(--border)}
.category-sample{max-width:680px}
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}
.vote-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}
.vote-card{display:block;border:1px solid var(--border);padding:.75rem;border-radius:.5rem;background:var(--card)}
.vote-card img{width:100%;height:auto;border-radius:.35rem;margin:.5rem 0}
.entry-title{display:block;font-weight:600}
.submit-form fieldset,.vote-form fieldset{border:1px solid var(--border);border-radius:.5rem;padding:1rem;background:var(--card)}
.submit-form label,.submit-form input,.submit-form select,.submit-form textarea{display:block;width:100%}
.submit-form label{margin-top:.75rem}
.submit-form input,.submit-form select,.submit-form textarea{padding:.55rem;border:1px solid var(--border);border-radius:.35rem}
.submit-form button,.vote-form button{
  margin-top:1rem;padding:.6rem 1rem;border:1px solid var(--accent);background:var(--accent);
  color:white;border-radius:.45rem;cursor:pointer
}
.submit-form button:hover,.vote-form button:hover{filter:brightness(.95)}
.site-footer{border-top:1px solid var(--border);padding:1rem 1.25rem;background:#fff;margin-top:3rem}
.site-footer p{margin:.4rem 0}
.sitemap-link a{text-decoration:none}
.a2a_kit{margin:.5rem 0}
.chat-embed{border:1px solid var(--border);border-radius:.5rem;overflow:hidden;background:var(--card)}
figure{margin:0}
figcaption{font-size:.9rem;color:var(--ink-2);margin-top:.35rem}
