:root{
  /* Hikari Fusion palette */
  --hikari-red:#D40511; --hikari-red-50:#fef2f2; --hikari-red-100:#fee2e2; --hikari-red-700:#b91c1c;
  --hikari-black:#15151E;
  --hikari-blue:#0d6efd; --hikari-blue-700:#0b5ed7; --hikari-blue-50:#e7f1ff; --hikari-blue-100:#cfe2ff;
  /* App tokens */
  --bg:#f3f4f7; --card:#fafbfc; --surface:#fafbfc; --text:#15151E; --muted:#6b7280;
  --accent:#0d6efd; --link:#0d6efd; --border:#e5e7eb;
}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;background:var(--bg);color:var(--text)}
a{color:var(--link);text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:1100px;margin:0 auto;padding:24px}
.nav{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border:1px solid var(--border);border-bottom:3px solid var(--hikari-red);border-radius:16px;background:var(--surface)}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.3px}
.brand .dot{width:10px;height:10px;border-radius:999px;background:var(--hikari-red);box-shadow:0 0 18px rgba(212,5,17,.45)}
.menu{display:flex;gap:14px;flex-wrap:wrap}
.menu a{padding:8px 10px;border-radius:12px;color:var(--text)}
.menu a.active,.menu a:hover{background:var(--hikari-blue-50);color:var(--hikari-blue-700);text-decoration:none}
.hero{margin-top:18px;padding:22px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}
.hero h1{margin:0 0 8px;font-size:34px;line-height:1.15}
.hero p{margin:0;color:var(--muted);max-width:70ch}
.grid{display:grid;grid-template-columns: 1.4fr .6fr;gap:18px;margin-top:18px}
@media (max-width:900px){.grid{grid-template-columns:1fr}}
.card{padding:18px;border:1px solid var(--border);border-radius:18px;background:var(--card)}
.card h2,.card h3{margin:0 0 10px}
.meta{color:var(--muted);font-size:13px}
.badge{display:inline-block;font-size:12px;padding:4px 8px;border:1px solid var(--border);border-radius:999px;background:var(--hikari-blue-50);color:var(--hikari-blue-700)}
.list{display:grid;gap:12px}
.article{padding:14px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}
.article h3{margin:0 0 6px}
.article p{margin:0;color:var(--muted)}
.kats{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.footer{margin-top:26px;padding:18px;border-top:1px solid var(--border);color:var(--muted);font-size:13px}
.input,textarea{width:100%;padding:12px 12px;border-radius:14px;border:1px solid var(--border);background:var(--surface);color:var(--text);outline:none}
.input:focus,textarea:focus{border-color:var(--hikari-blue);box-shadow:0 0 0 3px var(--hikari-blue-100)}
textarea{min-height:120px;resize:vertical}
.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:14px;border:1px solid var(--hikari-blue);background:var(--hikari-blue);color:#ffffff;cursor:pointer}
.btn:hover{background:var(--hikari-blue-700);border-color:var(--hikari-blue-700)}
.btn.secondary{background:var(--surface);color:var(--text);border-color:var(--border)}
.btn.secondary:hover{background:var(--hikari-blue-50);color:var(--hikari-blue-700);border-color:var(--hikari-blue-100)}
hr.sep{border:none;border-top:1px solid var(--border);margin:14px 0}

/* Grayscale emoji: apply to text containers but not images/photos */
.hero, .article, .card, .footer, .meta, .badge, .menu, .btn, .nav { font-variant-emoji: text; }
.hero, .article, .card p, .footer, .meta, .badge { -webkit-font-smoothing:antialiased; }
.hero h1, .hero p, .article h3, .article p, .card h2, .card h3, .meta, .badge, .footer, .menu a, .btn {
  /* keep text styling normal */
}
/* Emoji-only wrapper: any element with class .emoji is grayscaled */
.emoji{filter:grayscale(1);display:inline-block}
