:root{
  --brand:#d40000;
  --bg:#f3f3f3;
  --card:#ffffff;
  --text:#111;
  --muted:#666;
  --shadow: 0 2px 14px rgba(0,0,0,.06);
  --radius: 14px;
}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial;background:var(--bg);color:var(--text)}
a{color:inherit}
.container{max-width:1120px;margin:0 auto;padding:16px}
.header{background:#fff;border-bottom:3px solid var(--brand)}
.brand{display:flex;align-items:center;gap:12px;padding:14px 16px}
.brand .logo{width:44px;height:44px;border-radius:12px;background:var(--brand)}
.brand .title{font-weight:900;letter-spacing:.2px}
.brand .sub{font-size:12px;color:var(--muted);margin-top:2px}
.nav{background:var(--brand)}
.nav .wrap{max-width:1120px;margin:0 auto;display:flex;gap:2px;align-items:center;padding:0 10px;flex-wrap:wrap}
.nav a{display:inline-block;color:#fff;text-decoration:none;padding:12px 14px;font-weight:700;border-radius:10px}
.nav a:hover{background:rgba(0,0,0,.12)}
.search{margin-left:auto;display:flex;gap:8px;align-items:center;padding:8px 0}
.search input{border:0;border-radius:12px;padding:10px 12px;outline:none;min-width:220px}
.search button{border:0;border-radius:12px;padding:10px 12px;font-weight:800;cursor:pointer}
@media (max-width:720px){
  .search{width:100%}
  .search input{flex:1;min-width:0}
}

.grid{display:grid;grid-template-columns: 1fr 320px;gap:16px}
@media (max-width: 980px){.grid{grid-template-columns:1fr}.sidebar{order:2}}

.badge{display:inline-block;background:var(--brand);color:#fff;font-weight:800;font-size:12px;padding:8px 10px;border-radius:999px}

.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:12px}
@media (max-width: 900px){.cards{grid-template-columns:repeat(2,1fr)}}
@media (max-width: 520px){.cards{grid-template-columns:1fr}}

.card{background:var(--card);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.thumb{aspect-ratio:16/9;background:#ddd;display:block}
.thumb img{width:100%;height:100%;object-fit:cover;display:block}
.pad{padding:12px}
.card h3{margin:0 0 8px;font-size:16px;line-height:1.25}
.card h3 a{text-decoration:none}
.card p{margin:0;color:#333;font-size:13px;line-height:1.45}
.meta{margin-top:10px;color:#777;font-size:12px}

.box{background:var(--card);border-radius:var(--radius);padding:12px;box-shadow:var(--shadow)}
.box h4{margin:0 0 10px}
.latest a{display:block;text-decoration:none;padding:10px 8px;border-radius:12px}
.latest a:hover{background:#f5f5f5}
.latest .t{font-weight:800;font-size:13px;line-height:1.2}
.latest .d{font-size:12px;color:#777;margin-top:4px}

.pagination{display:flex;gap:10px;margin:18px 0;flex-wrap:wrap}
.pagination a{background:var(--card);padding:10px 12px;border-radius:12px;text-decoration:none;box-shadow:var(--shadow);font-weight:800}

.article{background:var(--card);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}
.article h1{margin:0 0 10px;font-size:28px;line-height:1.2}
.article .meta2{color:#777;font-size:13px;margin-bottom:10px}
.article img{max-width:100%;height:auto;border-radius:var(--radius);margin:12px 0}
.article .content{line-height:1.75;color:#222}
.article .content a{color:var(--brand)}
.article .content h2,.article .content h3{margin-top:18px}
.footer{padding:26px;color:#777;text-align:center}
.small{font-size:12px;color:#777}
.hr{height:1px;background:#eee;margin:12px 0}
.btn{display:inline-block;background:var(--brand);color:#fff;text-decoration:none;padding:10px 12px;border-radius:12px;font-weight:900}
.btn2{display:inline-block;background:#111;color:#fff;text-decoration:none;padding:10px 12px;border-radius:12px;font-weight:900}
.input, textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:12px;font:inherit}
