/**
 * tKick – Frontend Styles (Compact)
 */

/* ── Basis ──────────────────────────────────────────────────────── */
.tkick-widget { margin: 1em 0; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; font-size: 14px; }
.tkick-widget__header { font-size: .95em; font-weight: 700; margin-bottom: .5em; padding-bottom: .4em; border-bottom: 2px solid #e5e7eb; }
.tkick-empty { color: #6b7280; font-style: italic; padding: .5em 0; font-size: .85em; }
.tkick-widget--error { background: #fef2f2; border: 1px solid #fecaca; border-radius: 6px; padding: .75em; color: #991b1b; font-size: .85em; }

/* ── Spiel-Karte ────────────────────────────────────────────────── */
.tkick-game {
    display: flex;
    align-items: center;
    gap: .5em;
    padding: .4em .25em;
    border-bottom: 1px solid #f3f4f6;
    flex-wrap: wrap;
    line-height: 1.3;
}
.tkick-game:last-of-type { border-bottom: none; }
.tkick-game:hover { background: #f9fafb; }
.tkick-game--clickable { cursor: pointer; transition: background .15s; }
.tkick-game--clickable:hover { background: #eef2ff; }

/* Datum */
.tkick-game__date { min-width: 65px; flex-shrink: 0; }
.tkick-game__date-day { font-weight: 600; font-size: .82em; }
.tkick-game__date-time { display: block; font-size: .72em; color: #6b7280; }

/* Matchup inline */
.tkick-game__matchup {
    display: flex;
    align-items: center;
    gap: .35em;
    flex: 1;
    min-width: 0;
    font-size: .88em;
}
.tkick-game__home,
.tkick-game__away {
    display: inline-flex;
    align-items: center;
    gap: .25em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.tkick-game__home { justify-content: flex-end; text-align: right; flex: 1; }
.tkick-game__away { justify-content: flex-start; flex: 1; }
.tkick-game__separator { color: #9ca3af; font-weight: 600; flex-shrink: 0; }

/* Score */
.tkick-game__score {
    font-weight: 700;
    font-size: .88em;
    min-width: 40px;
    text-align: center;
    flex-shrink: 0;
}
.tkick-game__score--pending { color: #9ca3af; font-weight: 400; }

/* Logos */
.tkick-game__logo { width: 16px; height: 16px; object-fit: contain; flex-shrink: 0; }

/* Wettbewerb */
.tkick-game__competition { font-size: .7em; color: #b0b0b0; width: 100%; padding-left: 65px; margin-top: -.15em; }

/* S/U/N Indikator */
.tkick-game__indicator { width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; }
.tkick-game__indicator--win  { background: #28a745; }
.tkick-game__indicator--draw { background: #f0ad4e; }
.tkick-game__indicator--loss { background: #dc3545; }

/* ── "Mehr laden" Button ────────────────────────────────────────── */
.tkick-load-more {
    display: block;
    width: 100%;
    padding: .5em .75em;
    margin-top: .35em;
    background: #f3f4f6;
    border: 1px solid #e5e7eb;
    border-radius: 5px;
    cursor: pointer;
    font-size: .82em;
    color: #374151;
    font-weight: 500;
    text-align: center;
    transition: background .15s;
}
.tkick-load-more:hover { background: #e5e7eb; }
.tkick-load-more__count { color: #9ca3af; font-weight: 400; }

/* ── Tabelle ────────────────────────────────────────────────────── */
.tkick-table { width: 100%; border-collapse: collapse; font-size: .82em; }
.tkick-table th { background: #f9fafb; font-weight: 700; text-align: left; padding: .35em .3em; border-bottom: 2px solid #e5e7eb; font-size: .8em; text-transform: uppercase; color: #6b7280; letter-spacing: .03em; }
.tkick-table td { padding: .3em .3em; border-bottom: 1px solid #f3f4f6; }
.tkick-table tbody tr:hover { background: #f9fafb; }
.tkick-table__num { text-align: center !important; }
.tkick-table__team-logo { width: 16px; height: 16px; object-fit: contain; vertical-align: middle; margin-right: .3em; }

/* Highlight */
.tkick-table__row--highlight { background: #e8f0fe !important; font-weight: 600; background: color-mix(in srgb, var(--tkick-highlight, #0066cc) 10%, white) !important; }
.tkick-table__row--highlight td:first-child { border-left: 3px solid #0066cc; border-left: 3px solid var(--tkick-highlight, #0066cc); }

/* Compact + Mobile */
.tkick-table--compact .tkick-table__hide-compact { display: none; }
@media (max-width: 600px) {
    .tkick-table__hide-mobile { display: none; }
    .tkick-game__matchup { flex-wrap: wrap; justify-content: center; }
    .tkick-game__home, .tkick-game__away { flex: unset; }
    .tkick-game__competition { padding-left: 0; }
}

/* ── Formkurve ──────────────────────────────────────────────────── */
.tkick-form { display: flex; align-items: center; justify-content: center; gap: .3em; flex-wrap: wrap; margin: .4em 0; }
.tkick-form__label { font-weight: 600; font-size: .82em; margin-right: .15em; }
.tkick-form__dot {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    font-weight: 700;
    font-size: .68em;
    color: #fff;
    cursor: default;
    transition: transform .15s;
}
.tkick-form__dot:hover { transform: scale(1.15); }
.tkick-form__dot--win  { background: #28a745; }
.tkick-form__dot--draw { background: #f0ad4e; color: #333; }
.tkick-form__dot--loss { background: #dc3545; }

/* ── Countdown ──────────────────────────────────────────────────── */
.tkick-countdown {
    background: linear-gradient(135deg, #1e293b, #334155);
    color: #fff;
    border-radius: 10px;
    padding: 1.2em;
    text-align: center;
    margin: 1em 0;
}
.tkick-countdown__label { font-size: .75em; text-transform: uppercase; letter-spacing: .1em; color: #94a3b8; margin-bottom: .5em; }
.tkick-countdown__matchup { display: flex; align-items: center; justify-content: center; gap: .75em; margin-bottom: 1em; flex-wrap: nowrap; }
.tkick-countdown__team { display: flex; flex-direction: column; align-items: center; gap: .3em; flex: 1; max-width: 200px; }
.tkick-countdown__logo { width: 48px; height: 48px; object-fit: contain; background: rgba(255,255,255,.1); border-radius: 6px; padding: 3px; }
.tkick-countdown__team span { font-weight: 600; font-size: .85em; text-align: center; }
.tkick-countdown__vs { font-size: 1em; font-weight: 700; color: #94a3b8; flex-shrink: 0; align-self: center; }
.tkick-countdown__timer { display: flex; justify-content: center; gap: .5em; margin-bottom: .75em; }
.tkick-countdown__unit { display: flex; flex-direction: column; align-items: center; background: rgba(255,255,255,.08); border-radius: 6px; padding: .4em .6em; min-width: 48px; }
.tkick-countdown__num { font-size: 1.4em; font-weight: 800; font-variant-numeric: tabular-nums; line-height: 1.1; }
.tkick-countdown__unit small { font-size: .65em; text-transform: uppercase; letter-spacing: .05em; color: #94a3b8; }
.tkick-countdown__meta { font-size: .72em; color: #94a3b8; }

/* ── Chart ──────────────────────────────────────────────────────── */
.tkick-widget--chart { position: relative; }
.tkick-widget--chart canvas { width: 100%; height: 180px; }
.tkick-chart-tooltip {
    position: absolute;
    background: #1e293b;
    color: #fff;
    padding: 6px 10px;
    border-radius: 6px;
    font-size: 12px;
    pointer-events: none;
    white-space: nowrap;
    z-index: 10;
    opacity: 0;
    transition: opacity .15s;
    box-shadow: 0 2px 8px rgba(0,0,0,.25);
}
.tkick-chart-tooltip.visible { opacity: 1; }
.tkick-chart-tooltip__result { font-weight: 700; }
.tkick-chart-tooltip__opponent { color: #94a3b8; }

/* ── Dashboard-Widget (WP-Admin) ────────────────────────────────── */
.tkick-dash-section { margin-top: .75em; }
.tkick-dash-section h4 { margin: 0 0 .3em; font-size: .85em; }
.tkick-dash-stat { display: flex; justify-content: space-between; padding: .25em 0; border-bottom: 1px solid #f0f0f1; font-size: .82em; }
.tkick-dash-stat:last-child { border-bottom: none; }

/* ── Heim/Auswärts-Bilanz ──────────────────────────────────────── */
.tkick-homeaway { display: grid; grid-template-columns: 1fr 1fr; gap: 1em; }
.tkick-homeaway__col { text-align: center; padding: .75em; background: #f9fafb; border-radius: 8px; }
.tkick-homeaway__label { font-weight: 700; font-size: .85em; margin-bottom: .4em; }
.tkick-homeaway__record { font-size: 1.1em; font-weight: 700; letter-spacing: .02em; }
.tkick-homeaway__goals { font-size: .8em; color: #6b7280; margin: .2em 0; }
.tkick-homeaway__ppg { font-size: .75em; color: #9ca3af; }
.tkick-homeaway__bar { display: flex; height: 6px; border-radius: 3px; overflow: hidden; margin-top: .4em; background: #e5e7eb; }
.tkick-homeaway__bar-w { background: #28a745; }
.tkick-homeaway__bar-d { background: #f0ad4e; }

/* ── Mannschaftsseite Tabs ─────────────────────────────────────── */
.tkick-teampage { margin: 1em 0; }
.tkick-tabs { display: flex; gap: 0; border-bottom: 2px solid #e5e7eb; margin-bottom: 1em; overflow-x: auto; }
.tkick-tabs__tab { background: none; border: none; padding: .6em 1em; font-size: .85em; font-weight: 500; color: #6b7280; cursor: pointer; border-bottom: 2px solid transparent; margin-bottom: -2px; white-space: nowrap; transition: color .15s, border-color .15s; }
.tkick-tabs__tab:hover { color: #374151; }
.tkick-tabs__tab--active { color: var(--tkick-primary, #0066cc); border-bottom-color: var(--tkick-primary, #0066cc); font-weight: 600; }
.tkick-tabs__panel { animation: tkickFadeIn .2s; }
@keyframes tkickFadeIn { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }

/* ── Live Score ────────────────────────────────────────────────── */
.tkick-livescore { background: #fff; border: 1px solid #e5e7eb; border-radius: 10px; padding: 1em; text-align: center; margin: 1em 0; box-shadow: 0 1px 3px rgba(0,0,0,.06); }
.tkick-livescore__header { display: flex; justify-content: space-between; align-items: center; margin-bottom: .75em; font-size: .75em; }
.tkick-livescore__badge { background: #f3f4f6; color: #6b7280; padding: .2em .6em; border-radius: 4px; font-weight: 600; text-transform: uppercase; letter-spacing: .05em; font-size: .85em; }
.tkick-livescore__badge--live { background: #dc3545; color: #fff; display: inline-flex; align-items: center; gap: .3em; }
.tkick-livescore__pulse { display: inline-block; width: 6px; height: 6px; background: #fff; border-radius: 50%; animation: tkickPulse 1.5s infinite; }
@keyframes tkickPulse { 0%, 100% { opacity: 1; } 50% { opacity: .3; } }
.tkick-livescore__league { color: #9ca3af; }
.tkick-livescore__match { display: flex; align-items: center; justify-content: center; gap: .75em; }
.tkick-livescore__team { display: flex; flex-direction: column; align-items: center; gap: .3em; flex: 1; }
.tkick-livescore__logo { width: 40px; height: 40px; object-fit: contain; }
.tkick-livescore__team span { font-weight: 600; font-size: .85em; }
.tkick-livescore__score { font-size: 2em; font-weight: 800; font-variant-numeric: tabular-nums; min-width: 80px; transition: color .3s; }
.tkick-livescore__score--flash { color: #dc3545; }

/* ── Share Button ──────────────────────────────────────────────── */
.tkick-share { text-align: center; margin: 1em 0; }
.tkick-share__btn { display: inline-block; padding: .5em 1.2em; background: var(--tkick-primary, #0066cc); color: #fff; text-decoration: none; border-radius: 6px; font-size: .85em; font-weight: 600; transition: opacity .15s; }
.tkick-share__btn:hover { opacity: .85; color: #fff; }
.tkick-share__hint { display: block; font-size: .72em; color: #9ca3af; margin-top: .3em; }
