/* ==========================================================================
   Homepage Sections - Price Widgets, Weather, Lottery
   ========================================================================== */

/* === Shared === */
.ps-section{padding:28px 0;border-bottom:1px solid #eee}
.ps-section:last-child{border-bottom:none}

.ps-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;flex-wrap:wrap;gap:8px}
.ps-title{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:800;color:#1a1a1a}
.ps-title i{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:17px;color:#fff}
.ps-more{font-size:13px;font-weight:600;text-decoration:none;display:flex;align-items:center;gap:4px;padding:6px 16px;border-radius:8px;transition:all .2s}
.ps-more:hover{text-decoration:none;transform:translateX(3px)}
.ps-update{font-size:11px;color:#999;display:flex;align-items:center;gap:4px}
.ps-update i{font-size:10px}

/* === Gold Section === */
.ps-gold{background:linear-gradient(180deg,#fffbf0 0%,#fff 60%)}
.ps-gold-layout{display:flex;gap:24px;flex-wrap:wrap}
.ps-gold-left{flex:0 0 calc(55% - 12px);min-width:320px}
.ps-gold-right{flex:1;min-width:280px}

.ps-gold-card{background:#fff;border-radius:14px;border:1px solid #f0e6cc;overflow:hidden;box-shadow:0 2px 12px rgba(217,119,6,.06)}
.ps-gold-row{display:flex;border-bottom:1px solid #f5eed8}
.ps-gold-row:last-child{border-bottom:none}
.ps-gold-label{flex:0 0 140px;padding:16px 20px;font-weight:700;color:#6b5a2e;font-size:14px;display:flex;align-items:center;gap:8px;background:rgba(245,158,11,.04)}
.ps-gold-label i{color:#d97706;font-size:12px}
.ps-gold-prices{flex:1;display:flex}
.ps-gold-cell{flex:1;padding:14px 12px;text-align:center}
.ps-gold-cell-head{font-size:10px;color:#92722a;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}
.ps-gold-cell-val{font-size:22px;font-weight:800;color:#b8860b;font-family:'Segoe UI',Tahoma,sans-serif}
.ps-gold-cell+.ps-gold-cell{border-left:1px solid #f5eed8}

.ps-gold-actions{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.ps-gold-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border-radius:10px;font-size:13px;font-weight:700;text-decoration:none;transition:all .2s}
.ps-gold-btn:hover{text-decoration:none;transform:translateY(-2px)}
.ps-gold-btn-primary{background:linear-gradient(135deg,#d97706,#f59e0b);color:#fff;box-shadow:0 2px 8px rgba(217,119,6,.2)}
.ps-gold-btn-primary:hover{color:#fff;box-shadow:0 4px 16px rgba(217,119,6,.35)}
.ps-gold-btn-outline{background:#fff;color:#b8860b;border:1.5px solid #f0e6cc}
.ps-gold-btn-outline:hover{color:#92722a;background:#fffbf0;border-color:#d97706}

/* Gold News */
.ps-gold-news{background:#fff;border-radius:14px;border:1px solid #f0e6cc;overflow:hidden;box-shadow:0 2px 12px rgba(217,119,6,.06);height:100%;display:flex;flex-direction:column}
.ps-gold-news-head{background:linear-gradient(135deg,#d97706,#f59e0b);padding:12px 18px;color:#fff;font-weight:700;font-size:14px;display:flex;align-items:center;gap:8px}
.ps-gold-news-body{padding:0;flex:1;overflow:hidden}
.ps-gold-news-item{display:flex;gap:12px;padding:10px 14px;border-bottom:1px solid #fef3c7;transition:background .15s;text-decoration:none}
.ps-gold-news-item:last-child{border-bottom:none}
.ps-gold-news-item:hover{background:#fffbf0;text-decoration:none}
.ps-gold-news-thumb{width:72px;height:50px;border-radius:8px;object-fit:cover;flex-shrink:0;background:#f5f0e0}
.ps-gold-news-info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}
.ps-gold-news-title{font-size:13px;font-weight:600;color:#333;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ps-gold-news-item:hover .ps-gold-news-title{color:#b8860b}
.ps-gold-news-date{font-size:11px;color:#999;margin-top:2px;display:flex;align-items:center;gap:4px}
.ps-gold-news-date i{font-size:10px}
.ps-gold-news-empty{padding:20px;text-align:center;color:#ccc;font-size:13px}

/* === Oil Section === */
.ps-oil{background:linear-gradient(180deg,#f0f7ff 0%,#fff 60%)}
.ps-oil-layout{display:flex;gap:24px;flex-wrap:wrap}
.ps-oil-left{flex:0 0 calc(55% - 12px);min-width:320px}
.ps-oil-right{flex:1;min-width:280px}

.ps-oil-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.ps-oil-item{background:#fff;border-radius:12px;border:1px solid #dbeafe;padding:14px 10px;text-align:center;transition:all .2s}
.ps-oil-item:hover{border-color:#93c5fd;box-shadow:0 4px 16px rgba(59,130,246,.08);transform:translateY(-2px)}
.ps-oil-name{font-size:11px;color:#475569;font-weight:700;margin-bottom:6px;min-height:28px;display:flex;align-items:center;justify-content:center;line-height:1.3}
.ps-oil-price{font-size:26px;font-weight:800;color:#0f2b5e;font-family:'Segoe UI',Tahoma,sans-serif;line-height:1.1}
.ps-oil-diff{font-size:11px;font-weight:700;margin-top:2px}
.ps-oil-diff.up{color:#ef4444}
.ps-oil-diff.up::before{content:'\25B2 ';font-size:8px}
.ps-oil-diff.down{color:#22c55e}
.ps-oil-diff.down::before{content:'\25BC ';font-size:8px}
.ps-oil-unit{font-size:10px;color:#475569;margin-top:2px}

.ps-oil-actions{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.ps-oil-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border-radius:10px;font-size:13px;font-weight:700;text-decoration:none;transition:all .2s}
.ps-oil-btn:hover{text-decoration:none;transform:translateY(-2px)}
.ps-oil-btn-primary{background:linear-gradient(135deg,#0055cc,#3b82f6);color:#fff;box-shadow:0 2px 8px rgba(0,85,204,.2)}
.ps-oil-btn-primary:hover{color:#fff;box-shadow:0 4px 16px rgba(0,85,204,.35)}

/* Oil News */
.ps-oil-news{background:#fff;border-radius:14px;border:1px solid #dbeafe;overflow:hidden;box-shadow:0 2px 12px rgba(59,130,246,.06);height:100%;display:flex;flex-direction:column}
.ps-oil-news-head{background:linear-gradient(135deg,#0055cc,#3b82f6);padding:12px 18px;color:#fff;font-weight:700;font-size:14px;display:flex;align-items:center;gap:8px}
.ps-oil-news-body{padding:0;flex:1;overflow:hidden}
.ps-oil-news-item{display:flex;gap:12px;padding:10px 14px;border-bottom:1px solid #eff6ff;transition:background .15s;text-decoration:none}
.ps-oil-news-item:last-child{border-bottom:none}
.ps-oil-news-item:hover{background:#f0f7ff;text-decoration:none}
.ps-oil-news-thumb{width:72px;height:50px;border-radius:8px;object-fit:cover;flex-shrink:0;background:#e8f0fe}
.ps-oil-news-info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}
.ps-oil-news-title{font-size:13px;font-weight:600;color:#333;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ps-oil-news-item:hover .ps-oil-news-title{color:#0055cc}
.ps-oil-news-date{font-size:11px;color:#999;margin-top:2px;display:flex;align-items:center;gap:4px}
.ps-oil-news-date i{font-size:10px}
.ps-oil-news-empty{padding:20px;text-align:center;color:#ccc;font-size:13px}

/* === Exchange Section === */
.ps-exchange{background:linear-gradient(180deg,#f0fdf4 0%,#fff 60%)}
.ps-ex-layout{display:flex;gap:24px;flex-wrap:wrap}
.ps-ex-left{flex:0 0 calc(55% - 12px);min-width:320px}
.ps-ex-right{flex:1;min-width:280px}

.ps-ex-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.ps-ex-item{background:#fff;border-radius:12px;border:1px solid #d1fae5;padding:14px;display:flex;align-items:center;gap:12px;transition:all .2s;box-shadow:0 1px 4px rgba(5,150,105,.04)}
.ps-ex-item:hover{border-color:#6ee7b7;box-shadow:0 4px 18px rgba(5,150,105,.1);transform:translateY(-2px)}
.ps-ex-flag{font-size:28px;flex-shrink:0;line-height:1}
.ps-ex-info{flex:1;min-width:0}
.ps-ex-code{font-weight:800;font-size:13px;color:#1e293b}
.ps-ex-label{font-size:10px;color:#475569;font-weight:600}
.ps-ex-rate{text-align:right;flex-shrink:0}
.ps-ex-val{font-weight:800;font-size:18px;color:#059669;font-family:'Segoe UI',Tahoma,sans-serif;line-height:1.2}
.ps-ex-unit{font-size:10px;color:#475569;text-align:right}

/* Economy News */
.ps-eco-news{background:#fff;border-radius:14px;border:1px solid #d1fae5;overflow:hidden;box-shadow:0 2px 12px rgba(5,150,105,.06);height:100%;display:flex;flex-direction:column}
.ps-eco-news-head{background:linear-gradient(135deg,#059669,#34d399);padding:12px 18px;color:#fff;font-weight:700;font-size:14px;display:flex;align-items:center;gap:8px}
.ps-eco-news-body{padding:0;flex:1;overflow:hidden}
.ps-eco-news-item{display:flex;gap:12px;padding:10px 14px;border-bottom:1px solid #ecfdf5;transition:background .15s;text-decoration:none}
.ps-eco-news-item:last-child{border-bottom:none}
.ps-eco-news-item:hover{background:#f0fdf4;text-decoration:none}
.ps-eco-news-thumb{width:72px;height:50px;border-radius:8px;object-fit:cover;flex-shrink:0;background:#ecfdf5}
.ps-eco-news-info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}
.ps-eco-news-title{font-size:13px;font-weight:600;color:#333;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ps-eco-news-item:hover .ps-eco-news-title{color:#059669}
.ps-eco-news-date{font-size:11px;color:#999;margin-top:2px;display:flex;align-items:center;gap:4px}
.ps-eco-news-date i{font-size:10px}
.ps-eco-news-empty{padding:20px;text-align:center;color:#ccc;font-size:13px}

/* === Weather Section === */
.ps-weather{background:#f0f4ff;padding-bottom:32px;border-bottom:none;margin-bottom:0}
.ps-wt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding-bottom:40px;min-width:0}
.ps-wt-first{grid-column:1 / -1;display:flex;align-items:center;gap:20px;background:linear-gradient(135deg,#4338ca 0%,#6366f1 60%,#818cf8 100%);border-radius:16px;padding:24px 28px;color:#fff;box-shadow:0 4px 24px rgba(99,102,241,.25);min-width:0}
.ps-wt-first-icon{width:64px;height:64px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 2px 6px rgba(0,0,0,.2))}
.ps-wt-first-info{flex:1;min-width:0}
.ps-wt-first-city{font-size:13px;font-weight:600;opacity:.85;letter-spacing:.5px}
.ps-wt-first-temp{font-size:40px;font-weight:800;font-family:'Segoe UI',Tahoma,sans-serif;line-height:1.1}
.ps-wt-first-desc{font-size:14px;font-weight:600;opacity:.9;margin-top:2px}
.ps-wt-first-hum{text-align:right;flex-shrink:0}
.ps-wt-first-hum-val{font-size:26px;font-weight:800;line-height:1.2}
.ps-wt-first-hum-label{font-size:10px;opacity:.7}

.ps-wt-item{background:rgba(255,255,255,.92);backdrop-filter:blur(4px);border-radius:14px;border:1px solid #c7d2fe;padding:14px;display:flex;align-items:center;gap:10px;transition:all .2s;box-shadow:0 2px 8px rgba(99,102,241,.06);min-width:0;overflow:hidden}
.ps-wt-item:hover{border-color:#a5b4fc;box-shadow:0 4px 16px rgba(99,102,241,.15);transform:translateY(-2px)}
.ps-wt-icon{width:42px;height:42px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 1px 3px rgba(0,0,0,.1))}
.ps-wt-info{flex:1;min-width:0}
.ps-wt-city{font-size:12px;font-weight:700;color:#334155}
.ps-wt-desc{font-size:10px;color:#6366f1;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}
.ps-wt-right{text-align:right;flex-shrink:0}
.ps-wt-temp{font-size:22px;font-weight:800;color:#312e81;font-family:'Segoe UI',Tahoma,sans-serif;line-height:1.1}
.ps-wt-hum{font-size:10px;color:#475569;margin-top:2px}
.ps-wt-hum i{font-size:9px;margin-right:2px}

/* === Lottery Section === */
.ps-lottery{background:linear-gradient(180deg,#eef2ff 0%,#fff 60%)}
.ps-lot-layout{display:flex;gap:24px;flex-wrap:wrap}
.ps-lot-left{flex:0 0 calc(55% - 12px);min-width:320px}
.ps-lot-right{flex:1;min-width:280px}

.ps-lot-card{border-radius:18px;overflow:hidden;box-shadow:0 4px 24px rgba(30,58,138,.1)}
.ps-lot-jp{background:linear-gradient(135deg,#1e3a8a 0%,#1d4ed8 50%,#3b82f6 100%);padding:24px 20px 20px;text-align:center;color:#fff;position:relative}
.ps-lot-jp::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 80%,rgba(255,255,255,.08) 0%,transparent 50%);pointer-events:none}
.ps-lot-jp-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.15);padding:4px 14px;border-radius:20px;font-size:11px;font-weight:700;backdrop-filter:blur(4px);margin-bottom:8px}
.ps-lot-jp-label{font-size:13px;font-weight:600;opacity:.9;margin-bottom:2px}
.ps-lot-jp-num{font-size:52px;font-weight:900;font-family:'Segoe UI',Tahoma,sans-serif;letter-spacing:10px;line-height:1.15;text-shadow:0 2px 12px rgba(0,0,0,.15)}
.ps-lot-jp-val{font-size:12px;opacity:.7;margin-top:4px}

.ps-lot-sub{background:#fff;display:grid;grid-template-columns:repeat(3,1fr)}
.ps-lot-sub-item{padding:16px 10px;text-align:center;border-right:1px solid #dbeafe;position:relative}
.ps-lot-sub-item:last-child{border-right:none}
.ps-lot-sub-label{font-size:10px;font-weight:700;color:#1d4ed8;letter-spacing:.5px;margin-bottom:6px;display:flex;align-items:center;justify-content:center;gap:4px}
.ps-lot-sub-label i{font-size:8px}
.ps-lot-sub-nums{font-size:20px;font-weight:800;color:#1e293b;font-family:'Segoe UI',Tahoma,sans-serif;letter-spacing:3px;line-height:1.5}
.ps-lot-sub-prize{font-size:9px;color:#475569;margin-top:2px}

.ps-lot-near{background:#eff6ff;padding:12px 18px;display:flex;align-items:center;gap:10px;border-top:1px solid #dbeafe}
.ps-lot-near-tag{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;font-size:10px;font-weight:700;padding:3px 10px;border-radius:6px;white-space:nowrap}
.ps-lot-near-nums{font-size:17px;font-weight:800;color:#1e3a8a;font-family:'Segoe UI',Tahoma,sans-serif;letter-spacing:4px;display:flex;gap:20px}

.ps-lot-actions{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}
.ps-lot-btn{display:inline-flex;align-items:center;gap:6px;padding:11px 22px;border-radius:12px;font-size:13px;font-weight:700;text-decoration:none;transition:all .2s}
.ps-lot-btn:hover{text-decoration:none;transform:translateY(-2px)}
.ps-lot-btn-primary{background:linear-gradient(135deg,#1d4ed8,#3b82f6);color:#fff;box-shadow:0 3px 12px rgba(29,78,216,.25)}
.ps-lot-btn-primary:hover{color:#fff;box-shadow:0 6px 20px rgba(29,78,216,.35)}
.ps-lot-btn-outline{background:#fff;color:#1d4ed8;border:1.5px solid #bfdbfe}
.ps-lot-btn-outline:hover{color:#1e3a8a;background:#eff6ff;border-color:#3b82f6}
.ps-lot-btn-stats{background:#fff;color:#7c3aed;border:1.5px solid #ddd6fe}
.ps-lot-btn-stats:hover{color:#6d28d9;background:#f5f3ff;border-color:#7c3aed}

/* Lottery News */
.ps-lot-news{background:#fff;border-radius:16px;border:1px solid #dbeafe;overflow:hidden;box-shadow:0 2px 14px rgba(30,58,138,.06);height:100%;display:flex;flex-direction:column}
.ps-lot-news-head{background:linear-gradient(135deg,#1e3a8a,#2563eb);padding:13px 18px;color:#fff;font-weight:700;font-size:14px;display:flex;align-items:center;gap:8px}
.ps-lot-news-body{padding:0;flex:1;overflow:hidden}
.ps-lot-news-item{display:flex;gap:12px;padding:11px 14px;border-bottom:1px solid #eff6ff;transition:background .15s;text-decoration:none}
.ps-lot-news-item:last-child{border-bottom:none}
.ps-lot-news-item:hover{background:#eff6ff;text-decoration:none}
.ps-lot-news-thumb{width:74px;height:52px;border-radius:8px;object-fit:cover;flex-shrink:0;background:#eff6ff}
.ps-lot-news-info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}
.ps-lot-news-title{font-size:13px;font-weight:600;color:#333;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ps-lot-news-item:hover .ps-lot-news-title{color:#1d4ed8}
.ps-lot-news-date{font-size:11px;color:#999;margin-top:2px;display:flex;align-items:center;gap:4px}
.ps-lot-news-date i{font-size:10px}
.ps-lot-news-empty{padding:20px;text-align:center;color:#ccc;font-size:13px}

/* ==========================================================================
   Responsive
   ========================================================================== */
@media(max-width:991px){
    .ps-gold-left,.ps-gold-right{flex:0 0 100%}
    .ps-oil-left,.ps-oil-right{flex:0 0 100%}
    .ps-ex-left,.ps-ex-right{flex:0 0 100%}
    .ps-lot-left,.ps-lot-right{flex:0 0 100%}
    .ps-oil-grid{grid-template-columns:repeat(4,1fr)}
    .ps-ex-grid{grid-template-columns:repeat(3,1fr)}
}

@media(max-width:767px){
    .ps-gold-label{flex:0 0 110px;padding:12px 14px;font-size:13px}
    .ps-gold-cell-val{font-size:17px}
    .ps-gold-news-thumb{width:110px;height:72px}
    .ps-oil-grid{grid-template-columns:repeat(2,1fr)}
    .ps-oil-price{font-size:20px}
    .ps-oil-news-thumb{width:110px;height:72px}
    .ps-ex-grid{grid-template-columns:repeat(2,1fr)}
    .ps-ex-val{font-size:16px}
    .ps-eco-news-thumb{width:110px;height:72px}
    .ps-lot-news-thumb{width:110px;height:72px}
    /* ปรับ padding + gap + font ให้สมดุลกับรูปใหม่ */
    .ps-oil-news-item,.ps-gold-news-item,.ps-eco-news-item,.ps-lot-news-item{gap:12px;padding:12px 14px;align-items:center}
    .ps-oil-news-title,.ps-gold-news-title,.ps-eco-news-title,.ps-lot-news-title{font-size:14px;line-height:1.45}
    .ps-oil-news-date,.ps-gold-news-date,.ps-eco-news-date,.ps-lot-news-date{font-size:11.5px}
    .ps-lot-jp-num{font-size:36px;letter-spacing:6px}
    .ps-lot-sub-nums{font-size:17px}
    .ps-wt-grid{grid-template-columns:repeat(2,1fr)}
    .ps-wt-first-temp{font-size:30px}
    .ps-wt-first-icon{width:52px;height:52px}
    .ps-section{padding:20px 0}
}

@media(max-width:480px){
    .ps-gold-prices{flex-direction:column}
    .ps-gold-cell+.ps-gold-cell{border-left:none;border-top:1px solid #f5eed8}
    .ps-ex-grid{grid-template-columns:1fr 1fr}
    .ps-wt-grid{grid-template-columns:1fr 1fr;padding-bottom:30px;gap:8px}
    .ps-wt-first{flex-direction:column;text-align:center;padding:18px;gap:10px}
    .ps-wt-first-icon{width:56px;height:56px}
    .ps-wt-first-hum{text-align:center}
    .ps-wt-item{padding:10px;gap:8px}
    .ps-wt-icon{width:36px;height:36px}
    .ps-wt-temp{font-size:18px}
    .ps-wt-city{font-size:11px}
    .ps-wt-desc{font-size:9px}
    .ps-wt-hum{font-size:9px}
}

/* Global mobile overflow guard — กันทุก section ไม่ให้ดัน viewport แนวนอน
   ⚠️ 2 บรรทัด: browsers เก่าใช้ hidden, ใหม่ใช้ clip
   clip ไม่สร้าง scroll container → position:sticky (.mean-bar) ยังใช้ได้
   หมายเหตุ: ไม่ใช้ overflow:hidden บน .ps-section เพราะ Firefox ตัด flex children เพี้ยน
   (html,body overflow-x:hidden ก็พอแล้ว — section ไม่ต้อง guard ซ้ำ) */
html,body{overflow-x:hidden;overflow-x:clip}
.ps-section{max-width:100%;overflow-x:clip}

/* Fix: meanmenu mobile bar (.mean-bar) ไม่ให้ overlay ซ้อนกับ date bar / menu หลัก
   เปลี่ยนจาก fixed เป็น sticky — เวลา scroll ยังติดบนได้ แต่ตอนอยู่บนสุด ไม่ทับ content
   + ลบ wrapper padding-top ที่เผื่อไว้ให้ mean-bar fixed (ไม่ต้องใช้แล้ว) */
@media(max-width:991px){
    .mean-container .mean-bar{position:sticky !important;top:0;z-index:999}
    #wrapper{padding-top:0 !important}
}

/* === Homepage Mobile List (บทความล่าสุด etc.) === */
.hm-list-item{display:flex;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #eee;text-decoration:none;color:inherit;transition:background .15s}
.hm-list-item:first-child{border-top:1px solid #eee}
.hm-list-item:hover{background:#f8f9fa;color:inherit;text-decoration:none}
.hm-list-img{flex-shrink:0;width:110px;height:72px;object-fit:cover;border-radius:6px}
.hm-list-body{flex:1;min-width:0}
.hm-list-body h4{font-size:14px;font-weight:600;line-height:1.4;margin:0 0 4px;color:#222;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hm-list-date{font-size:11px;color:#999}

/* ============================================================
   ⚽ FOOTBALL SECTION (homepage)
   ============================================================ */
.ps-football{background:linear-gradient(180deg,#f0fdf4 0%,#fff 60%)}
.psf-live-pill{display:inline-flex;align-items:center;gap:6px;background:#dc2626;color:#fff;font-size:11px;font-weight:700;padding:3px 10px;border-radius:20px;margin-left:8px;letter-spacing:.5px}
.psf-live-dot{width:6px;height:6px;border-radius:50%;background:#fff;animation:psfPulse 1.2s ease-in-out infinite}
@keyframes psfPulse{0%,100%{opacity:1}50%{opacity:.4}}
.psf-update-link{display:inline-flex;align-items:center;gap:4px;color:#16a34a !important;font-weight:700;text-decoration:none;font-size:13px}
.psf-update-link:hover{color:#0e7c3a !important;text-decoration:none}

.psf-layout{display:flex;gap:24px;flex-wrap:wrap}
.psf-left{flex:0 0 calc(62% - 12px);min-width:320px}
.psf-right{flex:1;min-width:280px}

/* League group */
.psf-league{background:#fff;border-radius:10px;border:1px solid #e5e7eb;overflow:hidden;margin-bottom:12px;box-shadow:0 1px 2px rgba(0,0,0,.03)}
.psf-league-head{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#f8fafc;border-bottom:2px solid #16a34a}
.psf-league-head img{width:22px;height:22px;object-fit:contain;flex-shrink:0}
.psf-league-head a{font-size:13px;font-weight:700;color:#16a34a;text-decoration:none}
.psf-league-head a:hover{color:#0e7c3a;text-decoration:none}
.psf-league-count{margin-left:auto;font-size:11px;color:#888;font-weight:600}

/* Match row */
.psf-match{display:grid;grid-template-columns:1fr 90px 1fr;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid #f3f4f6;text-decoration:none;color:inherit;transition:background .15s}
.psf-match:last-child{border-bottom:none}
.psf-match:hover{background:#f0fdf4;color:inherit;text-decoration:none}
.psf-team{display:flex;align-items:center;gap:8px;min-width:0}
.psf-team.home{justify-content:flex-end;text-align:right}
.psf-team.away{justify-content:flex-start;text-align:left}
.psf-team img{width:22px;height:22px;object-fit:contain;flex-shrink:0}
.psf-team-name{font-size:13px;font-weight:600;color:#222;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.psf-score{display:flex;flex-direction:column;align-items:center;justify-content:center}
.psf-score-num{font-size:18px;font-weight:800;color:#222;font-family:'Segoe UI',Tahoma,sans-serif;letter-spacing:1px;line-height:1.1}
.psf-score-num.live{color:#dc2626}
.psf-time{font-size:14px;font-weight:700;color:#475569}
.psf-status{font-size:10px;color:#888;font-weight:600;margin-top:2px;text-transform:uppercase;display:inline-flex;align-items:center;gap:4px}
.psf-status.live{color:#dc2626}
.psf-status.ft{color:#16a34a}
.psf-status .psf-live-dot{background:#dc2626}

/* Empty state */
.psf-empty{background:#fff;border:1px dashed #d1d5db;border-radius:10px;padding:32px 20px;text-align:center;color:#888}
.psf-empty i{font-size:36px;color:#16a34a;opacity:.3;margin-bottom:8px;display:block}
.psf-empty p{margin:0;font-size:14px}
.psf-empty a{color:#16a34a;font-weight:600}

/* Action buttons */
.psf-actions{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}
.psf-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;border-radius:10px;font-size:13px;font-weight:700;text-decoration:none;transition:all .2s;flex:1;justify-content:center;min-width:100px}
.psf-btn:hover{text-decoration:none;transform:translateY(-2px)}
.psf-btn-live{background:#dc2626;color:#fff;box-shadow:0 2px 8px rgba(220,38,38,.2)}
.psf-btn-live:hover{color:#fff;box-shadow:0 4px 16px rgba(220,38,38,.35)}
.psf-btn-secondary{background:linear-gradient(135deg,#16a34a,#0e7c3a);color:#fff;box-shadow:0 2px 8px rgba(22,163,74,.2)}
.psf-btn-secondary:hover{color:#fff;box-shadow:0 4px 16px rgba(22,163,74,.35)}
.psf-btn-game{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#78350f;box-shadow:0 2px 8px rgba(245,158,11,.25)}
.psf-btn-game:hover{color:#78350f;box-shadow:0 4px 16px rgba(245,158,11,.4)}

/* Standings widget */
.psf-standings{background:#fff;border-radius:10px;border:1px solid #e5e7eb;overflow:hidden;box-shadow:0 1px 2px rgba(0,0,0,.03)}
.psf-standings-head{display:flex;align-items:center;gap:8px;padding:12px 14px;background:linear-gradient(135deg,#16a34a,#0e7c3a);color:#fff}
.psf-standings-head img{width:22px;height:22px;object-fit:contain;background:#fff;border-radius:50%;padding:2px}
.psf-standings-head span{font-size:13px;font-weight:700}
.psf-standings-table{width:100%;border-collapse:collapse;font-size:13px}
.psf-standings-table th{background:#f8fafc;padding:8px 6px;font-weight:700;color:#475569;font-size:10px;text-transform:uppercase;letter-spacing:.5px;text-align:center;border-bottom:1px solid #e5e7eb}
.psf-standings-table th:nth-child(2){text-align:left}
.psf-standings-table td{padding:9px 6px;border-bottom:1px solid #f3f4f6}
.psf-standings-table tr:last-child td{border-bottom:none}
.psf-standings-table tr:hover td{background:#fafbfc}
.psf-rank{text-align:center;font-weight:700;color:#475569;width:28px}
.psf-rank-top{color:#16a34a}
.psf-stand-team{display:flex;align-items:center;gap:8px;min-width:0}
.psf-stand-team img{width:18px;height:18px;object-fit:contain;flex-shrink:0}
.psf-stand-team a{font-weight:600;color:#1f2937;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}
.psf-stand-team a:hover{color:#16a34a;text-decoration:none}
.psf-pts{font-weight:800;color:#16a34a}
.psf-standings-more{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px;background:#f8fafc;color:#16a34a;font-size:12px;font-weight:700;text-decoration:none;border-top:1px solid #e5e7eb;transition:background .15s}
.psf-standings-more:hover{background:#dcfce7;color:#0e7c3a;text-decoration:none}

@media(max-width:767px){
    .psf-layout{flex-direction:column}
    .psf-left,.psf-right{flex:1 1 100%;min-width:0}
    .psf-match{grid-template-columns:1fr 70px 1fr;gap:6px;padding:10px}
    .psf-team-name{font-size:12px}
    .psf-team img{width:18px;height:18px}
    .psf-score-num{font-size:16px}
    .psf-time{font-size:13px}
    .psf-btn{padding:9px 12px;font-size:12px;min-width:90px}
    .psf-stand-team a{max-width:90px}
}
