/* VISION 2026 公司說明會專屬樣式表 */
#v26-orientation-root { --v26-blue: #78B9F6; --v26-purple: #B68FD8; --v26-gold: #FFD58F; font-family: sans-serif; margin: 30px auto; max-width: 1200px; line-height: 1.4; }
.v26-header-panel { background: linear-gradient(135deg, #F5FBFC, #FDFBFE); border-left: 6px solid var(--v26-blue); padding: 15px 20px; border-radius: 12px; margin-bottom: 20px; }
.v26-subtitle { color: #666; font-size: 15px; margin: 5px 0 0 0; }
.v26-filter-container { display: flex; flex-wrap: wrap; gap: 15px; padding: 20px; background: #FFF; border-radius: 16px; margin-bottom: 30px; box-shadow: 0 4px 20px rgba(0,0,0,0.05); border: 1px solid #F0F4F8; }
.v26-filter-item { display: flex; flex-direction: column; gap: 6px; }
.v26-filter-item label { font-size: 14px; font-weight: bold; color: var(--v26-blue); }

#v26VenueSelect, #v26DateSelect, #v26CompanySearch { 
    width: 220px; height: 44px; padding: 0 12px; border-radius: 10px; border: 1px solid #DDD; 
    font-size: 15px; background-color: #FFF !important; display: block !important;
}

.v26-grid-container { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; align-items: stretch; }

.v26-card { background: #FFF; border-radius: 20px; border: 1px solid #EEE; overflow: hidden; display: flex; flex-direction: column; transition: 0.3s; height: 360px; box-sizing: border-box; }
.v26-card:hover { transform: translateY(-5px); box-shadow: 0 12px 25px rgba(120, 185, 246, 0.2); }
.v26-card h3 { background: linear-gradient(90deg, var(--v26-blue), var(--v26-purple)); color: white; padding: 12px; text-align: center; margin: 0; font-size: 18px; min-height: 58px; display: flex; align-items: center; justify-content: center; }
.v26-card-body { padding: 15px 20px; flex-grow: 1; display: flex; flex-direction: column; overflow: hidden; }

.v26-badge-wrapper { min-height: 24px; margin-bottom: 5px; }
.v26-badge { font-size: 11px; padding: 3px 10px; border-radius: 50px; font-weight: bold; display: inline-block; }
.badge-venue { background: #E1F5FE; color: #0277BD; }

.v26-info-text { margin: 2px 0; font-size: 14px; color: #444; }

.v26-prize-box { 
    background: #F8FBFF; padding: 10px; border-radius: 10px; 
    font-size: 13px; color: #5A6A7A; 
    height: 110px; 
    overflow-y: auto; 
    margin-top: 5px;
}
.v26-prize-box::-webkit-scrollbar { width: 3px; }
.v26-prize-box::-webkit-scrollbar-thumb { background: #d0e6ff; border-radius: 10px; }

.v26-meal-row { min-height: 24px; margin: 8px 0 0 0; }
.badge-meal { background: #FFF3E0; color: #E67E22; font-size: 11px; padding: 3px 10px; border-radius: 50px; font-weight: bold; }

.v26-btn-group { display: flex; gap: 8px; margin-top: auto; padding-top: 15px; }
.v26-btn { flex: 1; text-align: center; padding: 11px; border-radius: 12px; font-weight: bold; font-size: 14px; text-decoration: none !important; transition: 0.3s; }
.v26-btn-reg { background: var(--v26-blue); color: white !important; }
.v26-btn-dm { background: #FFF; border: 2px solid var(--v26-blue); color: var(--v26-blue) !important; }

.v26-pagination { display: flex; justify-content: center; align-items: center; gap: 20px; margin-top: 40px; }
.v26-pagination button { padding: 10px 20px; border: none; background: var(--v26-blue); color: white; border-radius: 50px; cursor: pointer; }
.v26-pagination button:disabled { background: #CCC; cursor: not-allowed; }
#v26PageInfo { font-weight: bold; color: #555; min-width: 80px; text-align: center; }

@media (max-width: 1000px) { .v26-grid-container { grid-template-columns: repeat(2, 1fr); } .v26-card { height: 520px; } }
@media (max-width: 650px) { .v26-grid-container { grid-template-columns: 1fr; } .v26-card { height: auto; min-height: 460px; } }