/* Top Tour Services */
.tts-widget{background:#fff;border-radius:12px;border:1px solid #e0e0e0;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;box-shadow:0 2px 8px rgba(0,0,0,.04)}
.tts-header{display:flex;align-items:center;gap:12px;padding:18px 20px;background:linear-gradient(135deg,#1a1a2e 0%,#16213e 100%);color:#fff}
.tts-header-icon{font-size:28px}
.tts-title{font-size:17px;font-weight:700;margin:0;color:#fff}
.tts-subtitle{font-size:12px;color:rgba(255,255,255,.6);margin:2px 0 0}
.tts-list{padding:6px 0}
.tts-item{display:flex;align-items:flex-start;gap:12px;padding:14px 20px;border-bottom:1px solid #f0f0f0;transition:background .15s;text-decoration:none;color:inherit}
.tts-item:last-child{border-bottom:none}
.tts-item:hover{background:#f8f9fa}
.tts-rank{width:24px;height:24px;background:#f0f0f0;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#666;flex-shrink:0;margin-top:2px}
.tts-item:nth-child(1) .tts-rank{background:linear-gradient(135deg,#ffd700,#ffb347);color:#fff}
.tts-item:nth-child(2) .tts-rank{background:linear-gradient(135deg,#c0c0c0,#a8a8a8);color:#fff}
.tts-item:nth-child(3) .tts-rank{background:linear-gradient(135deg,#cd7f32,#b8860b);color:#fff}
.tts-logo{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}
.tts-info{flex:1;min-width:0}
.tts-name{font-size:15px;font-weight:700;color:#1a1a2e;line-height:1.3}
.tts-item:hover .tts-name{color:#e67e22}
.tts-desc{font-size:12px;color:#999;line-height:1.4;margin-top:2px}
.tts-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}
.tts-tag{display:inline-block;padding:2px 8px;background:#f5f5f5;border-radius:4px;font-size:10px;color:#666;font-weight:500}
.tts-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}
.tts-rating{display:flex;align-items:center;gap:4px}
.tts-stars{color:#f39c12;font-size:10px}
.tts-stars .fa-star,.tts-stars .fa-star-half-o{color:#f39c12}
.tts-stars .fa-star-o{color:#ddd}
.tts-score{font-size:13px;font-weight:700;color:#333}
.tts-price{font-size:12px;color:#e67e22;font-weight:600;white-space:nowrap}

/* Mini / Sidebar style */
.tts-widget-inner{background:#fff;border-radius:12px;border:1px solid #e0e0e0;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.04)}
.tts-header-mini{display:flex;align-items:center;gap:10px;padding:14px 16px;background:linear-gradient(135deg,#1a1a2e 0%,#16213e 100%);color:#fff}
.tts-header-icon-sm{font-size:22px}
.tts-title-sm{font-size:15px;font-weight:700;color:#fff}
.tts-list-mini{padding:4px 0}
.tts-item-mini{display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid #f0f0f0;transition:background .15s;text-decoration:none;color:inherit}
.tts-item-mini:last-child{border-bottom:none}
.tts-item-mini:hover{background:#f8f9fa}
.tts-rank-mini{width:20px;height:20px;background:#f0f0f0;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:#666;flex-shrink:0}
.tts-item-mini:nth-child(1) .tts-rank-mini{background:linear-gradient(135deg,#ffd700,#ffb347);color:#fff}
.tts-item-mini:nth-child(2) .tts-rank-mini{background:linear-gradient(135deg,#c0c0c0,#a8a8a8);color:#fff}
.tts-item-mini:nth-child(3) .tts-rank-mini{background:linear-gradient(135deg,#cd7f32,#b8860b);color:#fff}
.tts-logo-mini{width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}
.tts-info-mini{flex:1;min-width:0}
.tts-name-mini{font-size:13px;font-weight:700;color:#1a1a2e;line-height:1.3}
.tts-item-mini:hover .tts-name-mini{color:#e67e22}
.tts-desc-mini{font-size:11px;color:#999;line-height:1.3;margin-top:1px;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.tts-right-mini{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}
.tts-score-mini{font-size:12px;font-weight:700;color:#333}

/* Grid style */
.tts-grid .tts-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:16px}
.tts-grid .tts-item{flex-direction:column;align-items:center;text-align:center;padding:16px;border:1px solid #f0f0f0;border-radius:12px;border-bottom:none;gap:8px}
.tts-grid .tts-item:hover{border-color:#e67e22;box-shadow:0 4px 12px rgba(230,126,34,.1)}
.tts-grid .tts-rank{position:absolute;top:8px;left:8px}
.tts-grid .tts-item{position:relative}
.tts-grid .tts-tags{justify-content:center}
.tts-grid .tts-right{align-items:center}
