body{font-family:Inter,sans-serif;background:#f4f6f9;margin:0;padding:0;color:#0a1f44}header{text-align:center;padding:20px;background:#fff;border-bottom:1px solid #e7eef7}header h1{margin:0;font-size:22px;color:#3b66a3}.news-container{max-width:1000px;margin:20px auto;padding:0 12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.news-item{background:#fff;border:1px solid #e7eef7;border-radius:12px;padding:20px;box-shadow:0 3px 6px rgba(0,0,0,.05);transition:transform .2s ease;display:flex;flex-direction:column;justify-content:flex-start;height:auto}.news-item:hover{transform:translateY(-5px);box-shadow:0 6px 12px rgba(0,0,0,.1)}.news-image{margin-bottom:15px;flex-shrink:0}.news-img{width:100%;height:200px;object-fit:cover;border-radius:8px}.news-title{font-size:18px;font-weight:600;margin:0 0 8px;color:#0a1f44}.news-meta{font-size:13px;color:#666;margin-bottom:8px}.news-description{font-size:15px;line-height:1.6;color:#333;margin-bottom:12px;text-align:justify;flex-grow:1;min-height:50px;max-height:150px;overflow:hidden;text-overflow:ellipsis}.news-actions{margin-top:auto;display:flex;justify-content:flex-end}.btn-detail{display:inline-flex;align-items:center;padding:0;font-size:14px;color:#00bf58;text-decoration:none;background:0 0;border:none;transition:color .3s ease,transform .3s ease;cursor:pointer}.btn-detail:hover{color:#00bf58;transform:scale(1.1)}.btn-icon{width:16px;height:16px;margin-left:1px;transition:transform .1s ease}.btn-detail:hover .btn-icon{transform:translateX(2px)}img.emoji{display:inline-block;height:1em;width:auto;margin:0 .05em;vertical-align:-.1em}