/*
 * Boxing Result Widget - Responsive & Accessible
 * Improved for all screen sizes, mobile-first
 * @package BoxingOdds
 * @version 1.1.0
 */

:root{
  --bg: #fff;
  --muted: #6b7280;
  --accent: #dc2626;
  --accent-dark: #b91c1c;
  --card-border: #e5e7eb;
  --surface: #f9fafb;
  --radius: 8px;
  --gap: 12px;
  --pad: 12px;
  --shadow: 0 2px 8px rgba(0,0,0,0.06);
  --success: #00b900;
}

/* Global base */
*{box-sizing:border-box}
html{font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;}

/* Container */
.boxing-result-widget-container {
    background: var(--bg);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    padding: clamp(12px, 2.5vw, 24px);
    color: #111827;
}

/* Search Section */
.boxing-result-search { margin-bottom: var(--gap); }

.search-tabs{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    margin-bottom:8px;
    border-bottom:2px solid #e5e7eb;
}

.tab-btn{
    flex:0 1 auto;
    padding:8px 12px;
    background:transparent;
    border:none;
    border-bottom:3px solid transparent;
    color:var(--muted);
    font-size:clamp(13px,1.8vw,15px);
    font-weight:500;
    cursor:pointer;
    transition:all .18s ease;
}
.tab-btn:hover{ color:var(--accent); background:#fef2f2 }
.tab-btn.active{ color:var(--accent); border-bottom-color:var(--accent); background:#fef2f2 }

.search-inputs{ display:flex; gap:8px; flex-wrap:wrap }
.boxing-result-date-picker{ flex:1 1 200px; padding:10px 12px; border:1px solid #d1d5db; border-radius:6px; font-size:14px }
.boxing-result-date-picker:focus{ outline:none; border-color:var(--accent); box-shadow:0 0 0 3px rgba(220,38,38,0.08) }
.btn-search{ padding:10px 16px; background:var(--accent); color:#fff; border:none; border-radius:6px; font-weight:600; white-space:nowrap }
.btn-search:hover{ background:var(--accent-dark) }

/* Loading + Error + No results */
.loading-spinner, .boxing-result-error, .no-results{ text-align:center; padding:20px; border-radius:6px }
.spinner{ width:36px; height:36px; border:4px solid #f3f4f6; border-top-color:var(--accent); border-radius:50%; animation:spin 1s linear infinite; margin:0 auto 10px }
@keyframes spin{ to{ transform:rotate(360deg) } }

.boxing-result-error{ background:#fef2f2; border:1px solid #fecaca }
.error-message{ color:var(--accent); margin-bottom:10px }
.btn-retry{ padding:8px 16px; background:var(--accent); color:#fff; border-radius:6px }

.no-results{ background:var(--surface); border:1px dashed #d1d5db }

/* Date Picker */
.date-picker-wrapper {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}

label

 {
    margin-right: 10px;
}

/* Results List */
.boxing-results-list{ display:flex; flex-direction:column; gap:var(--gap) }

/* Result Card */
.result-card{
    background:var(--bg);
    border:1px solid var(--card-border);
    border-radius:8px;
    padding:12px;
    transition:box-shadow .18s ease, border-color .18s ease, transform .12s ease;
    overflow:hidden;
}
.result-card:hover{ box-shadow:0 6px 20px rgba(0,0,0,0.06); border-color:var(--accent) }

/* Header */
.result-header{
    display:flex; justify-content:space-between; align-items:center; gap:8px; margin-bottom:12px; padding-bottom:8px; border-bottom:1px solid #f3f4f6;
}
.stadium{ font-size:13px; color:var(--muted); font-weight:600 }
.fight-number{ font-size:12px; color:#9ca3af; background:#f3f4f6; padding:4px 8px; border-radius:999px }

/* Fighters - responsive */
.result-fighters{
    display:flex; gap:12px; align-items:center; flex-wrap:wrap;
}

.fighter{
    display:flex; flex:1 1 200px; min-width:0; align-items:center; gap:12px; padding:10px; border-radius:6px; background:var(--surface); position:relative;
}

.fighter.red{ border-left:4px solid var(--accent) }
.fighter.blue{ border-left:4px solid #2563eb }
.fighter.winner{ background: linear-gradient(135deg,#fef3c7 0%,#fde68a 100%); box-shadow:0 2px 8px rgba(251,191,36,0.14) }

.corner-label{ font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.4px }
.fighter.red .corner-label{ color:var(--accent) }
.fighter.blue .corner-label{ color:#2563eb }

.fighter-name{ font-size:clamp(14px,2.2vw,16px); font-weight:700; color:#111827; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.winner-badge{ display:inline-block; background:var(--success); color:#fff; font-size:11px; font-weight:800; padding:4px 8px; border-radius:999px; text-transform:uppercase }

.score-red, .score-blue{ background:#000; color:antiquewhite; padding:6px 10px; border-radius:999px; font-weight:700 }

.vs-divider{ display:flex; align-items:center; justify-content:center; font-size:14px; font-weight:700; color:#9ca3af; background:#f3f4f6; padding:8px 10px; border-radius:6px; flex:0 0 56px }

/* Details */
.result-details{
    display:grid; grid-template-columns:repeat(auto-fit, minmax(120px,1fr)); gap:10px; background:var(--surface); padding:10px; border-radius:6px; margin-top:12px
}
.detail-item{ display:flex; flex-direction:column; gap:4px; align-items:center }
.detail-item .label{ font-size:11px; color:var(--muted); font-weight:700; text-transform:uppercase }
.detail-item .value{ font-size:14px; color:#111827; font-weight:600 }

/* Results Info */
.results-info{ text-align:center; margin-top:12px; padding-top:12px; border-top:1px solid #e5e7eb }
.results-info p{ margin:0; font-size:13px; color:var(--muted) }

/* Category */
.category-section{ margin-bottom:8px }
.category-header{ display:flex; justify-content:space-between; align-items:center; padding:10px; background:linear-gradient(135deg,#667eea 0%,#764ba2 100%); border-radius:8px }
.category-title{ margin:0; color:#fff; font-size:16px; font-weight:700 }
.category-count{ background:rgba(255,255,255,0.18); padding:4px 10px; border-radius:999px; color:#fff }
.category-matches{ display:grid; gap:12px }
.category-matches .result-card{ margin-bottom:0 }

/* Small screens adjustments */
@media (max-width:767px){
    .result-header{ display:block }
    h3.category-title {
    font-size: 14px;
}
    .result-fighters {
        flex-direction: column;
        align-items: stretch;
        gap: 5px;
    }

    .fighter {
        width: 100%;
        flex: 1 1 20px;
        padding: 5px;
    }
    .vs-divider {
    display: none;
}
.result-card {
    padding: 5px;
}

span.category-count

 {
    display: none;
}

.score-red, .score-blue {
    background: #000;
    color: #ffffff;
    padding: 2px 10px;
    border-radius: 5px;
    font-weight: 500;
    font-size: 14px;
}

}


/* Animation & accessibility */
.result-card{ animation:fadeInUp .42s ease forwards; opacity:0 }
.result-card:nth-child(1){ animation-delay:.06s }
.result-card:nth-child(2){ animation-delay:.12s }
.result-card:nth-child(3){ animation-delay:.18s }
@keyframes fadeInUp{ from{ opacity:0; transform:translateY(10px) } to{ opacity:1; transform:none } }

@media (prefers-reduced-motion:reduce){ .spinner, .result-card{ animation:none } }

/* Dark mode support */
@media (prefers-color-scheme: dark){
    :root{ --bg:#0f1724; --muted:#9ca3af; --card-border:#374151; --surface:#111827 }
    .boxing-result-widget-container{ color:#f9fafb }
    .tab-btn{ color:#9ca3af }
    .tab-btn.active{ background:#1f2937 }
    .result-card{ background:var(--bg); border-color:var(--card-border) }
    .fighter{ background:var(--bg) }
    .result-details{ background:var(--bg) }
    .detail-item .value{ color:#f9fafb }
}

/* Small tweaks */
.result-header .fight-number{ font-size:13px }

/* End of file */
