
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;600;700&family=Noto+Sans+SC:wght@400;500;700;900&display=swap');
:root{--accent:#059669;--ink:#12161c;--muted:#5c6b7a;--line:rgba(18,22,28,.12);--bg:#f6f8fa;--card:#fff;--max:1120px}
*{box-sizing:border-box}body{margin:0;font-family:"Noto Sans SC","DM Sans",sans-serif;color:var(--ink);background:var(--bg);line-height:1.7}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}
.container{width:min(var(--max),calc(100% - 2rem));margin:0 auto}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.15rem;border-radius:999px;background:var(--accent);color:#fff;font-weight:700;border:0}
.btn.ghost{background:#fff;color:var(--ink);border:1px solid var(--line)}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.card .body{padding:1rem}.card h3{margin:.2rem 0 .5rem;font-size:1.02rem}.card p{margin:0;color:var(--muted);font-size:.92rem}
.meta{display:flex;gap:.5rem;flex-wrap:wrap;color:var(--muted);font-size:.78rem;margin-bottom:.4rem}
.tag{background:color-mix(in srgb,var(--accent) 16%,#fff);color:var(--accent);padding:.1rem .45rem;border-radius:999px;font-weight:700}
.pagination{display:flex;gap:.4rem;justify-content:center;flex-wrap:wrap;margin:1.5rem 0}
.pagination button{min-width:38px;height:38px;border-radius:10px;border:1px solid var(--line);background:#fff;font-weight:700}
.pagination button.active{background:var(--ink);color:#fff}
.footer{margin-top:3rem;padding:2rem 0;border-top:1px solid var(--line);color:var(--muted);font-size:.9rem}
.detail{display:grid;grid-template-columns:1fr 280px;gap:1.2rem}
.article{background:#fff;border:1px solid var(--line);border-radius:16px;padding:1.3rem}
.side{background:#fff;border:1px solid var(--line);border-radius:16px;padding:1rem;position:sticky;top:1rem}
@media(max-width:900px){.grid3,.detail{grid-template-columns:1fr}}

body{background:#ecfdf5}
.board-top{background:#064e3b;color:#ecfdf5;padding:.8rem 0}
.board-top .row{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.9rem}
.panels{display:grid;grid-template-columns:2fr 1fr;gap:1rem;padding:1rem 0}
.panel-box{background:#fff;border:1px solid #a7f3d0;border-radius:14px;padding:1rem}
.ticker{display:flex;gap:1rem;overflow:auto;padding:.6rem 0;font-family:ui-monospace,monospace}
.ticker span{white-space:nowrap;background:#fff;border:1px solid #a7f3d0;border-radius:8px;padding:.35rem .6rem}
@media(max-width:900px){.panels{grid-template-columns:1fr}}
