/* (Removed malformed duplicated header block) */
@layer ts-reset, ts-base, ts-components, ts-patterns;

/* RESET (scoped) */
@layer ts-reset {
  .ts-v2, .ts-v2 * { box-sizing: border-box; }
  .ts-v2 :where(h1,h2,h3,h4,h5,h6,p,ul,ol){ margin:0; padding:0; }
  .ts-v2 :where(img){ max-width:100%; height:auto; display:block; }
  .ts-v2 :where(button,select,input){ font:inherit; }
}

.ts-v2 table, td, th { border: none !important; }

/* TOKENS / THEME */
.ts-v2{
  /* Colors */
  --ts-white: #ffffff;
  --ts-black: #000000;
  --ts-gray-50: #f9fafb;
  --ts-gray-100: #f3f4f6;
  --ts-gray-150: #f1f5f9;
  --ts-gray-200: #e5e7eb;
  --ts-gray-300: #d1d5db;
  --ts-gray-400: #9ca3af;
  --ts-gray-500: #6b7280;
  --ts-gray-600: #4b5563;
  --ts-gray-700: #374151;
  --ts-gray-800: #1f2937;
  --ts-gray-900: #111827;
  
  /* Blue palette */
  --ts-blue-50: #eff6ff;
  --ts-blue-100: #dbeafe;
  --ts-blue-200: #bfdbfe;
  --ts-blue-300: #93c5fd;
  --ts-blue-400: #60a5fa;
  --ts-blue-500: #3b82f6;
  --ts-blue-600: #2563eb;
  --ts-blue-700: #1d4ed8;
  --ts-blue-800: #1e40af;
  --ts-blue-900: #1e3a8a;
  
  /* Green palette */
  --ts-green-50: #f0fdf4;
  --ts-green-100: #ecfdf5;
  --ts-green-200: #bbf7d0;
  --ts-green-300: #86efac;
  --ts-green-400: #4ade80;
  --ts-green-500: #16a34a;
  --ts-green-600: #15803d;
  --ts-green-700: #047857;
  --ts-green-800: #065f46;
  --ts-green-900: #064e3b;
  
  /* Red palette */
  --ts-red-50: #fef2f2;
  --ts-red-100: #fee2e2;
  --ts-red-200: #fecaca;
  --ts-red-300: #fca5a5;
  --ts-red-400: #f87171;
  --ts-red-500: #ef4444;
  --ts-red-600: #dc2626;
  --ts-red-700: #b91c1c;
  --ts-red-800: #991b1b;
  --ts-red-900: #7f1d1d;
  
  /* Yellow palette */
  --ts-yellow-50: #fefce8;
  --ts-yellow-100: #fef3c7;
  --ts-yellow-200: #fde68a;
  --ts-yellow-300: #fcd34d;
  --ts-yellow-400: #fbbf24;
  --ts-yellow-500: #f59e0b;
  --ts-yellow-600: #d97706;
  --ts-yellow-700: #b45309;
  
  /* Orange palette */
  --ts-orange-50: #fff7ed;
  --ts-orange-100: #ffedd5;
  --ts-orange-200: #fed7aa;
  --ts-orange-400: #fb923c;
  --ts-orange-500: #f97316;
  --ts-orange-600: #ea580c;
  
  /* Semantic colors */
  --ts-text: #e8ecf1;
  --ts-text-title: #0f172a;
  --ts-text-dark: #111827;
  --ts-text-light: #6b7280;
  --ts-muted: var(--ts-gray-500);
  --ts-text-muted: #a8b0bd;
  --ts-text-inverse: #ffffff;
  --ts-surface: #171a22;
  --ts-surface-light: #ffffff;
  --ts-surface-2: #f6f8fa;
  --ts-bg: transparent;
  --ts-primary: #2563eb;
  --ts-primary-light: #3b82f6;
  --ts-primary-border: #1D4ED8;
  --ts-primary-hover: #1E40AF;
  --ts-primary-shadow: 0 6px 16px color-mix(in srgb, var(--ts-primary) 35%, transparent);
  --ts-preview-accent: #16a34a;
  --ts-secondary: #f4bd19;
  --ts-secondary-ink: #111827;
  --ts-secondary-hover: color-mix(in srgb, var(--ts-secondary) 88%, #000000 12%);
  --ts-secondary-soft: color-mix(in srgb, var(--ts-secondary) 12%, transparent);
  --ts-shadow-btn-secondary: 0 1px 0 rgba(0,0,0,.06), 0 6px 14px color-mix(in srgb, var(--ts-secondary) 35%, transparent);
  --ts-shadow-btn-secondary-hover: 0 10px 20px color-mix(in srgb, var(--ts-secondary) 45%, transparent);
  --ts-danger: #ff6b6b;
  --ts-success: #16a34a;
  --ts-info: #3b82f6;
  --ts-link: #1f3a8a;
  --ts-countdown-bg: linear-gradient(135deg, color-mix(in srgb, var(--ts-positive) 10%, transparent), color-mix(in srgb, var(--ts-positive) 5%, transparent));
  --ts-countdown-ink: var(--ts-positive);

  --ts-positive: #3ee577;
  --ts-positive-soft: #ecfdf5;
  --ts-positive-border: #bbf7d0; 

  --ts-warning: #facc15;
  --ts-warning-soft: #fff8e1;
  --ts-warning-border: #fde68a;

  --ts-negative: #ff6b6b;
  --ts-negative-soft: #fef2f2;
  --ts-negative-border: #fecaca;
  
  /* Shadows for buttons */
  --ts-shadow-btn-primary: 0 8px 18px rgba(37,99,235,.28);
  --ts-shadow-btn-secondary: 0 8px 16px rgba(244,189,25,.32);

  --ts-input-bg: #ffffff;
  --ts-input-border: #d5d9e5;
  --ts-input-placeholder: #94a3b8;
  --ts-input-text: #0f172a;
  --ts-input-focus-border: #bfdbfe;
  --ts-input-focus-shadow: 0 0 0 3px color-mix(in srgb, #2563eb 15%, transparent);

  --ts-tipster-pill-bg: #2563eb;
  --ts-tipster-pill-text: #1e40af;
  --ts-tipster-pill-border: #C7D2FE;

  --ts-badge-free-bg: #34d399;
  --ts-badge-free-border: #86EFAC;
  --ts-badge-free-text: #064e3b;
  --ts-badge-pro-bg: #fbbf24;
  --ts-badge-pro-border: #FACC15;
  --ts-badge-pro-text: #78350f;

  --ts-widgets-chip-bg: #dbeafe;
  --ts-widgets-chip-text: #1e40af;
  --ts-widgets-chip-shadow: none;

  --ts-table-head-bg: #f9fafb;
  --ts-table-head-text: #0f172a;
  --ts-table-row-hover: #f3f6fc;
  --ts-table-border: #e5e7eb;

  --ts-surface-feature: #f6f9ff;;
  --ts-surface-feature-border: #e5e7eb;

  /* Extended surfaces & borders */
  --ts-surface-ghost: #fdfdff;
  --ts-surface-ice: #f7fbff;
  --ts-surface-frost: #f8fbff;
  --ts-surface-cloud: #f2f6ff;
  --ts-surface-sky: #eaf3ff;
  --ts-surface-haze: #f8fafc;
  --ts-surface-mist: #fafbfc;
  --ts-surface-veil: #f9fbff;
  --ts-surface-foam: #f5f7fb;
  --ts-surface-shell: #eef1f5;
  --ts-surface-stone: #e3e6ea;
  --ts-surface-dust: #d9dde2;
  --ts-surface-breeze: #f7fafc;
  --ts-surface-aurora: #f8fbff;
  --ts-border-soft: #e2e8f0;
  --ts-border-muted: #cbd5e1;
  --ts-border-subtle: #cfd6df;
  --ts-border-contrast: #eef2f7;
  --ts-skeleton-base: #f0f0f0;
  --ts-skeleton-highlight: #e0e0e0;
  
  /* Neutral / ink scales */
  --ts-ink-450: #94a3b8;
  --ts-ink-500: #525866;
  --ts-ink-550: #475569;
  --ts-ink-600: #64748b;
  --ts-ink-800: #1e293b;
  --ts-ink-900: #0f172a;
  --ts-ink-950: #0b0b0b;
  
  /* Sky / azure accents */
  --ts-sky-50: #f0f9ff;
  --ts-sky-100: #e0f2fe;
  --ts-sky-500: #0ea5e9;
  --ts-sky-700: #0369a1;
  --ts-sky-800: #0c4a6e;
  
  /* Emerald accents */
  --ts-emerald-200: #a7f3d0;
  --ts-emerald-150: #d1fae5;
  --ts-emerald-400: #37b859;
  --ts-emerald-500: #10b981;
  --ts-emerald-600: #059669;
  --ts-emerald-700: #047857;
  --ts-green-deep: #166534;
  
  /* Amber / gold accents */
  --ts-amber-700: #92400e;
  --ts-gold-400: #ffb347;
  --ts-gold-500: #ffcc33;
  --ts-amber-150: #fde68a;
  --ts-amber-200: #fef3c7;
  
  /* Soft states */
  --ts-danger-soft: #fef7f7;
  --ts-info-soft: #eaf3ff;
  --ts-border: #e5e7eb;
  
  /* Font sizes */
  --ts-text-xs: 0.75rem;      /* 12px */
  --ts-text-2xs: 0.7rem;      /* ~11px */
  --ts-text-3xs: 0.6rem;      /* ~9.6px */
  --ts-text-4xs: 0.55rem;     /* 8.8px */
  --ts-text-badge: 0.65rem;   /* 10.4px */
  --ts-text-sm: 0.8rem;       /* 13px */
  --ts-text-base: 0.85rem;    /* 14px */
  --ts-text-base-plus: 0.875rem; /* 14px exact */
  --ts-text-md: 0.9rem;       /* 15px */
  --ts-text-lg: 0.95rem;      /* 15px */
  --ts-text-xl: 1rem;         /* 16px */
  --ts-text-2xl: 1.05rem;     /* 17px */
  --ts-text-2xl-plus: 1.1rem; /* 17.6px */
  --ts-text-3xl: 1.125rem;    /* 18px */
  --ts-text-3xl-plus: 1.15rem;/* 18.4px */
  --ts-text-4xl: 1.25rem;     /* 20px */
  --ts-text-4xl-mid: 1.22rem; /* 19.5px */
  --ts-text-4xl-plus: 1.3rem; /* 21px */
  --ts-text-5xl: 1.5rem;      /* 24px */
  --ts-text-6xl: 1.6rem;      /* 26px */
  --ts-text-hero: 1.8rem;     /* 28.8px */
  --ts-text-hero-sm: 1.55rem; /* 24.8px */
  
  /* Font weights */
  --ts-font-normal: 400;
  --ts-font-medium: 500;
  --ts-font-semibold: 600;
  --ts-font-bold: 700;
  --ts-font-extrabold: 800;

  /* Letter spacing */
  --ts-tracking-medium: 0.4px;
  --ts-tracking-wide: 0.5px;
  --ts-tracking-wider: 0.7px;
  
  /* Border radius */
  --ts-radius-none: 0;
  --ts-radius-xxs: 4px;
  --ts-radius-tiny: 3px;
  --ts-radius-xs: 6px;
  --ts-radius-sm: 8px;
  --ts-radius-md: 12px;
  --ts-radius-md-compact: 10px;
  --ts-radius-lg: 14px;
  --ts-radius-xl: 16px;
  --ts-radius-pill: 999px;
  --ts-radius: 14px;
  --ts-radius-small: 8px;
  --ts-radius-large: 16px;
  
  /* Spacing */
  --ts-space-0: 0;
  --ts-space-1: 2px;
  --ts-space-1-5: 3px;
  --ts-space-2: 4px;
  --ts-space-2-5: 5px;
  --ts-space-3: 6px;
  --ts-space-3-5: 7px;
  --ts-space-4: 8px;
  --ts-space-4-5: 9px;
  --ts-space-5: 10px;
  --ts-space-6: 12px;
  --ts-space-7: 14px;
  --ts-space-7-5: 15px;
  --ts-space-8: 16px;
  --ts-space-9: 18px;
  --ts-space-10: 20px;
  --ts-space-11: 22px;
  --ts-space-12: 24px;
  --ts-space-13: 26px;
  --ts-space-14: 28px;
  --ts-space-16: 32px;
  --ts-space-17: 34px;
  --ts-space-18: 36px;
  --ts-space-20: 40px;
  --ts-space-22: 44px;
  --ts-space-24: 48px;
  --ts-space-28: 56px;
  --ts-space-32: 64px;
  --ts-space-36: 72px;
  --ts-space-40: 80px;
  
  /* Padding shortcuts */
  --ts-pad-xs: 3px 10px;
  --ts-pad-sm: 6px 10px;
  --ts-pad-md: 8px 12px;
  --ts-pad-lg: 10px 14px;
  --ts-pad-xl: 12px 16px;
  --ts-pad-2xl: 14px 18px;
  --ts-pad-3xl: 16px 20px;
  --ts-pad-input: 10px 12px;
  --ts-pad-input-sm: 8px 10px;
  
  /* Legacy shortcuts */
  --ts-gap: 12px;
  --ts-pad: 16px;
  --ts-control-height-lg: 44px;
  --ts-control-height-md: 40px;
  --ts-control-width-md: 40px;
  --ts-control-width-sm: 32px;
  --ts-control-width-xs: 28px;
  
  /* Shadows */
  --ts-shadow-sm: 0 1px 2px rgba(0,0,0,.05);
  --ts-shadow-md: 0 4px 6px rgba(0,0,0,.07);
  --ts-shadow-lg: 0 8px 24px rgba(0,0,0,.18);
  --ts-shadow: 0 8px 24px rgba(0,0,0,.18); /* default */
  --ts-shadow-card: 0 2px 4px color-mix(in srgb, var(--ts-text-dark) 8%, transparent);
  --ts-shadow-card-hover: 0 6px 16px color-mix(in srgb, var(--ts-text-dark) 8%, transparent);
  --ts-shadow-elevated: 0 6px 20px color-mix(in srgb, var(--ts-text-dark) 6%, transparent);
  --ts-shadow-header: 0 4px 14px color-mix(in srgb, var(--ts-text-dark) 5%, transparent);
  --ts-shadow-card-mobile: 0 4px 12px color-mix(in srgb, var(--ts-text-dark) 5%, transparent);
  --ts-shadow-card-soft: 0 2px 8px color-mix(in srgb, var(--ts-text-dark) 8%, transparent);
  --ts-shadow-inline-menu: 0 8px 18px color-mix(in srgb, var(--ts-primary) 24%, transparent), 0 2px 6px color-mix(in srgb, var(--ts-text-dark) 8%, transparent);
  --ts-shadow-btn-primary: 0 1px 0 color-mix(in srgb, var(--ts-text-dark) 8%, transparent), 0 1px 3px color-mix(in srgb, var(--ts-primary) 25%, transparent);
  --ts-shadow-btn-secondary: 0 8px 16px rgba(244,189,25,.32);
  --ts-shadow-btn-primary-strong: 0 8px 18px color-mix(in srgb, var(--ts-primary) 18%, transparent), 0 2px 6px color-mix(in srgb, var(--ts-text-dark) 6%, transparent);
  --ts-shadow-inset-soft: var(--ts-shadow-sm), inset 0 1px 2px color-mix(in srgb, var(--ts-text-dark) 5%, transparent);
  --ts-shadow-inset-danger: var(--ts-shadow-sm), inset 0 1px 2px color-mix(in srgb, var(--ts-red-700) 8%, transparent);
  --ts-shadow-card-outline: var(--ts-shadow-card), 0 0 0 1px color-mix(in srgb, var(--ts-text-dark) 5%, transparent);
  --ts-shadow-tooltip: 0 4px 12px color-mix(in srgb, var(--ts-black) 15%, transparent);
  --ts-shadow-drawer: 0 18px 40px color-mix(in srgb, var(--ts-text-dark) 18%, transparent);
  --ts-shadow-deep: 0 12px 32px color-mix(in srgb, var(--ts-text-dark) 20%, transparent);
  --ts-shadow-glow: 0 12px 32px color-mix(in srgb, var(--ts-positive) 12%, transparent);
  --ts-shadow-subtle: 0 1px 3px color-mix(in srgb, var(--ts-text-dark) 12%, transparent);
  --ts-shadow-positive-soft: 0 2px 4px color-mix(in srgb, var(--ts-emerald-500) 18%, transparent);
  --ts-ring-primary-soft: 0 0 0 3px color-mix(in srgb, var(--ts-blue-600) 15%, transparent);
  --ts-ring-primary-strong: 0 0 0 3px color-mix(in srgb, var(--ts-blue-600) 30%, transparent);
  --ts-ring-muted: 0 0 0 3px color-mix(in srgb, var(--ts-ink-600) 18%, transparent);
  --ts-overlay-backdrop: color-mix(in srgb, var(--ts-ink-900) 42%, transparent);
  --ts-overlay-clear: color-mix(in srgb, var(--ts-ink-900) 0%, transparent);
  --ts-overlay-tooltip: color-mix(in srgb, var(--ts-black) 90%, transparent);
  --ts-border-positive-glow: color-mix(in srgb, var(--ts-positive) 20%, transparent);
  --ts-border-white-soft: color-mix(in srgb, var(--ts-white) 10%, transparent);
  --ts-gradient-positive-soft: linear-gradient(135deg, color-mix(in srgb, var(--ts-positive) 16%, transparent) 0%, color-mix(in srgb, var(--ts-positive) 8%, transparent) 100%);
  --ts-gradient-cancel-soft: linear-gradient(135deg, var(--ts-surface-haze) 0%, var(--ts-surface-foam) 100%);
  --ts-gradient-kpi-win: linear-gradient(135deg, color-mix(in srgb, var(--ts-emerald-500) 10%, transparent), color-mix(in srgb, var(--ts-emerald-500) 5%, transparent));
  --ts-gradient-timestamp: linear-gradient(135deg, var(--ts-green-100) 0%, var(--ts-emerald-150) 100%);
  --ts-gradient-timestamp-live: linear-gradient(135deg, var(--ts-amber-200) 0%, var(--ts-amber-150) 100%);
  --ts-gradient-profile-card: linear-gradient(180deg, var(--ts-surface-ice) 0%, var(--ts-white) 70%);
  --ts-gradient-table-hover: linear-gradient(135deg, var(--ts-surface-haze) 0%, var(--ts-surface-shell) 100%);
  --ts-gradient-fade-mist: linear-gradient(transparent, var(--ts-surface-mist));

  /* Component tokens */
  --ts-avatar-size-lg: 64px;
  --ts-avatar-size-md: 58px;
  --ts-avatar-size-sm: 48px;
  --ts-avatar-size-xs: 42px;
  --ts-avatar-size-hero: 90px;
  --ts-shadow-avatar: 0 0 0 var(--ts-space-2) var(--ts-white), 0 var(--ts-space-1) var(--ts-space-3) color-mix(in srgb, var(--ts-ink-950) 15%, transparent);
  --ts-icon-button-size: 32px;
  --ts-stat-card-min-width: 140px;
  --ts-stat-card-min-width-sm: 120px;
  --ts-stat-card-min-height: 96px;
  --ts-hero-main-flex-basis: 280px;
  --ts-hero-main-min-width: 260px;
  --ts-tipster-bio-max-width: 780px;
  --ts-tab-gap: 0.55rem;
  --ts-tab-padding-y: 0.65rem;
  --ts-tab-padding-x: 1.05rem;
  --ts-tab-margin-top: 1.35rem;
  --ts-result-chip-min-width: 45px;
  --ts-preview-max-height: 120px;
  --ts-pad-input-icon: 38px;
  --ts-border-thick: 3px;
  --ts-detail-label-min-width: 60px;
  --ts-detail-label-min-width-sm: 50px;
  
  /* Line heights */
  --ts-leading-tight: 1.2;
  --ts-leading-tight-plus: 1.15;
  --ts-leading-compressed: 1.1;
  --ts-leading-solid: 1;
  --ts-leading-snug: 1.3;
  --ts-leading-normal: 1.4;
  --ts-leading-relaxed: 1.5;
  --ts-leading-loose: 1.6;
  
  /* Apply defaults */
  color: var(--ts-text);
  background: var(--ts-bg);
  line-height: var(--ts-leading-relaxed);
  font: inherit;
}

.ts-v2[data-theme="light"],
.ts-v2.ts-theme-light{
  --ts-text: #0f1720;
  --ts-text-title: #0f172a;
  --ts-text-muted: #556070;
  --ts-surface: #ffffff;
  --ts-shadow: 0 6px 20px rgba(0,0,0,.08);
}

/* BASE / UTILITIES */
@layer ts-base {
  .ts-v2 .ts-muted{ color:var(--ts-muted); }
  .ts-v2 .ts-right{ margin-left:auto; }
  .ts-v2 .ts-row{ display:grid; gap:var(--ts-gap); }
  .ts-v2 .ts-positive{ color:var(--ts-positive); }
  .ts-v2 .ts-negative{ color:var(--ts-negative); }
}

/* COMPONENTS */
@layer ts-components {
  .ts-v2 .ts-card{
    background:var(--ts-surface); border-radius:var(--ts-radius);
    box-shadow:var(--ts-shadow); padding:var(--ts-pad); container-type:inline-size;
  }
  .ts-v2 .ts-btn{
    display:inline-flex; align-items:center; justify-content:center; cursor:pointer;
    border:0; border-radius:var(--ts-radius-md); padding:var(--ts-pad-lg); font-weight:var(--ts-font-semibold);
    background:color-mix(in srgb, var(--ts-text), transparent 90%); color:var(--ts-text);
  }
  .ts-v2 .ts-btn--primary{ background:var(--ts-primary); color:var(--ts-gray-900); }
  .ts-v2 .ts-btn:focus-visible{ outline:var(--ts-space-1) solid var(--ts-primary); outline-offset:var(--ts-space-1); }

  .ts-v2 .ts-badge{
    display:inline-block; border-radius:var(--ts-radius); padding:var(--ts-pad-xs); font-weight:var(--ts-font-semibold);
    background:color-mix(in srgb, var(--ts-text), transparent 85%); color:var(--ts-text);
  }
}

/* PATTERNS: TIPSTERS (filters + list + cards) */
@layer ts-patterns {
  .ts-v2 .ts-v2-table{ display:grid; gap:var(--ts-space-10); }
  .ts-v2 .ts-v2-table__list{ display:grid; gap:var(--ts-space-7); }

  /* Filter bar */
  .ts-v2 .ts-filter__row{ display:grid; gap:var(--ts-space-6); grid-template-columns:1fr; }
  @media (min-width:720px){
    .ts-v2 .ts-filter__row{ grid-template-columns:1fr 1fr 1fr 1fr auto; align-items:end; }
  }
  .ts-v2 .ts-field{ display:grid; gap:var(--ts-space-3); }
  .ts-v2 .ts-label{ font-size:var(--ts-text-base); color:var(--ts-text-muted); }
  .ts-v2 .ts-field select,
  .ts-v2 .ts-field input[type="date"]{
    appearance:none; width:100%;
    background:color-mix(in srgb, var(--ts-surface), var(--ts-black) 6%);
    color:var(--ts-text);
    border:1px solid color-mix(in srgb, var(--ts-text), transparent 85%);
    border-radius:var(--ts-radius-md); padding:var(--ts-pad-md);
  }
  .ts-v2 .ts-field--icon{ position:relative; }
  .ts-v2 .ts-field--icon .ts-icon{ position:absolute; left:var(--ts-space-5); top:var(--ts-space-16); opacity:.7; }
  .ts-v2 .ts-field--icon input{ padding-left:var(--ts-space-17); }
  .ts-v2 .ts-actions{ display:flex; gap:var(--ts-space-5); }

  /* Tipster card */
  .ts-v2 .ts-tipster{
    display:grid; gap:var(--ts-space-6); grid-template-columns:var(--ts-space-28) 1fr auto; align-items:center;
  }
  @media (max-width:599px){
    .ts-v2 .ts-tipster{ grid-template-columns:var(--ts-space-24) 1fr; }
    .ts-v2 .ts-tipster__cta{ grid-column:1/-1; }
  }
  .ts-v2 .ts-tipster__avatar img,
  .ts-v2 .ts-avatar-fallback{
    width:var(--ts-space-28); height:var(--ts-space-28); border-radius:50%;
    background:color-mix(in srgb, var(--ts-text), transparent 90%); object-fit:cover;
  }
  .ts-v2 .ts-tipster__name{
    font-size:var(--ts-text-2xl); line-height:var(--ts-leading-tight); max-width:28ch;
    white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
  }
  .ts-v2 .ts-tipster__meta{
    display:flex; flex-wrap:wrap; gap:var(--ts-space-5) var(--ts-space-8); margin-top:var(--ts-space-2); color:var(--ts-text-muted);
  }

  /* Active picks widget */
  .ts-v2 .ts-widget-activepicks{ display:flex; flex-direction:column; gap:var(--ts-space-9); }
  .ts-v2 .ts-activepicks-card{
    display:flex; flex-direction:column; gap:var(--ts-space-8);
    padding:var(--ts-pad);
    border-radius:var(--ts-radius);
    background:var(--ts-surface);
    border:1px solid var(--ts-border);
    box-shadow:var(--ts-shadow);
  }
  
  /* Header section with tabs */
  .ts-v2 .ts-activepicks-header{
    display:flex; align-items:center; justify-content:space-between;
    padding-bottom:var(--ts-space-6);
    border-bottom:1px solid color-mix(in srgb, var(--ts-border), transparent 60%);
  }
  .ts-v2 .ts-activepicks-chip, .ts-v2 .ts-sitestats-chip, .ts-tipsterstats-chip{
    background:var(--ts-widgets-chip-bg); 
    color:var(--ts-widgets-chip-text); 
    border-radius:var(--ts-radius-pill);
    padding:var(--ts-pad-sm); 
    font-weight:var(--ts-font-bold); 
    font-size:var(--ts-text-xs);
    box-shadow: var(--ts-widgets-chip-shadow);
  }
  .ts-v2 .ts-activepicks-note{ color:var(--ts-text-muted); font-size:var(--ts-text-sm); }
  
  /* List container */
  .ts-v2 .ts-activepicks-list{
    list-style:none; margin:0; padding:0;
    display:flex; flex-direction:column; gap:0;
  }
  
  /* Individual pick cards with hover effects */
  .ts-v2 .ts-activepicks-item{
    background:var(--ts-surface-2);
    padding:var(--ts-pad) !important;
  }
  .ts-v2 .ts-activepicks-item + .ts-activepicks-item{ 
    margin-top:var(--ts-space-8); 
    padding-top:calc(var(--ts-pad) + var(--ts-space-2));
  }
  .ts-v2 .ts-activepicks-item + .ts-activepicks-item::before{
    content:"";
    position:absolute;
    top:0; left:calc(var(--ts-pad) * 0.75); right:calc(var(--ts-pad) * 0.75);
    height:1px;
    background:linear-gradient(90deg, 
      transparent 0%, 
      color-mix(in srgb, var(--ts-border), transparent 40%) 20%, 
      color-mix(in srgb, var(--ts-border), transparent 20%) 80%, 
      transparent 100%);
  }
  
  /* Main content area */
  .ts-v2 .ts-activepicks-main{ display:flex; flex-direction:column; gap:var(--ts-space-3); }
  
  /* Event title row with improved typography */
  .ts-v2 .ts-activepicks-event{ margin:0 0 var(--ts-space-2); }
  .ts-v2 .ts-activepicks-event-link{
    display:flex; align-items:baseline; gap:var(--ts-space-5);
    text-decoration:none!important; color:var(--ts-gray-900) !important;
    font-size:var(--ts-text-3xl); font-weight:var(--ts-font-semibold); line-height:var(--ts-leading-normal);
  }
  .ts-v2 .ts-activepicks-event-link:hover{ text-decoration:underline!important; }
  .ts-v2 .ts-activepicks-event-icons{ 
    display:flex; align-items:baseline; gap:var(--ts-space-3); 
    height:var(--ts-space-9); /* Lock height to prevent wiggle */
  }
  .ts-v2 .ts-activepicks-event-icons img{
    width:var(--ts-space-9); height:var(--ts-space-9); 
    object-fit:contain; flex-shrink:0;
    display:block; /* Remove baseline gaps */
  }
  .ts-v2 .ts-activepicks-event-name{ color:var(--ts-text); }
  
  /* Meta grid (Tipster / Pick) with improved spacing */
  .ts-v2 .ts-activepicks-details{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:var(--ts-space-3) var(--ts-space-8);
    margin:var(--ts-space-4) 0 var(--ts-space-6);
  }
  .ts-v2 .ts-activepicks-label{
    display:block;
    font-size:var(--ts-text-xs);
    letter-spacing:.08em;
    color:var(--ts-text-muted);
    text-transform:uppercase;
    font-variant:small-caps;
    font-weight:var(--ts-font-semibold);
    margin-bottom:var(--ts-space-1);
  }
  .ts-v2 .ts-activepicks-tipster-link,
  .ts-v2 .ts-activepicks-pick-value{
    font-weight:var(--ts-font-semibold);
    color:var(--ts-link);
    font-size:var(--ts-text-xl);
    line-height:var(--ts-leading-tight);
  }
  .ts-v2 .ts-activepicks-tipster-link{
    text-decoration:none;
    color:var(--ts-link)!important;
  }
  .ts-v2 .ts-activepicks-tipster-link:hover{
    text-decoration:underline;
    color:var(--ts-link-hover)!important;
  }
  
  /* Countdown section with divider and soft success styling */
  .ts-v2 .ts-activepicks-countdown{
    border-top:1px dashed color-mix(in srgb, var(--ts-border), transparent 50%);
    padding-top:var(--ts-space-6);
    margin-top:var(--ts-space-4);
  }
  .ts-v2 .ts-activepicks-countdown-value{
    position:relative; overflow:hidden;
    display:flex; align-items:center; justify-content:center;
    width:100%;
    background:var(--ts-countdown-bg);
    color:var(--ts-countdown-ink);
    border:1px solid var(--ts-positive-border);
    border-radius:var(--ts-radius-md);
    font-weight:var(--ts-font-bold);
    padding:var(--ts-pad-md);
    box-shadow:var(--ts-shadow-inset-soft);
  }
  
  /* Soon variant for picks < 2h */
  .ts-v2 .ts-activepicks-countdown-value.is-soon{
    background:var(--ts-orange-50);
    color:var(--ts-orange-600);
    border-color:var(--ts-orange-200);
  }
  
  /* Danger variant for picks < 30m */
  .ts-v2 .ts-activepicks-countdown-value.is-danger{
    background:var(--ts-red-50);
    color:var(--ts-red-700);
    border-color:var(--ts-red-200);
  box-shadow:var(--ts-shadow-inset-danger);
  }
  .ts-v2 .ts-activepicks-countdown-value.is-started{
    background:var(--ts-amber-200);
    color:var(--ts-amber-700);
    border-color:var(--ts-amber-200);
  }
  
  /* Empty state */
  .ts-v2 .ts-activepicks-empty{ display:flex; align-items:center; justify-content:center; padding:var(--ts-space-24) var(--ts-space-12); }
  .ts-v2 .ts-activepicks-empty-text{
    color:var(--ts-text-muted);
    border:1px dashed color-mix(in srgb, var(--ts-border), transparent 20%);
    border-radius:var(--ts-radius);
    background:color-mix(in srgb, var(--ts-surface), var(--ts-black) 4%);
    padding:var(--ts-space-12); display:block; text-align:center;
  }
  
  /* Site stats widget */
  .ts-v2 .ts-widget-sitestats{ display:flex; flex-direction:column; gap:var(--ts-space-9); }
  .ts-v2 .ts-sitestats-card{
    display:flex; flex-direction:column; gap:var(--ts-space-9);
    background:var(--ts-surface);
    border:1px solid color-mix(in srgb, var(--ts-text), transparent 90%);
  }
  .ts-v2 .ts-sitestats-header{ display:flex; align-items:center; gap:var(--ts-space-6); }
  .ts-v2 .ts-sitestats-main{ display:flex; align-items:center; gap:var(--ts-space-10); }
  .ts-v2 .ts-sitestats-icon{ flex-shrink:0; }
  .ts-v2 .ts-sitestats-icon img{ width:var(--ts-space-24); height:var(--ts-space-24); object-fit:contain; }
  .ts-v2 .ts-sitestats-metrics{ display:flex; flex-direction:column; gap:var(--ts-space-6); flex:1; }
  .ts-v2 .ts-sitestats-metric{ display:flex; flex-direction:column; gap:var(--ts-space-2); }
  .ts-v2 .ts-sitestats-label{ font-size:var(--ts-text-sm); color:var(--ts-text-muted); text-transform:uppercase; letter-spacing:.04em; }
  .ts-v2 .ts-sitestats-value{ font-size:var(--ts-text-4xl); font-weight:var(--ts-font-bold); color:var(--ts-text); }
  .ts-v2 .ts-sitestats-value.is-positive{ color:var(--ts-green-500); }
  .ts-v2 .ts-sitestats-value.is-negative{ color:var(--ts-red-600); }
  .ts-v2 .ts-sitestats-value.is-neutral{ color:var(--ts-text); }
  .ts-v2 .ts-sitestats-details{
    display:flex; gap:var(--ts-space-6); flex-wrap:wrap;
    padding-top:var(--ts-space-8);
    border-top:1px solid color-mix(in srgb, var(--ts-text), transparent 90%);
  }
  .ts-v2 .ts-sitestats-detail-metric{
    display:flex; flex-direction:column; gap:var(--ts-space-2);
    padding:var(--ts-pad-xl);
    border-radius:var(--ts-radius-small);
    background:var(--ts-surface-2);
    border:1px solid color-mix(in srgb, var(--ts-text), transparent 90%);
    flex:1; min-width:0;
  }
  .ts-v2 .ts-sitestats-detail-metric.is-positive .ts-sitestats-detail-value{ color:var(--ts-green-500); }
  .ts-v2 .ts-sitestats-detail-metric.is-neutral .ts-sitestats-detail-value{ color:var(--ts-text); }
  .ts-v2 .ts-sitestats-detail-metric.is-negative .ts-sitestats-detail-value{ color:var(--ts-red-600); }
  .ts-v2 .ts-sitestats-detail-label{ font-size:var(--ts-text-xs); color:var(--ts-text-muted); text-transform:uppercase; letter-spacing:.04em; }
  .ts-v2 .ts-sitestats-detail-value{ font-size:var(--ts-text-2xl); font-weight:var(--ts-font-semibold); }
  .ts-v2 .ts-sitestats-empty{ display:flex; align-items:center; justify-content:center; padding:var(--ts-space-24) var(--ts-space-12); }
  .ts-v2 .ts-sitestats-empty-content{ text-align:center; }
  .ts-v2 .ts-sitestats-empty-text{
    color:var(--ts-muted);
    border:1px dashed color-mix(in srgb, var(--ts-text), transparent 80%);
    border-radius:var(--ts-radius);
  background:color-mix(in srgb, var(--ts-surface), var(--ts-black) 4%);
    padding:var(--ts-space-12);
    display:block;
  }
  @container (max-width:480px){
    .ts-v2 .ts-sitestats-main{ flex-direction:column; text-align:center; }
    .ts-v2 .ts-sitestats-details{ flex-direction:column; }
  }

  /* Tipster stats widget */
  .ts-v2 .ts-widget-tipsterstats{ display:flex; flex-direction:column; gap:var(--ts-space-9); }
  .ts-v2 .ts-tipsterstats-card{ display:flex; flex-direction:column; gap:var(--ts-space-9); }
  .ts-v2 .ts-tipsterstats-header{ display:flex; align-items:center; justify-content:space-between; gap:var(--ts-space-6); flex-wrap:wrap; padding-bottom:var(--ts-space-4); }
  .ts-v2 .ts-tipsterstats-tags{ display:flex; align-items:center; justify-content:space-between; width:100%; gap:var(--ts-space-6); }
  .ts-v2 .ts-tipsterstats-tag{
    border:1px solid color-mix(in srgb, var(--ts-text), transparent 85%);
    border-radius:var(--ts-radius-pill);
    font-size:var(--ts-text-xs); font-weight:var(--ts-font-medium);
    padding:var(--ts-space-2) var(--ts-space-6); 
    color:var(--ts-text-muted);
    background:color-mix(in srgb, var(--ts-surface), var(--ts-black) 4%);
  }
  .ts-v2 .ts-tipsterstats-note{ font-size:var(--ts-text-xl); color:var(--ts-text-muted); }
  .ts-v2 .ts-tipsterstats-list{
    list-style:none; margin:0; padding:var(--ts-space-9) 0 0;
    display:flex; flex-direction:column; gap:var(--ts-space-6);
    border-top:1px solid var(--ts-border);
  }
  .ts-v2 .ts-tipsterstats-item{
    display:flex; flex-direction:column; gap:var(--ts-space-6); position:relative;
    padding:var(--ts-space-10) var(--ts-space-9)!important;
    border:1px solid var(--ts-gray-200);
    border-radius:var(--ts-radius-small);
    background:var(--ts-surface-2);
  }
  .ts-v2 .ts-tipsterstats-item + .ts-tipsterstats-item::before{
    content:"";
    position:absolute;
  top:calc(var(--ts-space-3-5) * -1); left:var(--ts-space-9); right:var(--ts-space-9); height:1px;
    background:var(--ts-border);
  }
  .ts-v2 .ts-tipsterstats-header-row{
    display:flex; align-items:center; gap:var(--ts-space-6);
  }
  .ts-v2 .ts-tipsterstats-rank{ font-weight:var(--ts-font-bold); font-size:var(--ts-text-2xl); min-width:var(--ts-space-16); text-align:center; color:var(--ts-text-muted); }
  .ts-v2 .ts-tipsterstats-avatar{
    width:var(--ts-space-24); height:var(--ts-space-24); border-radius:50%; overflow:hidden;
    flex-shrink:0; background:var(--ts-surface-2);
  border:2px solid var(--ts-white);
  box-shadow:var(--ts-shadow-card-outline);
  }
  .ts-v2 .ts-tipsterstats-avatar img{
    width:100%; height:100%; object-fit:cover; display:block;
  }
  .ts-v2 .ts-tipsterstats-name{ 
    font-weight:var(--ts-font-semibold); font-size:var(--ts-text-xl); color:var(--ts-link) !important; text-decoration:none; 
    flex:1; min-width:0;
  }
  .ts-v2 .ts-tipsterstats-name:hover{ color:var(--ts-link-hover) !important; }
  .ts-v2 .ts-tipsterstats-metrics{ display:flex; gap:var(--ts-space-9); flex-wrap:wrap; }
  .ts-v2 .ts-tipsterstats-label-value{ display:flex; flex-direction:column; gap:var(--ts-space-2); }
  .ts-v2 .ts-tipsterstats-label{ font-size:var(--ts-text-sm); color:var(--ts-text-muted); text-transform:uppercase; letter-spacing:.04em; }
  .ts-v2 .ts-tipsterstats-value{ font-size:var(--ts-text-2xl); font-weight:var(--ts-font-semibold); color:var(--ts-text); }
  .ts-v2 .ts-tipsterstats-value.is-positive{ color:var(--ts-green-500); }
  .ts-v2 .ts-tipsterstats-value.is-negative{ color:var(--ts-red-600); }
  .ts-v2 .ts-tipsterstats-metrics--game{ gap:var(--ts-space-6); }
  .ts-v2 .ts-tipsterstats-metric{
    display:flex; flex-direction:column; gap:var(--ts-space-2);
    padding:var(--ts-pad-lg);
    border-radius:var(--ts-radius-small);
    background:var(--ts-surface);
    border:1px solid var(--ts-gray-200);
  }
  .ts-v2 .ts-tipsterstats-metric.is-positive .ts-tipsterstats-metric-value{ color:var(--ts-green-500); }
  .ts-v2 .ts-tipsterstats-metric.is-neutral .ts-tipsterstats-metric-value{ color:var(--ts-text); }
  .ts-v2 .ts-tipsterstats-metric.is-negative .ts-tipsterstats-metric-value{ color:var(--ts-red-600); }
  .ts-v2 .ts-tipsterstats-metric-label{ font-size:var(--ts-text-xs); color:var(--ts-text-muted); text-transform:uppercase; letter-spacing:.04em; }
  .ts-v2 .ts-tipsterstats-metric-value{ font-size:var(--ts-text-2xl); font-weight:var(--ts-font-semibold); }
  .ts-v2 .ts-tipsterstats-empty{
    padding:var(--ts-space-12);
    text-align:center;
    color:var(--ts-text-muted);
    border:1px dashed color-mix(in srgb, var(--ts-text), transparent 80%);
    border-radius:var(--ts-radius);
  background:color-mix(in srgb, var(--ts-surface), var(--ts-black) 4%);
  }
  @container (max-width:520px){
    .ts-v2 .ts-tipsterstats-item{ flex-direction:column; align-items:flex-start; }
    .ts-v2 .ts-tipsterstats-rank{ text-align:left; }
    .ts-v2 .ts-tipsterstats-metrics{ width:100%; }
  }

  /* Enhanced pagination styling */
  .ts-v2 .ts-pagination-wrapper{ display:flex; justify-content:center; margin:var(--ts-space-12) 0; }
  .ts-v2 .ts-pagination{ background:var(--ts-surface); border-radius:var(--ts-radius); padding:var(--ts-space-4); }
  .ts-v2 .ts-pagination__list{ list-style:none; margin:0; padding:0; display:flex; align-items:center; gap:var(--ts-space-2); }
  .ts-v2 .ts-pagination__item a,
  .ts-v2 .ts-pagination__item span{
    display:flex; align-items:center; justify-content:center;
  min-width:var(--ts-space-20); height:var(--ts-space-20); padding:var(--ts-space-4) var(--ts-space-6);
    border-radius:var(--ts-radius-small);
    color:var(--ts-text); text-decoration:none;
    font-weight:var(--ts-font-medium); font-size:var(--ts-text-md);
    transition:all .15s ease;
  }
  .ts-v2 .ts-pagination__item:hover a{ background:color-mix(in srgb, var(--ts-primary), transparent 85%); }
  .ts-v2 .ts-pagination__item--active span{
    background:var(--ts-primary); color:var(--ts-white); font-weight:var(--ts-font-semibold);
  }
  .ts-v2 .ts-pagination__item--dots span{ color:var(--ts-muted); }
  .ts-v2 .ts-pagination__item--prev a,
  .ts-v2 .ts-pagination__item--next a{ font-weight:600; }

  /* Section titles and utilities */
  .ts-v2 .ts-sectionTitle{
    font-size:var(--ts-text-5xl); font-weight:var(--ts-font-bold); color:var(--ts-text);
    margin:0; line-height:var(--ts-leading-tight);
  }
  .ts-v2 .ts-mb-1{ margin-bottom:var(--ts-space-6); }
  .ts-v2 .ts-mb-2{ margin-bottom:var(--ts-space-9); }
  .ts-v2 .ts-mt-2{ margin-top:var(--ts-space-9); }

  /* General widget enhancements */
  .ts-v2 .widget-title{
    font-size:var(--ts-text-4xl); font-weight:var(--ts-font-semibold); color:var(--ts-text);
    margin:0 0 var(--ts-space-8); line-height:var(--ts-leading-tight);
  }

  /* Empty + pagination (optional if present) */
  .ts-v2 .ts-empty{ text-align:center; color:var(--ts-muted); }
  .ts-v2 .ts-pagination{ display:flex; gap:var(--ts-space-4); justify-content:center; }
  .ts-v2 .ts-pagination .ts-btn{ padding:var(--ts-space-4) var(--ts-space-6); }
}
/* ============ Tipsters filter (filter_tipsters.php) ============ */
/* -------------------- filter -------------------- */
.ts-v2 .ts-filter h3{
  margin:0 0 var(--ts-space-4); font-size:var(--ts-text-4xl); color:var(--ts-text-title);
}
.ts-v2 .ts-field{ display:grid; gap:var(--ts-space-3); }
.ts-v2 .ts-label{ font-size:var(--ts-text-base); color:var(--ts-text-muted); }

.ts-v2 .ts-field select,
.ts-v2 .ts-field input[type="text"]{
  width:100%; 
  height:var(--ts-control-height-lg); 
  padding:var(--ts-pad-input);
  border:1px solid var(--ts-input-border); 
  border-radius:var(--ts-radius);
  background:var(--ts-input-bg); 
  color:var(--ts-input-text);
  transition:border-color .15s ease, box-shadow .15s ease;
  outline:none;
}
.ts-v2 .ts-field select:focus,
.ts-v2 .ts-field input[type="text"]:focus{
  border-color:var(--ts-input-focus-border); 
  box-shadow:var(--ts-input-focus-shadow);
}
.ts-v2 .ts-field--icon{ position:relative; }
.ts-v2 .ts-field--icon .ts-calendar-icon{
  position:absolute; left:var(--ts-space-6); top:var(--ts-space-20); font-size:var(--ts-text-3xl); color:var(--ts-muted); pointer-events:none;
}
.ts-v2 .ts-field--icon input[type="text"]{ padding-left:var(--ts-pad-input-icon); }

/* -------------------- cards list -------------------- */
.ts-v2 .tipsters-modern{ display:grid; gap:var(--ts-space-8); }

/* card shell */
.ts-v2 .tipsters-modern-single{
  position: relative; /* for absolute CTA on desktop */
  background: var(--ts-surface);
  border: 1px solid var(--ts-border);
  border-radius: var(--ts-radius);
  padding: var(--ts-pad);
  box-shadow: var(--ts-shadow-card);
  transition: box-shadow .15s ease, transform .15s ease;
}
.ts-v2 .tipsters-modern-single:hover{
  transform: translateY(-1px);
  box-shadow: var(--ts-shadow-card-hover);
}

/* make the row vertically centered (desktop) */
.ts-v2 .tipsters-modern-single .row{ align-items:center; }

/* Add subtle borders between sections */
.ts-v2 .tipsters-modern-single .col-md-4{
  border-right: 1px solid var(--ts-border);
  padding-right: var(--ts-space-10);
}
.ts-v2 .tipsters-modern-single .col-md-8{
  padding-left: var(--ts-space-10);
}

/* avatar */
.ts-v2 .tipsters-img{
  width:56px; height:56px; border-radius:50%;
  object-fit:cover; background:var(--ts-gray-100);
}

/* name under image (desktop), centered */
.ts-v2 .tipsters-user{
  display:flex; flex-direction:column; align-items:center; gap:var(--ts-space-3);
}
.ts-v2 .tipsters-name{
  margin:var(--ts-space-3) 0 0; font-size:var(--ts-text-2xl); color:var(--ts-text);
  text-align:center;
}

.ts-v2 .tipsters-name a {color: var(--ts-link);}
.ts-v2 .tipsters-name a:hover {color: var(--ts-link-hover);}

/* Ensure avatar and name are properly centered */
.ts-v2 .tipsters-modern-single .col-md-4 .d-flex{
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}

/* ---- move the Profile button to the far right (desktop) ---- */
.ts-v2 .tipsters-user .btn{
  border-radius:var(--ts-radius-md-compact); padding:var(--ts-space-4) var(--ts-space-7); font-size:var(--ts-text-md); font-weight:var(--ts-font-semibold);
}
.ts-v2 .tipsters-user .btn-primary{
  background: var(--ts-primary); color: var(--ts-white); border:none;
  box-shadow:var(--ts-shadow-btn-primary);
}
.ts-v2 .tipsters-user .btn-primary:hover{ background:var(--ts-primary-hover); }
.ts-v2 .tipsters-user .btn-primary:active{ transform:translateY(1px); }

.ts-v2 .tipsters-modern-single .col-md-2 .ts-left img {
  display: block;
  margin: auto;
}

.ts-v2 .tipsters-modern-single .ts-cta a {border-radius:var(--ts-radius-sm); border-color:var(--ts-primary-border); background-color: var(--ts-primary);}
.ts-v2 .tipsters-modern-single .ts-cta a:hover {background-color: var(--ts-primary-hover);}

/* position the same button on the right middle (desktop) */
@media (min-width:768px){
  .ts-v2 .tipsters-modern-single .col-md-2, .ts-v2 .tipsters-modern-single .col-md-8 {
    border-right: 1px solid var(--ts-border);
  }
  .ts-v2 .tipsters-modern-single .ts-cta  { 
    left: 50%;
    position: relative;
  }
  .ts-v2 .tipsters-modern-single .tipsters-user .btn{
    position:absolute;
    right:16px;
    top:50%;
    transform:translateY(-50%);
  }
}

/* stats (middle column) */
.ts-v2 .tipster-stats{ margin-top:0; line-height: normal;} /* kill extra top gap so it centers */
.ts-v2 .tipster-stats .row{ align-items:center; }
.ts-v2 .ts-stat{
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  line-height:var(--ts-leading-tight-plus); min-height:var(--ts-control-height-lg); gap:var(--ts-space-1-5); text-align:center;
}
.ts-v2 .ts-number{ font-size:var(--ts-text-xl); font-weight:var(--ts-font-bold); color:var(--ts-text); }
.ts-v2 .ts-text{ font-size:var(--ts-text-sm); color:var(--ts-muted); }

/* positive/negative colors */
.ts-v2 .ts-number.ts-won{ color:var(--ts-green-500); }   /* green */
.ts-v2 .ts-number.ts-lost{ color:var(--ts-red-600); }  /* red */
.ts-v2 .ts-number:not(.ts-won):not(.ts-lost){ color:var(--ts-text); }

/* -------------------- mobile niceties -------------------- */
/* ===================== Range select (top-right) ===================== */
.ts-v2 .pull-right select#select_date{
  height:var(--ts-control-height-lg);
  padding:0 var(--ts-space-9);
  border:1px solid var(--ts-border);
  border-radius:var(--ts-radius);
  background:var(--ts-surface);
  color:var(--ts-text);
  font-size:var(--ts-text-lg);
  transition:border-color .15s ease, box-shadow .15s ease;
}
.ts-v2 .pull-right select#select_date:focus{
  outline:none;
  border-color:var(--ts-primary);
  box-shadow:var(--ts-ring-primary-soft);
}

/* base table */
.ts-v2 .ts-v2-table .tipster-script-table{
  width:100%;
  margin:0;
  border-collapse:separate;
  border-spacing:0;
  font-variant-numeric:tabular-nums;
}

/* header */

.ts-v2 .ts-v2-table thead th{
  background:var(--ts-table-head-bg);
  color:var(--ts-text-muted);
  font-weight:400;
  padding:var(--ts-space-7) var(--ts-space-9);
  border-bottom:1px solid var(--ts-table-head-border);
  text-align:left;
  font-size:var(--ts-text-lg);
}

/* body rows */
.ts-v2 .ts-v2-table tbody tr{
  background:var(--ts-surface);
  border-top:1px solid var(--ts-table-head-border);
}

/* cells */
.ts-v2 .ts-v2-table tbody td{
  padding:var(--ts-space-7) var(--ts-space-9);
  vertical-align:middle;
  font-size:var(--ts-text-lg);
  color:var(--ts-text);
  border-bottom: 1px solid var(--ts-table-head-border) !important;
}

.ts-v2 .ts-v2-table tbody td img{
    width: 32px;
    height: 32px;
    float: left;
}

.ts-v2 .ts-v2-table tbody td .ts-sport-img {
  width: auto;
  height: 20px;
  margin-right: var(--ts-space-2);
  float: left;
  margin-top: var(--ts-space-3);
}

.ts-v2 .ts-v2-table .ts_img_icon span {
  margin-left: var(--ts-space-2);
} 

/* links (username) */
.ts-v2 .ts-v2-table tbody td a{
  color:var(--ts-link);
  font-weight:400;
  text-decoration:underline;
  vertical-align: middle;
  line-height: var(--ts-space-16);
}

.ts-v2 .ts-v2-table tbody .latest_pick_event a {
  margin-left: 0;
  float: unset;
}

.ts-v2 .ts-v2-table tbody td a:hover {
  color:var(--ts-link-hover);
}

.ts-v2 .ts-v2-table tbody td .ts-latest-event-date {
  position: relative;
}

/* positive / negative */
.ts-v2 .ts-v2-table .ts-won{ color:var(--ts-green-500); font-weight:var(--ts-font-semibold); }
.ts-v2 .ts-v2-table .ts-lost{ color:var(--ts-red-600); font-weight:var(--ts-font-semibold); }

/* round corners on first/last row */
.ts-v2 .ts-v2-table tbody tr:first-child td:first-child{ border-top-left-radius:var(--ts-radius-xl); }
.ts-v2 .ts-v2-table tbody tr:first-child td:last-child{ border-top-right-radius:var(--ts-radius-xl); }
.ts-v2 .ts-v2-table tbody tr:last-child td:first-child{ border-bottom-left-radius:16px; }
.ts-v2 .ts-v2-table tbody tr:last-child td:last-child{ border-bottom-right-radius:16px; }

.ts-v2 .ts-v2-table .table_event {
  width: 35%;
  min-width: 200px;
}

.ts-v2 .ts-v2-table .table_tipster {
  width: 20%;
  min-width: 120px;
}

.ts-v2 .ts-v2-table .table_pick {
  width: 30%;
  min-width: 150px;
  word-break: break-word;
  overflow-wrap: break-word;
}

.ts-v2 .ts-v2-table .table_score {
  width: 15%;
  min-width: 80px;
  white-space: nowrap;
}

.ts-v2 .ts-v2-table .table_odds, .ts-v2 .ts-v2-table .table_stake {
  width: 10%;
  min-width: 50px;
  white-space: nowrap;
}

.ts-v2 .ts-v2-table .table_time {
  width: 20%;
  min-width: 100px;
  white-space: nowrap;
}

/* Ensure picks break properly when too long */
.ts-v2 .ts-v2-table .table_pick .ts-pick-text {
  word-break: break-word;
  overflow-wrap: break-word;
  max-width: 100%;
}

@media (min-width: 768px) {
  .ts-v2 .ts-v2-table {
    background:var(--ts-surface);
    border:1px solid var(--ts-border);
    border-radius:16px;
    overflow:hidden;
    box-shadow:var(--ts-shadow-header);
    margin-top: 16px;
  }
}

.ts-v2.ts-profile { --ts-gap:var(--ts-space-8); }

/* Select wrapper draws the dropdown chevron; works across browsers */
.ts-v2.ts-profile .ts-select{
  position: relative; width: 100%;
}

/* Make room for the arrow & normalize appearance */
.ts-v2.ts-profile .ts-select .ts-input{
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding-right: var(--ts-space-20);            /* space for the chevron */
  cursor: pointer;
}

/* The chevron */
.ts-v2.ts-profile .ts-select::after{
  content: "";
  position: absolute;
  right: var(--ts-space-6); top: 50%;
  width: var(--ts-space-6); height: var(--ts-space-6);
  transform: translateY(-50%);
  background: no-repeat center / 12px 12px
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M6 8l4 4 4-4' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  pointer-events: none;           /* clicks go to the select */
  opacity: .9;
}

/* Focus ring stays on the control */
.ts-v2.ts-profile .ts-select .ts-input:focus{
  outline: none;
  border-color: var(--ts-input-focus-border);
  box-shadow: var(--ts-input-focus-shadow);
}

/* (Old IE-only, harmless elsewhere) */
.ts-v2.ts-profile .ts-select .ts-input::-ms-expand{ display:none; }


/* ---------- Generic card ---------- */
.ts-v2.ts-profile .ts-card{
  background: var(--ts-surface);
  border: 1px solid var(--ts-border);
  border-radius: var(--ts-radius-xl);
  box-shadow: var(--ts-shadow-elevated);
}

/* =========================================
   LEFT COLUMN: Profile card (avatar + name)
   ========================================= */
.ts-v2.ts-profile .ts-profileCard{
  padding: var(--ts-space-8);
  margin-bottom: var(--ts-space-8);
  text-align: center;
  background: var(--ts-surface);
}

.ts-v2.ts-profile .ts-profileCard__avatar{
  width: 80px; height: 80px; border-radius: 50%;
  object-fit: cover; background: var(--ts-info-soft);
  display: inline-block; margin-bottom: var(--ts-space-5);
}

.ts-v2.ts-profile .ts-profileCard__name{
  font-size: var(--ts-text-4xl); 
  font-weight: var(--ts-font-semibold); 
  color: var(--ts-text); 
  line-height: var(--ts-leading-tight);
}

.ts-v2.ts-profile .ts-profileCard__subtitle{
  font-size: var(--ts-text-lg); color: var(--ts-muted); margin-top: var(--ts-space-1);
}

/* Hide any old floating FAB if it exists */
.ts-v2.ts-profile .ts-menu-fab{ display: none !important; }

/* =========================
   Sidebar navigation (desktop)
   ========================= */
.ts-v2.ts-profile .ts-nav{
  display: flex; flex-direction: column; gap: var(--ts-space-4);
  padding: var(--ts-space-5);
}

.ts-v2.ts-profile .ts-nav__item{
  display: block; padding: var(--ts-space-5) var(--ts-space-6); border-radius: var(--ts-radius-md);
  color: var(--ts-text); text-decoration: none; border: 1px solid transparent;
  transition: background .15s ease, border-color .15s ease, color .15s ease, transform .1s ease;
}

.ts-v2.ts-profile .ts-nav__item:hover{
  background: var(--ts-surface-cloud); 
  border-color: var(--ts-border);
}

.ts-v2.ts-profile .ts-nav__item.is-active{
  background: var(--ts-primary); 
  border-color: var(--ts-primary-border); 
  color: var(--ts-surface);
}

.ts-v2.ts-profile .ts-nav__item:active{ transform: translateY(1px); }

.ts-v2.ts-profile .ts-nav__item:focus-visible{
  outline: none;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--ts-blue-600), transparent 70%);
}

/* =========================
   Content card (right column)
   ========================= */
.ts-v2.ts-profile .ts-content{ padding: var(--ts-space-11); }

.ts-v2.ts-profile .ts-content .ts-h3{
  margin:0 0 var(--ts-space-5); font-size:var(--ts-text-6xl); font-weight:var(--ts-font-semibold); color:var(--ts-text);
}

.ts-v2.ts-profile .ts-content p{ margin:0; font-size:var(--ts-text-xl); color:var(--ts-text); }

/* =========================
   Layout container
   ========================= */
.ts-v2.ts-profile .ts-profile__body{ row-gap: 16px; }

.ts-v2.ts-profile .ts-nav.ts-nav--dividers .ts-nav__item{
  position: relative;
  padding-top: 14px;
  padding-bottom: 14px;
}

.ts-v2.ts-profile .ts-nav.ts-nav--dividers .ts-nav__item:not(:last-child)::after{
  content:""; position:absolute; left:12px; right:12px; bottom:-1px; height:1px;
  background: color-mix(in srgb, var(--ts-border), transparent 40%);
  pointer-events:none;
}

/* no divider under the active pill */
.ts-v2.ts-profile .ts-nav.ts-nav--dividers .ts-nav__item.is-active::after{ opacity:0; }

/* =========================
   Responsive tweaks
   ========================= */
@media (max-width: 991.98px){
  .ts-v2.ts-profile .ts-profileCard{ margin-bottom: 12px; }
  .ts-v2.ts-profile .ts-profileCard__avatar{ width:72px; height:72px; }
}

/* (Optional) keep inline button only on mobile) */
@media (min-width: 768px){
  .ts-v2.ts-profile .ts-menu-inline{ display: none; }
}
@media (max-width: 782px){ /* WP uses 782px breakpoint for admin bar */
  body.admin-bar .ts-v2.ts-profile .ts-nav.ts-nav--drawer{
    top: 46px;                          /* start below admin bar */
    height: calc(100vh - 46px);         /* keep full visible height */
  }
  body.admin-bar .ts-v2.ts-profile::after{
    top: 46px;                          /* overlay also starts below the bar */
    bottom: 0; left: 0; right: 0;
  }
}

html.ts-lock, body.ts-lock { overflow: hidden; }

/* avoid layout shift when locking on desktop browsers */
html { scrollbar-gutter: stable both-edges; }

/* ===== Spacing utilities (ts-v2) ===== */
/* Scale: 0, .5, 1, 1.5, 2 rem */
.ts-v2 .ts-m-0{ margin:0!important; }
.ts-v2 .ts-mx-0{ margin-left:0!important; margin-right:0!important; }
.ts-v2 .ts-my-0{ margin-top:0!important; margin-bottom:0!important; }
.ts-v2 .ts-mt-0{ margin-top:0!important; }
.ts-v2 .ts-mr-0{ margin-right:0!important; }
.ts-v2 .ts-mb-0{ margin-bottom:0!important; }
.ts-v2 .ts-ml-0{ margin-left:0!important; }

.ts-v2 .ts-m-05{ margin:.5rem!important; }
.ts-v2 .ts-mx-05{ margin-left:.5rem!important; margin-right:.5rem!important; }
.ts-v2 .ts-my-05{ margin-top:.5rem!important; margin-bottom:.5rem!important; }
.ts-v2 .ts-mt-05{ margin-top:.5rem!important; }
.ts-v2 .ts-mr-05{ margin-right:.5rem!important; }
.ts-v2 .ts-mb-05{ margin-bottom:.5rem!important; }
.ts-v2 .ts-ml-05{ margin-left:.5rem!important; }

.ts-v2 .ts-m-1{ margin:1rem!important; }
.ts-v2 .ts-mx-1{ margin-left:1rem!important; margin-right:1rem!important; }
.ts-v2 .ts-my-1{ margin-top:1rem!important; margin-bottom:1rem!important; }
.ts-v2 .ts-mt-1{ margin-top:1rem!important; }
.ts-v2 .ts-mr-1{ margin-right:1rem!important; }
.ts-v2 .ts-mb-1{ margin-bottom:1rem!important; }
.ts-v2 .ts-ml-1{ margin-left:1rem!important; }

.ts-v2 .ts-m-15{ margin:1.5rem!important; }
.ts-v2 .ts-mx-15{ margin-left:1.5rem!important; margin-right:1.5rem!important; }
.ts-v2 .ts-my-15{ margin-top:1.5rem!important; margin-bottom:1.5rem!important; }
.ts-v2 .ts-mt-15{ margin-top:1.5rem!important; }
.ts-v2 .ts-mr-15{ margin-right:1.5rem!important; }
.ts-v2 .ts-mb-15{ margin-bottom:1.5rem!important; }
.ts-v2 .ts-ml-15{ margin-left:1.5rem!important; }

.ts-v2 .ts-m-2{ margin:2rem!important; }
.ts-v2 .ts-mx-2{ margin-left:2rem!important; margin-right:2rem!important; }
.ts-v2 .ts-my-2{ margin-top:2rem!important; margin-bottom:2rem!important; }
.ts-v2 .ts-mt-2{ margin-top:2rem!important; }
.ts-v2 .ts-mr-2{ margin-right:2rem!important; }
.ts-v2 .ts-mb-2{ margin-bottom:2rem!important; }
.ts-v2 .ts-ml-2{ margin-left:2rem!important; }

.ts-v2 .ts-p-0{ padding:0!important; }
.ts-v2 .ts-px-0{ padding-left:0!important; padding-right:0!important; }
.ts-v2 .ts-py-0{ padding-top:0!important; padding-bottom:0!important; }
.ts-v2 .ts-pt-0{ padding-top:0!important; }
.ts-v2 .ts-pr-0{ padding-right:0!important; }
.ts-v2 .ts-pb-0{ padding-bottom:0!important; }
.ts-v2 .ts-pl-0{ padding-left:0!important; }

.ts-v2 .ts-p-05{ padding:.5rem!important; }
.ts-v2 .ts-px-05{ padding-left:.5rem!important; padding-right:.5rem!important; }
.ts-v2 .ts-py-05{ padding-top:.5rem!important; padding-bottom:.5rem!important; }
.ts-v2 .ts-pt-05{ padding-top:.5rem!important; }
.ts-v2 .ts-pr-05{ padding-right:.5rem!important; }
.ts-v2 .ts-pb-05{ padding-bottom:.5rem!important; }
.ts-v2 .ts-pl-05{ padding-left:.5rem!important; }

.ts-v2 .ts-p-1{ padding:1rem!important; }
.ts-v2 .ts-px-1{ padding-left:1rem!important; padding-right:1rem!important; }
.ts-v2 .ts-py-1{ padding-top:1rem!important; padding-bottom:1rem!important; }
.ts-v2 .ts-pt-1{ padding-top:1rem!important; }
.ts-v2 .ts-pr-1{ padding-right:1rem!important; }
.ts-v2 .ts-pb-1{ padding-bottom:1rem!important; }
.ts-v2 .ts-pl-1{ padding-left:1rem!important; }

.ts-v2 .ts-p-15{ padding:1.5rem!important; }
.ts-v2 .ts-px-15{ padding-left:1.5rem!important; padding-right:1.5rem!important; }
.ts-v2 .ts-py-15{ padding-top:1.5rem!important; padding-bottom:1.5rem!important; }
.ts-v2 .ts-pt-15{ padding-top:1.5rem!important; }
.ts-v2 .ts-pr-15{ padding-right:1.5rem!important; }
.ts-v2 .ts-pb-15{ padding-bottom:1.5rem!important; }
.ts-v2 .ts-pl-15{ padding-left:1.5rem!important; }

.ts-v2 .ts-p-2{ padding:var(--ts-space-16)!important; }
.ts-v2 .ts-px-2{ padding-left:var(--ts-space-16)!important; padding-right:var(--ts-space-16)!important; }
.ts-v2 .ts-py-2{ padding-top:var(--ts-space-16)!important; padding-bottom:var(--ts-space-16)!important; }
.ts-v2 .ts-pt-2{ padding-top:var(--ts-space-16)!important; }
.ts-v2 .ts-pr-2{ padding-right:var(--ts-space-16)!important; }
.ts-v2 .ts-pb-2{ padding-bottom:var(--ts-space-16)!important; }
.ts-v2 .ts-pl-2{ padding-left:var(--ts-space-16)!important; }

/* Aliases without hyphen after prefix (e.g., ts-mb1, ts-pt2) */
/* Margin top */
.ts-v2 .ts-mt0{ margin-top:0!important; }
.ts-v2 .ts-mt05{ margin-top:var(--ts-space-4)!important; }
.ts-v2 .ts-mt1{ margin-top:var(--ts-space-8)!important; }
.ts-v2 .ts-mt15{ margin-top:var(--ts-space-12)!important; }
.ts-v2 .ts-mt2{ margin-top:var(--ts-space-16)!important; }
/* Margin bottom */
.ts-v2 .ts-mb0{ margin-bottom:0!important; }
.ts-v2 .ts-mb05{ margin-bottom:var(--ts-space-4)!important; }
.ts-v2 .ts-mb1{ margin-bottom:var(--ts-space-8)!important; }
.ts-v2 .ts-mb15{ margin-bottom:var(--ts-space-12)!important; }
.ts-v2 .ts-mb2{ margin-bottom:var(--ts-space-16)!important; }
/* Padding top */
.ts-v2 .ts-pt0{ padding-top:0!important; }
.ts-v2 .ts-pt05{ padding-top:var(--ts-space-4)!important; }
.ts-v2 .ts-pt1{ padding-top:var(--ts-space-8)!important; }
.ts-v2 .ts-pt15{ padding-top:var(--ts-space-12)!important; }
.ts-v2 .ts-pt2{ padding-top:var(--ts-space-16)!important; }
/* Padding bottom */
.ts-v2 .ts-pb0{ padding-bottom:0!important; }
.ts-v2 .ts-pb05{ padding-bottom:var(--ts-space-4)!important; }
.ts-v2 .ts-pb1{ padding-bottom:var(--ts-space-8)!important; }
.ts-v2 .ts-pb15{ padding-bottom:var(--ts-space-12)!important; }
.ts-v2 .ts-pb2{ padding-bottom:var(--ts-space-16)!important; }

/* ============ Form shell ============ */
.ts-v2.ts-profile .ts-form{
  display: grid; gap: var(--ts-space-8);
}

/* section title (global across v2) */
.ts-v2 .ts-sectionTitle{
  margin-top: var(--ts-space-2);
  font-size: var(--ts-text-4xl); 
  font-weight: var(--ts-font-medium); 
  color: var(--ts-text-title);
}

/* field block */
.ts-v2.ts-profile .ts-field{ display: grid; gap: var(--ts-space-4); }

/* inline pair (dates) */
.ts-v2.ts-profile .ts-field.ts-field--inline{
  display: grid; gap: var(--ts-space-6);
}
.ts-v2.ts-profile .ts-field.ts-field--inline .ts-field__col{ display: grid; gap: var(--ts-space-4); }
@media (min-width: 768px){
  .ts-v2.ts-profile .ts-field.ts-field--inline{ grid-template-columns: 1fr 1fr; }
}

/* label */
.ts-v2.ts-profile .ts-label{
  font-weight: var(--ts-font-normal); color: var(--ts-text);
}

/* inputs + textarea */
.ts-v2.ts-profile .ts-input,
.ts-v2.ts-profile .ts-textarea{
  width: 100%;
  border: 1px solid var(--ts-input-border);
  border-radius: var(--ts-radius-md);
  background: var(--ts-input-bg);
  padding: var(--ts-pad-input);
  font-size: var(--ts-text-xl);
  color: var(--ts-input-text);
  transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.ts-v2.ts-profile .ts-textarea{ min-height: 140px; resize: vertical; }

/* datetime-local specific fixes for mobile */
.ts-v2.ts-profile .ts-input[type="datetime-local"]{
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}

@media (max-width: 480px){
  .ts-v2.ts-profile .ts-input[type="datetime-local"]{
    font-size: var(--ts-text-md);
    padding: var(--ts-pad-input-sm);
  }
}

/* focus state */
.ts-v2.ts-profile .ts-input:focus,
.ts-v2.ts-profile .ts-textarea:focus{
  outline: none;
  border-color: var(--ts-input-focus-border);
  box-shadow: var(--ts-input-focus-shadow);
  background: var(--ts-surface);
}

/* button row */
.ts-v2.ts-profile .ts-actions{ margin-top: var(--ts-space-4); }

.ts-v2.ts-profile .ts-btn, .ts-v2 #ts_login_submit{
  display: inline-flex; align-items: center; justify-content: center;
  height: var(--ts-control-height-lg); padding: 0 var(--ts-space-9); border-radius: var(--ts-radius-md);
  border: 1px solid transparent; font-weight: var(--ts-font-normal); cursor: pointer;
}
.ts-v2.ts-profile .ts-btn--primary, .ts-v2 #ts_login_submit{
  background: var(--ts-primary); 
  color: var(--ts-surface); 
  border-color: var(--ts-primary-border);
  box-shadow: var(--ts-shadow-btn-primary-strong);
}
.ts-v2.ts-profile .ts-btn--primary:hover, .ts-v2 #ts_login_submit:hover{ filter: brightness(1.05); }
.ts-v2.ts-profile .ts-btn--primary:active, .ts-v2 #ts_login_submit:active{ transform: translateY(1px); }

/* tighten horizontal rhythm on very small screens */
@media (max-width: 480px){
  .ts-v2.ts-profile .ts-input,
  .ts-v2.ts-profile .ts-textarea{ font-size: .98rem; }
}
/* ===================== Results table ===================== */
.ts-v2.ts-results{
  --t-border: var(--ts-border);
  --t-header: var(--ts-surface-haze);
  --t-shadow: var(--ts-shadow-elevated);
  --t-radius: 16px;
  --t-row-hover: var(--ts-surface-veil);
  --link: var(--ts-link);
}

.ts-v2.ts-results .ts-table{
  width: 100%;
  border: 1px solid var(--t-border);
  border-radius: var(--t-radius);
  box-shadow: var(--t-shadow);
  overflow: hidden;
  background: var(--ts-white);
  border-collapse: separate; border-spacing: 0;
}

.ts-v2.ts-results tbody tr{
   border-top: 1px solid var(--t-border); 
}

.ts-v2.ts-results tbody tr:nth-child(even) { background:var(--ts-surface-veil) !important; }

/* Keep the soft hover */
.ts-v2.ts-results tbody tr:hover td{
  background: var(--t-row-hover, var(--ts-surface-aurora));
}

.ts-v2.ts-results thead th{
  background: var(--t-header);
  font-weight: var(--ts-font-normal); 
  color: var(--ts-ink-900);
  padding: var(--ts-space-7) var(--ts-space-8);
  white-space: nowrap;
}

.ts-v2.ts-results tbody td{
  padding: var(--ts-space-7) var(--ts-space-8);
  border-top: 1px solid var(--t-border);
  vertical-align: middle;
  color: var(--ts-gray-900);
}

.ts-v2.ts-results tbody tr:hover td{
  background: var(--t-row-hover);
}

/* event link */
.ts-v2.ts-results .ts-link{
  color: var(--ts-ink-500); 
  text-decoration: underline;
}
.ts-v2.ts-results .ts-link:hover{
  border-bottom-color: currentColor;
}

/* ===================== Status badges ===================== */
.ts-v2.ts-results .ts-badge{
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 84px;
  padding: var(--ts-space-3) var(--ts-space-5);
  font-size: .85rem; font-weight: 700;
  border-radius: 999px; border: 1px solid transparent;
}

/* palette - softer colors */
.ts-v2 .ts-badge--pending { color:var(--ts-gray-500) !important; background:var(--ts-gray-100); border-color:var(--ts-gray-200); }
.ts-v2 .ts-badge--won     { color:var(--ts-green-700) !important; background:var(--ts-green-100); border-color:var(--ts-green-200); }
.ts-v2 .ts-badge--lost    { color:var(--ts-red-600) !important; background:var(--ts-red-50); border-color:var(--ts-red-200); }
.ts-v2 .ts-badge--void    { color:var(--ts-gray-800) !important; background:var(--ts-gray-100); border-color:var(--ts-gray-200); }
.ts-v2 .ts-badge--cancel  { color:var(--ts-gray-800) !important; background:var(--ts-gray-100); border-color:var(--ts-gray-200); }
.ts-v2 .ts-badge--half-won{ color:var(--ts-green-600) !important; background:var(--ts-green-50); border-color:var(--ts-green-200); }
.ts-v2 .ts-badge--half-lost{ color:var(--ts-red-600) !important; background:var(--ts-red-50); border-color:var(--ts-red-200); }

/* Handle potential variations in status naming */
.ts-v2 .ts-badge--half,
.ts-v2 .ts-badge--halfwon { color:var(--ts-emerald-600); background:var(--ts-green-50); border-color:var(--ts-green-200); }
.ts-v2 .ts-badge--halflost { color:var(--ts-red-600); background:var(--ts-danger-soft); border-color:var(--ts-red-200); }

/* Status badge icons */
.ts-v2 .ts-badge--icon {
  width: var(--ts-space-16);
  height: var(--ts-space-16);
  min-width: var(--ts-space-16);
  padding: var(--ts-space-3);
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  cursor: pointer;
  transition: all 0.2s ease;
}

.ts-v2 .ts-badge--icon::before {
  content: "";
  width: var(--ts-space-8);
  height: var(--ts-space-8);
  display: block;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: 16px 16px;
  background-color: currentColor;
  transition: all 0.2s ease;
}

/* Hover text functionality */
.ts-v2 .ts-badge--icon::after {
  content: attr(title);
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  background: var(--ts-overlay-tooltip);
  color: var(--ts-white);
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 12px;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
  z-index: 1000;
  margin-bottom: 4px;
}

/* Show text on desktop hover */
@media (hover: hover) {
  .ts-v2 .ts-badge--icon:hover::after {
    opacity: 1;
  }
  .ts-v2 .ts-badge--icon:hover {
    transform: scale(1.1);
  }
}

/* Show text on mobile tap/focus */
.ts-v2 .ts-badge--icon.show-text::after,
.ts-v2 .ts-badge--icon:focus::after {
  opacity: 1;
}

.ts-v2 .ts-badge--icon:focus {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}

/* Multi-pick styling */
.ts-v2 .ts-multi-pick {
  display: flex;
  flex-direction: column;
  gap: var(--ts-space-2);
  min-width: 0;
  overflow: hidden;
}

.ts-v2 .ts-pick-item {
  display: flex;
  align-items: flex-start;
  gap: var(--ts-space-2);
  padding: var(--ts-space-1) 0;
  border-bottom: 1px solid var(--ts-border);
  font-size: var(--ts-text-base);
  line-height: var(--ts-leading-normal);
  min-width: 0;
  overflow: hidden;
}

.ts-v2 .ts-pick-item:last-child {
  border-bottom: none;
}

.ts-v2 .ts-pick-number {
  color: var(--ts-gray-500);
  font-weight: var(--ts-font-semibold);
  min-width: var(--ts-space-10);
  font-size: var(--ts-text-xs);
}

.ts-v2 .ts-pick-text {
  flex: 1;
  word-break: break-word;
  overflow-wrap: break-word;
  word-wrap: break-word;
  white-space: normal;
  max-width: 100%;
  min-width: 0;
}

/* Modern Pagination Styling */
.ts-v2 .ts-pagination-wrapper {
  margin: var(--ts-space-12) 0;
  display: flex;
  justify-content: center;
  width: 100%;
}

.ts-v2 .ts-pagination {
  display: inline-block;
  max-width: 100%;
}

.ts-v2 .ts-pagination__list {
  display: flex;
  align-items: center;
  gap: var(--ts-space-2);
  list-style: none;
  margin: 0;
  padding: 0;
  border: 1px solid var(--ts-border);
  border-radius: var(--ts-radius-sm);
  padding: var(--ts-space-2);
  box-shadow: var(--ts-shadow-subtle);
  max-width: 100%;
  overflow: hidden;
}

.ts-v2 .ts-pagination__item {
  margin: 0;
  flex-shrink: 0;
}

.ts-v2 .ts-pagination__item a,
.ts-v2 .ts-pagination__item span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: var(--ts-control-width-md);
  height: var(--ts-control-height-md);
  padding: 0 var(--ts-space-6);
  border-radius: var(--ts-radius-xs);
  font-size: var(--ts-text-base);
  font-weight: var(--ts-font-medium);
  text-decoration: none;
  color: var(--ts-text);
  background: transparent;
  border: none;
  transition: all 0.2s ease;
  cursor: pointer;
}

.ts-v2 .ts-pagination__item a:hover {
  background: var(--ts-primary-light);
  color: var(--ts-text);
}

.ts-v2 .ts-pagination__item--active a,
.ts-v2 .ts-pagination__item--active span {
  background: var(--ts-primary-light);
  color: var(--ts-white);
  font-weight: var(--ts-font-semibold);
}

.ts-v2 .ts-pagination__item--active a:hover {
  background: var(--ts-blue-600);
  color: var(--ts-white);
}

.ts-v2 .ts-pagination__item--prev a,
.ts-v2 .ts-pagination__item--next a {
  font-weight: var(--ts-font-semibold);
  color: var(--ts-primary-light);
}

.ts-v2 .ts-pagination__item--prev a:hover,
.ts-v2 .ts-pagination__item--next a:hover {
  background: var(--ts-primary-light);
  color: var(--ts-primary);
}

.ts-v2 .ts-pagination__item--dots span {
  cursor: default;
  color: var(--ts-gray-400);
}

.ts-v2 .ts-pagination__item--dots span:hover {
  background: transparent;
  color: var(--ts-gray-400);
}

/* ========== Single Pick (v2) ==========
  Comprehensive styles for single pick page matching v2 design system
*/
.ts-v2.ts-single-pick {
  --single-pick-gap: var(--ts-space-10);
  --single-pick-padding: var(--ts-space-12);
}

/* Main layout container */
.ts-v2.ts-single-pick .row {
  margin-left: 0;
  margin-right: 0;
}

/* Redesigned header layout */
.ts-v2.ts-single-pick .pick-header-redesigned {
  padding-bottom: var(--ts-space-8);
  border-bottom: 1px solid var(--ts-border);
  margin-bottom: var(--ts-space-10);
}

.ts-v2.ts-single-pick .header-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.ts-v2.ts-single-pick .tipster-info {
  display: flex;
  align-items: center;
  gap: var(--ts-space-6);
  margin-bottom: 0 !important;
}

.ts-v2.ts-single-pick .tipster-avatar {
  width: var(--ts-avatar-size-lg);
  height: var(--ts-avatar-size-lg);
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid var(--ts-border);
  padding: 0 !important;
}

.ts-v2.ts-single-pick .tipster-details {
  display: flex;
  flex-direction: column;
  gap: var(--ts-space-1);
}

.ts-v2.ts-single-pick .tipster-name a {
  font-weight: var(--ts-font-semibold);
  color: var(--ts-link);
  text-decoration: underline;
}

.ts-v2.ts-single-pick .tipster-name a:hover {
  color: var(--ts-link-hover);
}

.ts-v2.ts-single-pick .timestamp-desktop {
  font-size: var(--ts-text-base);
  color: var(--ts-text-muted);
  font-weight: var(--ts-font-medium);
}

.ts-v2.ts-single-pick .timestamp-mobile {
  display: none;
  font-size: var(--ts-text-sm);
  color: var(--ts-muted);
  font-weight: var(--ts-font-normal);
}

/* Title section */
.ts-v2.ts-single-pick .pick-title {
  text-align: center;
  margin-bottom: var(--ts-space-12);
}

.ts-v2.ts-single-pick .single-pick-modern__title {
  display: flex;
  justify-content: center;
  gap: var(--ts-space-4);
  margin: 0;
  font-size: var(--ts-text-5xl);
  font-weight: var(--ts-font-bold);
  color: var(--ts-text);
  line-height: var(--ts-leading-snug);
  padding-top: 0;
}

.ts-v2.ts-single-pick .pick-details {
  display: flex;
  flex-direction: column;
  gap: var(--ts-space-8);
  margin-bottom: var(--ts-space-10);
}

.ts-v2.ts-single-pick .detail-section {
  display: flex;
  flex-direction: column;
  gap: var(--ts-space-3);
}

.ts-v2.ts-single-pick .detail-section strong {
  color: var(--ts-text-muted);
  font-size: var(--ts-text-base);
  text-transform: uppercase;
  letter-spacing: 0.025em;
  font-weight: var(--ts-font-semibold);
  border-bottom: 1px solid var(--ts-border);
  padding-bottom: var(--ts-space-1);
  margin-bottom: var(--ts-space-2);
}

.ts-v2.ts-single-pick .detail-content {
  font-weight: var(--ts-font-normal);
  color: var(--ts-text);
  font-size: var(--ts-text-lg);
  line-height: var(--ts-leading-normal);
}

/* Bookie links using v2 styling */
.ts-v2.ts-single-pick .detail-content a {
  display: inline-flex;
  align-items: center;
  padding: var(--ts-space-2) var(--ts-space-6);
  border-radius: var(--ts-radius-pill);
  background: var(--ts-gray-150);
  border: 1px solid var(--ts-border-soft);
  color: var(--ts-link);
  font-weight: var(--ts-font-semibold);
  font-size: var(--ts-text-base);
  text-decoration: none;
  transition: color 0.2s ease;
}

.ts-v2.ts-single-pick .detail-content a:hover {
  text-decoration: underline;
  text-decoration-thickness: 2px;
}

.ts-v2.ts-single-pick .detail-content a.bookie-image {
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
  font-weight: var(--ts-font-normal);
}

/* Bookie images consistent sizing - smaller with rounded corners */
.ts-v2.ts-single-pick .detail-content a img,
.ts-v2.ts-single-pick a img {
  max-height: 32px;
  width: auto;
  display: block;
  border-radius: var(--ts-radius-xxs);
}

/* League section with icons */
.ts-v2.ts-single-pick .ts_img_icon {
  display: flex;
  align-items: center;
  gap: var(--ts-space-4);
}

.ts-v2.ts-single-pick .ts_img_icon :is(img, svg) {
  height: var(--ts-space-12);
  width: auto;
  max-width: none;
  border-radius: var(--ts-radius-xxs);
}

/* Timestamp styling */
.ts-v2.ts-single-pick .timestamp {
  display: inline-flex;
  align-items: center;
  gap: var(--ts-space-3);
  padding: var(--ts-space-3) var(--ts-space-5);
  background: var(--ts-gradient-table-hover);
  border: 1px solid var(--ts-border-muted);
  color: var(--ts-ink-550);
  border-radius: var(--ts-radius-pill);
  font-size: var(--ts-text-base);
  font-weight: var(--ts-font-medium);
  box-shadow: var(--ts-shadow-positive-soft);
}

/* Time icon styling */
.ts-v2.ts-single-pick .time-icon {
  color: var(--ts-ink-600);
  font-size: 0.9em;
  opacity: 0.85;
}

/* Tipster link styling */
.ts-v2.ts-single-pick .tipster a {
  display: inline-flex;
  align-items: center;
  gap: var(--ts-space-2);
  padding: var(--ts-space-3) var(--ts-space-6);
  border-radius: var(--ts-radius-pill);
  background: color-mix(in srgb, var(--ts-blue-600) 8%, transparent);
  color: var(--ts-blue-800);
  font-weight: var(--ts-font-semibold);
  text-decoration: none;
  transition: all 0.15s ease;
}

.ts-v2.ts-single-pick .tipster a:hover { 
  background: color-mix(in srgb, var(--ts-blue-600) 15%, transparent);
  transform: translateY(-1px);
  text-decoration: none;
}

/* Divider */
.ts-v2.ts-single-pick .ts-divider { 
  margin: var(--ts-space-10) 0; 
  border-top: 1px solid var(--ts-border); 
}

/* Content sections */
.ts-v2.ts-single-pick .single-pick-modern__text { 
  margin-top: var(--ts-space-6);
  padding: var(--ts-space-8);
  background: var(--ts-surface-haze);
  border-radius: var(--ts-radius);
  border-left: 3px solid var(--ts-primary);
}

.ts-v2.ts-single-pick .single-pick-modern__text p {
  margin: 0;
  font-size: var(--ts-text-xl);
  line-height: var(--ts-leading-loose);
  color: var(--ts-text);
}

.ts-v2.ts-single-pick .ts-info-message { 
  margin-top: var(--ts-space-10);
}

.ts-v2.ts-single-pick .ts-info-message h3 { 
  font-size: var(--ts-text-xl); 
  margin-bottom: var(--ts-space-4);
  color: var(--ts-sky-700);
}

/* Sidebar styling */
.ts-v2.ts-single-pick aside.ts-card { 
  display: flex; 
  flex-direction: column; 
  gap: var(--ts-space-10);
  padding: var(--single-pick-padding);
}

.ts-v2.ts-single-pick .ts-userbar { 
  display: flex; 
  align-items: center; 
  gap: var(--ts-space-8);
  padding-bottom: var(--ts-space-8);
  border-bottom: 1px solid var(--ts-border);
}

.ts-v2.ts-single-pick .ts-userbar .tipsters-img { 
  width: var(--ts-avatar-size-lg); 
  height: var(--ts-avatar-size-lg); 
  border-radius: 50%; 
  object-fit: cover;
  border: 2px solid var(--ts-border);
}

.ts-v2.ts-single-pick .ts-userbar .ts-username { 
  font-size: var(--ts-text-2xl-plus); 
  line-height: var(--ts-leading-tight); 
  font-weight: var(--ts-font-semibold);
  color: var(--ts-text);
  margin-bottom: var(--ts-space-4);
}

.ts-v2.ts-single-pick .ts-userbar .ts-username a {
  color: var(--ts-link);
  text-decoration: underline;
}

.ts-v2.ts-single-pick .ts-userbar .ts-username a:hover {
  color: var(--ts-link-hover);
}

.ts-v2.ts-single-pick .ts-userbar .btn {
  padding: var(--ts-space-4) var(--ts-space-8);
  font-size: var(--ts-text-md);
  border-radius: var(--ts-radius-sm);
  font-weight: var(--ts-font-semibold);
}

/* Stats grid - horizontal layout */
.ts-v2.ts-single-pick .tipster-stats {
  display: flex;
  flex-direction: column;
  gap: var(--ts-space-4);
}

.ts-v2.ts-single-pick .ts-stat-row, .ts-v2.ts-single-pick .tss-stat-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: var(--ts-space-4) 0;
  border-bottom: 1px solid var(--ts-border);
}

.ts-v2.ts-single-pick .ts-stat-row:last-child {
  border-bottom: none;
}

.ts-v2.ts-single-pick .ts-stat-label {
  font-size: var(--ts-text-md);
  color: var(--ts-text-muted);
  font-weight: var(--ts-font-medium);
}

.ts-v2.ts-single-pick .ts-stat-value {
  font-size: var(--ts-text-xl);
  font-weight: var(--ts-font-semibold);
  color: var(--ts-text);
}

/* Profit/yield color coding */
.ts-v2.ts-single-pick .ts-stat-value.ts-won {
  color: var(--ts-success);
}

.ts-v2.ts-single-pick .ts-stat-value.ts-lost {
  color: var(--ts-red-600);
}

/* Result section styling */
.ts-v2.ts-single-pick .result-section {
  background: var(--ts-sky-50);
  border: 1px solid var(--ts-sky-500);
  border-radius: var(--ts-radius-small);
  padding: var(--ts-space-6);
  margin-top: var(--ts-space-4);
}

.ts-v2.ts-single-pick .result-section strong {
  color: var(--ts-sky-700);
  border-bottom-color: var(--ts-sky-500);
}



/* Responsive adjustments */
@media (max-width: 991.98px) {
  .ts-v2.ts-single-pick {
    --single-pick-padding: var(--ts-space-10);
  }
  
  .ts-v2.ts-single-pick .ts-userbar .tipsters-img {
    width: calc(var(--ts-avatar-size-lg) - var(--ts-space-4));
    height: calc(var(--ts-avatar-size-lg) - var(--ts-space-4));
  }
  
  .ts-v2.ts-single-pick .ts-userbar .ts-username {
    font-size: var(--ts-text-2xl);
  }
  
  /* Live indicator mobile layout - same as 1-column picks */
  .ts-v2.ts-single-pick .single-pick-modern__title {
    flex-direction: column; /* stack dot above title */
    gap: var(--ts-space-3);
  }
  
  .ts-v2.ts-single-pick .live-indicator {
    width: var(--ts-space-9);
    height: var(--ts-space-9);
    margin-bottom: var(--ts-space-2); /* place dot above title */
  }
}

/* Tablet and smaller desktop responsive hiding */
@media (max-width: 1024px) {
  /* First, hide all numbered pages by default */
  .ts-v2 .ts-pagination__item {
    display: flex;
  }
  
  /* Then show only essential ones with a more targeted approach */
  .ts-v2 .ts-pagination__list {
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  
  .ts-v2 .ts-pagination__list::-webkit-scrollbar {
    display: none;
  }
}

/* Very small mobile screens */
@media (max-width: 480px) {
  .ts-v2 .ts-pagination-wrapper {
    padding: 0 var(--ts-space-2);
  }
  
  .ts-v2 .ts-pagination__list {
    max-width: calc(100vw - var(--ts-space-8));
  }
  
  .ts-v2 .ts-pagination__item a,
  .ts-v2 .ts-pagination__item span {
    min-width: var(--ts-control-width-xs);
    height: var(--ts-control-width-xs);
    padding: 0 var(--ts-space-2);
    font-size: var(--ts-text-xs);
  }
  
  .ts-v2 .ts-pagination__item--prev a,
  .ts-v2 .ts-pagination__item--next a {
    min-width: var(--ts-control-width-xs);
    font-size: var(--ts-text-base);
  }
}

/* Icon definitions - simpler and more intuitive */
.ts-v2 .ts-badge--pending.ts-badge--icon::before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12' r='10' stroke='currentColor' stroke-width='2'/%3E%3Cpolyline points='12,6 12,12 16,14' stroke='currentColor' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
}

.ts-v2 .ts-badge--won.ts-badge--icon::before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='m9 12 2 2 4-4' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='12' cy='12' r='10' stroke='currentColor' stroke-width='2'/%3E%3C/svg%3E");
}

.ts-v2 .ts-badge--lost.ts-badge--icon::before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12' r='10' stroke='currentColor' stroke-width='2'/%3E%3Cpath d='m15 9-6 6' stroke='currentColor' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='m9 9 6 6' stroke='currentColor' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
}

.ts-v2 .ts-badge--half-won.ts-badge--icon::before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12' r='10' stroke='currentColor' stroke-width='2'/%3E%3Cpath d='M12 6v12' stroke='currentColor' stroke-width='2'/%3E%3Cpath d='M12 2a10 10 0 0 1 0 20' fill='currentColor' fill-opacity='0.3'/%3E%3C/svg%3E");
}

/* Handle potential variations in half-won status naming */
.ts-v2 .ts-badge--half.ts-badge--icon::before,
.ts-v2 .ts-badge--halfwon.ts-badge--icon::before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12' r='10' stroke='currentColor' stroke-width='2'/%3E%3Cpath d='M12 6v12' stroke='currentColor' stroke-width='2'/%3E%3Cpath d='M12 2a10 10 0 0 1 0 20' fill='currentColor' fill-opacity='0.3'/%3E%3C/svg%3E");
}

.ts-v2 .ts-badge--half-lost.ts-badge--icon::before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12' r='10' stroke='currentColor' stroke-width='2'/%3E%3Cpath d='M12 6v12' stroke='currentColor' stroke-width='2'/%3E%3Cpath d='M12 2a10 10 0 0 0 0 20' fill='currentColor' fill-opacity='0.3'/%3E%3C/svg%3E");
}

/* Handle potential variations in half-lost status naming */
.ts-v2 .ts-badge--halflost.ts-badge--icon::before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12' r='10' stroke='currentColor' stroke-width='2'/%3E%3Cpath d='M12 6v12' stroke='currentColor' stroke-width='2'/%3E%3Cpath d='M12 2a10 10 0 0 0 0 20' fill='currentColor' fill-opacity='0.3'/%3E%3C/svg%3E");
}

.ts-v2 .ts-badge--void.ts-badge--icon::before,
.ts-v2 .ts-badge--cancel.ts-badge--icon::before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12' r='10' stroke='currentColor' stroke-width='2'/%3E%3Cpath d='m4.9 4.9 14.2 14.2' stroke='currentColor' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
}

.ts-v2.ts-results .ts-col--datetime{
  white-space: nowrap; 
  font-variant-numeric: tabular-nums;  /* cleaner alignment */
  width: 1%;                            /* shrinks to content */
}

/* ===================== PICKS TABLE ===================== */
.ts-v2.ts-picks .tipster-script-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.95rem;
  border-radius: var(--ts-radius);
  overflow: hidden;
  box-shadow: var(--ts-shadow);
}

/* Table header */
.ts-v2.ts-picks thead {
  background: var(--ts-surface-2);
}
.ts-v2.ts-picks thead th {
  font-weight: 600;
  padding: 12px;
  text-align: left;
  color: var(--ts-text);
}

/* Table body */
.ts-v2.ts-picks tbody tr {
  border-bottom: 1px solid var(--ts-border);
}
.ts-v2.ts-picks tbody tr:nth-child(even) {
  background: var(--ts-surface-aurora);
}
.ts-v2.ts-picks tbody td {
  padding: var(--ts-space-6);
  vertical-align: middle;
  color: var(--ts-text);
}

/* Links */
.ts-v2.ts-picks tbody td a {
  color: var(--ts-link);
  text-decoration: none;
  font-weight: 500;
}
.ts-v2.ts-picks tbody td a:hover {
  text-decoration: underline;
}

/* (Removed picks-specific mobile block; unified mobile rules live under .ts-v2 .ts-v2-table) */
/* Combo picks card */
.ts-combo-card {
  padding: var(--ts-space-7) var(--ts-space-8);
  margin-bottom: var(--ts-space-8);
  border-radius: var(--ts-radius-md);
  background: var(--ts-surface-veil);
  box-shadow: var(--ts-shadow-card);
}

/* Minimal combo card styling for repeater items in forms */
.ts-v2.ts-profile .ts_repeater .ts-combo-card {
  padding: var(--ts-space-8);
  margin-bottom: var(--ts-space-6);
  border-radius: var(--ts-radius-sm);
  background: transparent;
  box-shadow: none;
  border: 1px solid var(--ts-border);
}

/* Each pick line */
.ts-combo-card .ts-combo-pick {
  padding: var(--ts-space-4) 0;
  border-bottom: 1px solid var(--ts-border);
  font-size: 0.95rem;
  font-weight: 500;
  color: var(--ts-text);
  padding: var(--ts-space-1) var(--ts-space-4);
  border-left: var(--ts-space-1) solid var(--ts-primary);
  border-radius: var(--ts-radius-xxs)4px;
}

.ts-combo-card .ts-combo-pick:last-child {
  border-bottom: none;
}
/* TinyMCE – v2 look */
.ts-v2.ts-profile .ts-form .tox-tinymce{
  border:1px solid var(--ts-border);
  border-radius:var(--ts-radius-md);
  box-shadow:var(--ts-shadow-card-mobile);
  overflow:hidden;                    /* rounds the toolbar too */
}
.ts-v2.ts-profile .ts-form .tox .tox-editor-header{
  background:var(--ts-surface-haze);
  border-bottom:1px solid var(--ts-border-contrast);
}
.ts-v2.ts-profile .ts-form .tox .tox-toolbar__primary{
  background:transparent;
}
.ts-v2.ts-profile .ts-form .tox-tinymce:focus-within{
  border-color:var(--ts-blue-600);
  box-shadow:var(--ts-ring-primary-soft);
}
.ts-v2.ts-profile .ts-form .tox .tox-edit-area__iframe{
  background:var(--ts-white);
}
.ts-v2.ts-profile .ts-form input[type="checkbox"]{
  width:var(--ts-space-10); height:var(--ts-space-10);
  accent-color:var(--ts-primary); 
  border-radius:var(--ts-radius-xs);
  vertical-align:middle;
  margin:0 var(--ts-space-4) 0 0;
}
/* Repeater actions container */
.ts-v2.ts-profile .ts-actions-match{
  display:flex; gap:var(--ts-space-6); align-items:center;
  margin-top:calc(var(--ts-space-10) * -1);
}

/* Base button */
.ts-v2.ts-profile .ts-actions-match .ts-btn{
  width:var(--ts-control-height-lg); 
  height:var(--ts-control-height-lg);
  display:inline-flex; align-items:center; justify-content:center;
  border:1px solid var(--ts-border);
  border-radius:var(--ts-radius-lg);
  background:var(--ts-white);
  box-shadow:var(--ts-shadow-card);
  cursor:pointer; user-select:none;
  transition:transform .08s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}

/* Icon rendering with CSS (so your inner text can stay empty) */
.ts-v2.ts-profile .ts-actions-match .ts-repeater-icon::before{
  content:"";
  width:20px; height:20px;
  display:block;
  mask-repeat:no-repeat; mask-position:center; mask-size:20px 20px;
  background:var(--ts-blue-600);
}

/* plus */
.ts-v2.ts-profile .ts-actions-match .ts_repeater_add::before{
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='12' y1='5' x2='12' y2='19'/%3E%3Cline x1='5' y1='12' x2='19' y2='12'/%3E%3C/svg%3E");
}

/* minus (red) */
.ts-v2.ts-profile .ts-actions-match .ts_repeater_remove::before{
  background:var(--ts-red-500);
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'/%3E%3C/svg%3E");
}

/* Hover/active states */
.ts-v2.ts-profile .ts-actions-match .ts-btn:hover{
  border-color:var(--ts-border-subtle);
  box-shadow:var(--ts-shadow-card-hover);
}
.ts-v2.ts-profile .ts-actions-match .ts-btn:active{
  transform:translateY(1px);
}

/* Keyboard focus */
.ts-v2.ts-profile .ts-actions-match .ts-btn:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px color-mix(in srgb, var(--ts-blue-600) 25%, transparent);
}

/* Compact on small screens */
@media (max-width: 480px){
  .ts-v2.ts-profile .ts-actions-match .ts-btn{ width:40px; height:40px; border-radius:12px; }
  .ts-v2.ts-profile .ts-actions-match .ts-repeater-icon::before{ width:18px; height:18px; mask-size:18px 18px; }
}
/* ===== Frontend login (wp_login_form) – v2 skin ===== */
.ts-v2.ts-auth{ --auth-gap:16px; }

.ts-v2.ts-auth .ts-auth__card{
  padding: var(--ts-space-10);
  border: 1px solid var(--ts-border);
  border-radius: var(--ts-radius-xl);
  background: var(--ts-surface);
  box-shadow: var(--ts-shadow-elevated);
  max-width: 520px;
}

.ts-v2.ts-auth .ts-auth__title{
  margin: 0 0 var(--ts-space-7);
  font-size: var(--ts-text-6xl);
  color: var(--ts-ink-900);
}

/* The wp_login_form markup */
.ts-v2.ts-auth #ts-loginform{
  display: grid;
  gap: var(--ts-space-7);
}

/* make <p> blocks behave like rows */
.ts-v2.ts-auth #ts-loginform p{
  margin: 0;
}

/* labels */
.ts-v2.ts-auth #ts-loginform label{
  display: block;
  margin-bottom: var(--ts-space-3);
  font-weight: var(--ts-font-semibold);
  color: var(--ts-gray-900);
}

/* text/password inputs – same look as other v2 inputs */
.ts-v2.ts-auth #ts-loginform input[type="text"],
.ts-v2.ts-auth #ts-loginform input[type="password"]{
  display: block;
  width: 100%;
  height: var(--ts-control-height-lg);
  padding: 0 var(--ts-space-6);
  border: 1px solid var(--ts-border);
  border-radius: var(--ts-radius-md);
  background: var(--ts-white);
  color: var(--ts-ink-900);
  box-shadow: var(--ts-shadow-card);
  box-sizing: border-box;
  transition: border-color .15s ease, box-shadow .15s ease;
}

.ts-v2.ts-auth #ts-loginform input[type="text"]:focus,
.ts-v2.ts-auth #ts-loginform input[type="password"]:focus{
  outline: none;
  border-color: var(--ts-blue-600);
  box-shadow: var(--ts-ring-primary-strong);
}

/* remember me row */
.ts-v2.ts-auth #ts-loginform .forgetmenot{
  display: flex; align-items: center; gap: var(--ts-space-5);
}
.ts-v2.ts-auth #ts-loginform input[type="checkbox"]{
  width: var(--ts-space-9); height: var(--ts-space-9);
  accent-color: var(--ts-blue-600);
  border-radius: var(--ts-radius-xxs);
}

/* submit button – reuse your primary style */
.ts-v2.ts-auth #ts-loginform .submit input[type="submit"]{
  display: inline-flex; align-items: center; justify-content: center;
  min-height: var(--ts-control-height-lg); padding: 0 var(--ts-space-8);
  border: 0; border-radius: var(--ts-radius-md);
  background: var(--ts-blue-600); color: var(--ts-white); font-weight: var(--ts-font-semibold);
  box-shadow: var(--ts-shadow-btn-primary);
  cursor: pointer;
  transition: transform .08s ease, box-shadow .2s ease, background .2s ease;
}
.ts-v2.ts-auth #ts-loginform .submit input[type="submit"]:hover{ background:var(--ts-blue-700); }
.ts-v2.ts-auth #ts-loginform .submit input[type="submit"]:active{ transform: translateY(1px); }

/* aux links */
.ts-v2.ts-auth .ts-auth__links{
  margin-top: var(--ts-space-5);
}
.ts-v2.ts-auth .ts-auth__links a{
  color: var(--ts-link); text-decoration: underline;
}
.ts-v2.ts-auth .ts-auth__links a:hover{
  text-decoration-thickness: 2px;
}

/* small screens: card padding */
@media (max-width: 480px){
  .ts-v2.ts-auth .ts-auth__card{ padding: var(--ts-space-8); }
}
/* Info message card (inherits v2 tokens) */
.ts-v2 .ts-info-message{
  padding:var(--ts-space-10);
  border:1px solid var(--ts-border);
  border-radius:var(--ts-radius-xl);
  background:var(--ts-surface-veil);
  box-shadow:var(--ts-shadow-card);
  color:var(--ts-gray-700);
  margin-top:var(--ts-space-4);
}
.ts-v2 .ts-info-message h3{
  margin:0 0 var(--ts-space-4);
  font-size:var(--ts-text-4xl);
  font-weight:var(--ts-font-semibold);
  color:var(--ts-gray-800);
}
.ts-v2 .ts-info-message p{ margin:var(--ts-space-3) 0; line-height:var(--ts-leading-relaxed); }
.ts-v2 .ts-info-message a{ color:var(--ts-blue-600); text-decoration:underline; }
.ts-v2 .ts-info-message a:hover{ color:var(--ts-blue-700); }

/* ===== SHARED STYLES FOR ALL PICK LAYOUTS ===== */

/* Shared tipster link styling */
.ts-v2 .ts-3c-picks .tipster a,
.ts-v2 .ts-1c-picks .tipster a {
  display: inline-flex;
  align-items: center;
  gap: var(--ts-space-2);
  padding: var(--ts-space-3) var(--ts-space-6);
  border: 1px solid var(--ts-tipster-pill-border);
  border-radius: var(--ts-radius-pill);
  background: color-mix(in srgb, var(--ts-tipster-pill-bg) 12%, transparent);
  color: var(--ts-tipster-pill-text);
  font-weight: var(--ts-font-semibold);
  text-decoration: none;
  transition: all 0.15s ease;
  max-width: 200px; 
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  position: relative;
}

.ts-v2 .ts-3c-picks .tipster a:hover,
.ts-v2 .ts-1c-picks .tipster a:hover { 
  background: color-mix(in srgb, var(--ts-tipster-pill-bg) 15%, transparent);
  transform: translateY(-1px);
  text-decoration: none;
}

/* Shared tipster tooltip styling */
.ts-v2 .ts-3c-picks .tipster a[data-tooltip]::before,
.ts-v2 .ts-1c-picks .tipster a[data-tooltip]::before {
  content: attr(data-tooltip);
  position: absolute;
  bottom: 125%;
  left: 50%;
  transform: translateX(-50%);
  background: var(--ts-overlay-tooltip);
  color: var(--ts-white);
  padding: var(--ts-space-3) var(--ts-space-6);
  border-radius: var(--ts-radius-xs);
  font-size: var(--ts-text-md);
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
  z-index: 9999;
  font-weight: 500;
}

.ts-v2 .ts-3c-picks .tipster a[data-tooltip]:hover::before,
.ts-v2 .ts-1c-picks .tipster a[data-tooltip]:hover::before {
  opacity: 1;
}

/* Shared timestamp styling - latest variant */
.ts-v2 .ts-3c-picks .timestamp.latest,
.ts-v2 .ts-1c-picks .timestamp.latest {
  background: linear-gradient(135deg, var(--ts-surface-haze) 0%, var(--ts-surface-mist) 100%);
  border: 1px solid var(--ts-border-muted);
  color: var(--ts-text);
  box-shadow: 0 2px 4px color-mix(in srgb, var(--ts-text) 10%, transparent);
}

/* Shared timestamp tooltip styling */
.ts-v2 .ts-3c-picks .timestamp[data-tooltip]::after,
.ts-v2 .ts-1c-picks .timestamp[data-tooltip]::after {
  content: attr(data-tooltip);
  position: absolute;
  bottom: 110%;
  left: 50%;
  transform: translateX(-50%);
  background: color-mix(in srgb, var(--ts-black) 90%, transparent);
  color: var(--ts-white);
  padding: var(--ts-space-3) var(--ts-space-5);
  border-radius: var(--ts-radius-xs);
  font-size: var(--ts-text-xs);
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  transition: all 0.2s ease;
  z-index: 9999;
  pointer-events: none;
}

.ts-v2 .ts-3c-picks .timestamp[data-tooltip]:hover::after,
.ts-v2 .ts-1c-picks .timestamp[data-tooltip]:hover::after {
  opacity: 1;
  visibility: visible;
}

/* Shared bookie link styling */
.ts-v2 .ts-3c-picks .pick-details a,
.ts-v2 .ts-1c-picks .pick-details a,
.ts-v2 .ts-1c-picks .detail-item a.detail-value,
.ts-v2.ts-single-pick .detail-content a.detail-value {
  display: inline-flex;
  align-items: center;
  padding: var(--ts-space-2) var(--ts-space-6);
  border-radius: var(--ts-radius-pill);
  background: var(--ts-gray-150);
  border: 1px solid var(--ts-border-soft);
  color: var(--ts-link);
  font-weight: var(--ts-font-semibold);
  font-size: var(--ts-text-base);
  text-decoration: none;
  max-width: fit-content;
  margin-top: var(--ts-space-1);
  transition: color 0.2s ease;
}

.ts-v2 .ts-3c-picks .pick-details a:hover,
.ts-v2 .ts-1c-picks .pick-details a:hover,
.ts-v2 .ts-1c-picks .detail-item a.detail-value:hover,
.ts-v2.ts-single-pick .detail-content a.detail-value:hover {
  text-decoration-thickness: 2px;
  color: var(--ts-link);
}

/* Shared bookie image link styling - remove pill when image present */
.ts-v2 .ts-3c-picks .pick-details a:has(img),
.ts-v2 .ts-1c-picks .pick-details a:has(img),
.ts-v2 .ts-3c-picks .pick-details a.bookie-image,
.ts-v2 .ts-1c-picks .pick-details a.bookie-image,
.ts-v2 .ts-1c-picks .detail-item a.detail-value.bookie-image,
.ts-v2.ts-single-pick .detail-content a.detail-value.bookie-image {
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
  font-weight: normal;
}

/* Shared bookie image sizing */
.ts-v2 .ts-3c-picks .pick-details a img,
.ts-v2 .ts-1c-picks .pick-details a img,
.ts-v2 .ts-1c-picks .detail-item a img {
  max-height: 28px;
  width: auto;
  display: block;
  border-radius: var(--ts-radius-small);
}

/* Shared result display styling */
.ts-v2 .ts-3c-picks .result-summary,
.ts-v2 .ts-1c-picks .result-summary {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

/* Shared result profit styling - consistent font-weight */
.ts-v2 .ts-3c-picks .result-profit,
.ts-v2 .ts-1c-picks .result-profit,
.ts-v2.ts-single-pick .result-profit {
  display: inline-block;
  text-align: center;
  font-weight: 600;
  font-size: 0.9rem;
  padding: 2px 6px;
  border-radius: var(--ts-radius-pill);
  min-width: 45px;
  text-align: center;
}

.ts-v2 .ts-3c-picks .result-profit.profit-positive,
.ts-v2 .ts-1c-picks .result-profit.profit-positive,
.ts-v2.ts-single-pick .result-profit.profit-positive {
  color: var(--ts-emerald-700);
  background: color-mix(in srgb, var(--ts-emerald-500) 10%, transparent);
}

.ts-v2 .ts-3c-picks .result-profit.profit-negative,
.ts-v2 .ts-1c-picks .result-profit.profit-negative,
.ts-v2.ts-single-pick .result-profit.profit-negative {
  color: var(--ts-red-600);
  background: color-mix(in srgb, var(--ts-red-600) 10%, transparent);
}

/* Shared result score styling */
.ts-v2 .ts-3c-picks .result-score,
.ts-v2 .ts-1c-picks .result-score,
.ts-v2.ts-single-pick .result-score {
  display: inline-block;
  font-weight: 500;
  color: var(--ts-gray-500);
  font-size: 0.85rem;
  padding: 2px 6px;
  background: var(--ts-gray-100);
  border-radius: var(--ts-radius-pill);
  border: 1px solid var(--ts-border-soft);
  text-align: center;
  min-width: 45px;
}

/* Shared detail section styling */
.ts-v2 .ts-3c-picks .pick-details .detail-section,
.ts-v2 .ts-1c-picks .pick-details .detail-section {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

/* Shared detail label styling */
.ts-v2 .ts-3c-picks .pick-details strong,
.ts-v2 .ts-1c-picks .pick-details strong {
  color: var(--ts-text-muted);
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  font-weight: 600;
  display: block;
  margin-bottom: 2px;
  border-bottom: 1px solid var(--ts-border);
  padding-bottom: 2px;
}

/* Shared detail content styling */
.ts-v2 .ts-3c-picks .pick-details span,
.ts-v2 .ts-3c-picks .pick-details .detail-content,
.ts-v2 .ts-1c-picks .pick-details span,
.ts-v2 .ts-1c-picks .pick-details .detail-content {
  display: block;
  margin-left: 0;
  font-weight: 400;
  color: var(--ts-text);
}

/* Override detail content font-weight for badges - keep them bold */
.ts-v2 .ts-3c-picks .pick-details .ts-badge,
.ts-v2 .ts-1c-picks .pick-details .ts-badge {
  font-weight: 600; /* Override the 400 from detail content */
}

/* Shared live indicator styling */
.ts-v2 .ts-3c-picks .live-indicator,
.ts-v2 .ts-1c-picks .live-indicator,
.ts-v2.ts-single-pick .live-indicator {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--ts-emerald-500) 0%, var(--ts-emerald-600) 100%);
  position: relative;
  animation: live-pulse 2s infinite;
  cursor: help;
  flex-shrink: 0;
}

.ts-v2 .ts-3c-picks .live-indicator::before,
.ts-v2 .ts-1c-picks .live-indicator::before,
.ts-v2.ts-single-pick .live-indicator::before {
  content: "";
  width: 8px;
  height: 8px;
  background: var(--ts-white);
  border-radius: 50%;
  display: block;
}

/* Shared live indicator tooltip */
.ts-v2 .ts-3c-picks .live-indicator::after,
.ts-v2 .ts-1c-picks .live-indicator::after,
.ts-v2.ts-single-pick .live-indicator::after {
  content: attr(title);
  position: absolute;
  bottom: 125%;
  left: 50%;
  transform: translateX(-50%);
  background: color-mix(in srgb, var(--ts-ink-900) 95%, transparent);
  color: var(--ts-surface-haze);
  padding: var(--ts-space-4) var(--ts-space-6);
  border-radius: var(--ts-radius-sm);
  font-size: 0.875rem;
  font-weight: 500;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
  z-index: 1001;
  box-shadow: var(--ts-shadow-tooltip);
  border: 1px solid color-mix(in srgb, var(--ts-ink-450) 20%, transparent);
}

.ts-v2 .ts-3c-picks .live-indicator:hover::after,
.ts-v2 .ts-1c-picks .live-indicator:hover::after,
.ts-v2.ts-single-pick .live-indicator:hover::after {
  opacity: 1;
}

/* Live score styling for live picks */
.ts-v2 .detail-section.live-score {
  background: linear-gradient(135deg, var(--ts-sky-50) 0%, var(--ts-sky-100) 100%);
  border: 1px solid var(--ts-sky-500);
  border-radius: var(--ts-radius-xs);
  padding: var(--ts-space-4) var(--ts-space-6);
  margin: var(--ts-space-2) 0;
}

.ts-v2 .detail-section.live-score strong {
  color: var(--ts-sky-700);
}

.ts-v2 .live-score-value {
  font-weight: 600;
  color: var(--ts-sky-800);
  font-size: 1.1em;
}

/* Clock icon styling for live picks */
.ts-v2 .time-icon {
  color: var(--ts-ink-600); /* Muted grey color to match text hierarchy */
  font-size: 0.9em;
  margin-right: 4px;
  opacity: 0.85;
}

/* Fix alignment for tipster-timestamp in live picks */
.ts-v2 .ts-3c-picks .pick-header-mobile .tipster-timestamp,
.ts-v2 .ts-1c-picks .pick-header-mobile .tipster-timestamp {
  padding: 8px 10px; /* Reduced padding for better alignment */
  align-items: center; /* Center align items vertically */
}

.ts-v2 .ts-3c-picks .pick-header-mobile .tipster-timestamp .row,
.ts-v2 .ts-1c-picks .pick-header-mobile .tipster-timestamp .row {
  align-items: center; /* Ensure tipster and timestamp are vertically aligned */
}

/* ===================== Active Picks (3 columns) – v2 look ===================== */
.ts-v2 .ts-3c-picks{ --gap:16px; }
.ts-v2 .ts-3c-picks .picks-mobile{ margin-bottom: var(--gap); }

/* Card shell */
.ts-v2 .ts-3c-picks .pick-3-container{
  background: var(--ts-surface);
  border: 1px solid var(--ts-border);
  border-radius: var(--ts-radius-large);
  padding: 8px 0;
  box-shadow: 
    0 6px 20px color-mix(in srgb, var(--ts-black) 6%, transparent),
    inset 0 1px 0 color-mix(in srgb, var(--ts-white) 80%, transparent);
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 12px;
  transition: transform .12s ease, box-shadow .2s ease;
}

/* Live timestamp color override - only colors, inherits pill structure */
.ts-v2 .timestamp.live-timestamp {
  border-color: var(--ts-yellow-400) !important;
  background: linear-gradient(135deg, var(--ts-yellow-100) 0%, var(--ts-yellow-200) 100%) !important;
  color: var(--ts-amber-700) !important;
  box-shadow: 0 2px 4px color-mix(in srgb, var(--ts-yellow-500) 15%, transparent);
}

/* Horizontal live score for 1-column desktop layout */
.ts-v2 .detail-item.live-score-horizontal {
  background: linear-gradient(135deg, var(--ts-sky-50) 0%, var(--ts-sky-100) 100%);
  border: 1px solid var(--ts-sky-500);
  border-radius: 4px;
  padding: 4px 8px;
}

.ts-v2 .detail-item.live-score-horizontal strong {
  color: var(--ts-sky-700);
}

.ts-v2 .detail-item.live-score-horizontal .live-score-value {
  font-weight: 600;
  color: var(--ts-sky-800);
}

/* Desktop live score badge under title */
.ts-v2 .live-score-desktop {
  margin: 16px 0;
  padding: 0 20px;
}

.ts-v2 .live-score-badge {
  display: inline-block;
  background: linear-gradient(135deg, var(--ts-sky-50) 0%, var(--ts-sky-100) 100%);
  border: 1px solid var(--ts-sky-500);
  border-radius: 8px;
  padding: 8px 16px;
  box-shadow: 0 2px 4px color-mix(in srgb, var(--ts-sky-500) 10%, transparent);
}

.ts-v2 .live-score-badge strong {
  color: var(--ts-sky-700);
  margin-right: 8px;
}

/* ===== Shared pick title styles (mobile & desktop) ===== */
.ts-v2 .ts-3c-picks .pick h2,
.ts-v2 .ts-1c-picks .pick h2{
  font-size: 1.05rem;
  line-height: 1.25;
  font-weight: 700;
  margin: 4px 10px;
}

.ts-v2 .ts-3c-picks .pick h2 a,
.ts-v2 .ts-1c-picks .pick h2 a{
  color: var(--ts-text);
  text-decoration: none;
}

.ts-v2 .ts-3c-picks .pick h2 a:hover,
.ts-v2 .ts-1c-picks .pick h2 a:hover{
  text-decoration: underline;
  text-decoration-thickness: 2px;
}

.ts-v2 .live-score-badge .live-score-value {
  font-weight: 600;
  color: var(--ts-sky-800);
  font-size: 1.1em;
}

/* Fix mobile live score padding and borders */
.ts-v2 .ts-1c-picks .pick-details .detail-section.live-score {
  background: linear-gradient(135deg, var(--ts-sky-50) 0%, var(--ts-sky-100) 100%);
  border: 1px solid var(--ts-sky-500) !important;
  border-radius: 6px;
  margin: 0 15px 12px 15px;
  padding: 12px 15px !important;
}

.ts-v2 .ts-1c-picks .pick-details .detail-section.live-score strong {
  color: var(--ts-sky-700);
}

.ts-v2 .ts-1c-picks .pick-details .detail-section.live-score .live-score-value {
  font-weight: 600;
  color: var(--ts-sky-800);
  font-size: 1.1em;
}

.ts-v2 .ts-3c-picks .pick-3-container:hover{
  transform: translateY(-3px) scale(1.01);
  box-shadow: var(--ts-shadow-deep);
}

/* Header: tipster + time */
.ts-v2 .ts-3c-picks .pick-header-mobile{ 
  margin-bottom: 4px; 
  padding: 0 10px 0 10px;
}
.ts-v2 .ts-3c-picks .pick-header-mobile .tipster-timestamp {
  padding: 10px 0;
  position: relative; /* For proper positioning */
}

/* Float tipster to left */
.ts-v2 .ts-3c-picks .pick-header-mobile .tipster {
  float: left;
}

/* Float timestamp to right */
.ts-v2 .ts-3c-picks .pick-header-mobile .timestamp {
  float: right;
}

/* Clear floats */
.ts-v2 .ts-3c-picks .pick-header-mobile .tipster-timestamp::after {
  content: "";
  display: table;
  clear: both;
}

.ts-v2 .ts-3c-picks .timestamp{
  display: inline-flex; align-items: center; gap: 6px;
  padding: 6px 10px;
  border: 1px solid var(--ts-positive-border); 
  background: var(--ts-countdown-bg);
  border-radius: var(--ts-radius-pill);
  font-size: 0.85rem; 
  color: var(--ts-countdown-ink);
  font-weight: 500;
  box-shadow: var(--ts-shadow-inset-soft);
  flex-shrink: 0;
  white-space: nowrap;
  position: relative;
  cursor: help;
}
.ts-v2 .ts-3c-picks .timestamp .fa{ opacity:.8; }

/* Different timestamp variants */
.ts-v2 .ts-3c-picks .timestamp.live{
  background: var(--ts-gradient-timestamp-live);
  border: 1px solid var(--ts-yellow-400);
  color: var(--ts-amber-700);
  box-shadow: 0 2px 4px color-mix(in srgb, var(--ts-yellow-400) 10%, transparent);
}

/* Pulse animation for live events */
.ts-v2 .ts-3c-picks .timestamp.live{
  animation: pulse 2s infinite;
}
@keyframes pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.8; }
}

/* Title - Fixed height for consistent layout */
.ts-v2 .ts-3c-picks h2{
  margin: 6px 0;
  font-size: 1.15rem; 
  line-height: 1.3; 
  font-weight: 700;
  padding: 0 20px;
  color: var(--ts-ink-800);
  letter-spacing: -0.01em;
  text-align: left;
  min-height: 75px; /* Fixed height to accommodate up to 3 lines */
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px; /* Space between live indicator and title */
}

/* Pulse animation for live indicator */
@keyframes live-pulse {
  0%, 100% { 
    box-shadow: 0 0 0 0 color-mix(in srgb, var(--ts-emerald-500) 70%, transparent);
  }
  50% { 
    box-shadow: 0 0 0 6px color-mix(in srgb, var(--ts-emerald-500) 0%, transparent);
  }
}

/* Alternative: Live indicator as broadcast icon */
.ts-v2 .ts-3c-picks .live-indicator.broadcast-icon::before {
  content: "";
  width: 12px;
  height: 12px;
  background: var(--ts-white);
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM8 12l4-3v6l-4-3z' fill='white'/%3E%3C/svg%3E");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: 12px 12px;
  border-radius: 0;
}
.ts-v2 .ts-3c-picks h2 a{
  color: var(--ts-ink-800); text-decoration: none;
}
.ts-v2 .ts-3c-picks h2 a:hover{ color:var(--ts-ink-800); text-decoration: underline;}

/* Details - Clean block layout */
.ts-v2 .ts-3c-picks .pick-details{ 
  margin-top: 6px; 
  font-size: 0.9rem; 
  color: var(--ts-gray-700); 
  padding: 20px 20px 0 20px;
  display: flex;
  flex-direction: column;
  gap: 12px; /* Clean spacing between sections */
}

/* Ensure images in bookie links are properly sized */
.ts-v2 .ts-3c-picks .pick-details a img {
  max-height: 28px;
  width: auto;
  display: block;
  border-radius: var(--ts-radius-small);
}

/* League section with icons */
.ts-v2 .ts-3c-picks .ts_img_icon{
  display: flex; 
  align-items: center; 
  gap: 8px;
  margin-top: 4px;
}

/* Preview content styling for 2-column layout */
.ts-v2 .ts-3c-picks .preview-content {
  font-size: 0.9rem;
  line-height: 1.5;
  color: var(--ts-ink-600);
  max-height: var(--ts-preview-max-height);
  overflow: hidden;
  position: relative;
}

.ts-v2 .ts-3c-picks .preview-content::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 20px;
  background: linear-gradient(transparent, var(--ts-surface-mist));
  pointer-events: none;
}

/* Sport/country icons row */
.ts-v2 .ts-3c-picks .ts_img_icon{
  display: inline-flex; align-items: center; gap: 4px; float: right;
}

.ts-v2 .ts-3c-picks .ts_img_icon img,
.ts-v2 .ts-3c-picks .ts_img_icon svg {
  height: var(--ts-space-12);
  width: auto;
  max-width: none;
  border-radius: var(--ts-radius-tiny);
}

/* Loading states & Micro-interactions */
.ts-v2 .ts-3c-picks .pick-3-container.loading{
  background: linear-gradient(90deg, var(--ts-skeleton-base) 25%, var(--ts-skeleton-highlight) 50%, var(--ts-skeleton-base) 75%);
  background-size: 200% 100%;
  animation: shimmer 1.5s infinite;
}

@keyframes shimmer {
  0% { background-position: -200% 0; }
  100% { background-position: 200% 0; }
}

/* Stagger animations for multiple cards */
.ts-v2 .ts-3c-picks .pick-3-container:nth-child(1) { animation-delay: 0.05s; }
.ts-v2 .ts-3c-picks .pick-3-container:nth-child(2) { animation-delay: 0.1s; }
.ts-v2 .ts-3c-picks .pick-3-container:nth-child(3) { animation-delay: 0.15s; }

/* Read more CTA */
.ts-v2 .ts-3c-picks .read-more, .ts-v2 .ts-1c-picks .read-more{ 
  margin-top: auto; 
  text-align: center; 
  padding: 16px 20px 20px;
  border-top: 1px solid color-mix(in srgb, var(--ts-border) 60%, transparent);
  background: linear-gradient(180deg, transparent 0%, color-mix(in srgb, var(--ts-surface-haze) 50%, transparent) 100%);
}
.ts-v2 .ts-3c-picks .read-more .btn, .ts-v2 .ts-1c-picks .read-more .btn{
  width: 100%;
  background: linear-gradient(135deg, var(--ts-primary-light) 0%, var(--ts-primary) 100%);
  border: 1px solid var(--ts-primary);
  border-radius: var(--ts-radius); 
  padding: 10px 20px; 
  font-weight: 600;
  color: var(--ts-surface);
  box-shadow: 
    0 4px 12px color-mix(in srgb, var(--ts-primary) 25%, transparent),
    0 1px 0 color-mix(in srgb, var(--ts-surface) 10%, transparent) inset;
  transition: all 0.2s ease;
}

.ts-v2 .ts-3c-picks .read-more .btn:hover, .ts-v2 .ts-1c-picks .read-more .btn{
  transform: translateY(-1px);
  box-shadow: 
    0 6px 16px color-mix(in srgb, var(--ts-primary) 35%, transparent),
    0 1px 0 color-mix(in srgb, var(--ts-surface) 10%, transparent) inset;
}

/* Responsive niceties */
@media (max-width: 991.98px){
  .ts-v2 .ts-3c-picks h2{ 
    font-size: 1.22rem;
    min-height: 80px; /* Slightly taller for larger font */
  }
  
  /* Slightly larger live indicator on tablets */
  .ts-v2 .ts-3c-picks .live-indicator {
    width: 22px;
    height: 22px;
  }
  
  /* Increase tipster name width on tablets */
  .ts-v2 .ts-3c-picks .tipster a{
    max-width: 180px;
  }
  
  /* Adjust detail section spacing for tablets */
  .ts-v2 .ts-3c-picks .pick-details {
    gap: var(--ts-space-5);
    padding: var(--ts-space-8) var(--ts-space-8) 0 var(--ts-space-8);
  }
}
@media (max-width: 575.98px){
  .ts-v2 .ts-3c-picks .timestamp{
    padding: var(--ts-space-3) var(--ts-space-5); 
    font-size: 0.85rem;
  }
  
  .ts-v2 .ts-3c-picks .pick-3-container{
    padding: var(--ts-space-8) 0;
  }
  
  .ts-v2 .ts-3c-picks .tipster a{
    max-width: 120px; /* Smaller on mobile */
  }
  
  /* Center title on small screens */
  .ts-v2 .ts-3c-picks h2{
    font-size: 1.25rem;
    text-align: center;
  padding: 0 var(--ts-space-8);
    min-height: 90px; /* More height for mobile due to narrower width */
    flex-direction: column;
    gap: var(--ts-space-3);
  }
  
  /* Mobile live indicator positioning */
  .ts-v2 .ts-3c-picks .live-indicator {
    width: 18px;
    height: 18px;
    margin-bottom: var(--ts-space-2);
  }

  /* ——— Make 1-column behave like 2/3-column on mobile ——— */
  .ts-v2 .ts-1c-picks h2{
    text-align: center;
  padding: 0 var(--ts-space-8);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column; /* stack dot above title */
  gap: var(--ts-space-3);
  }
  .ts-v2 .ts-1c-picks .live-indicator{
    width: 18px;
    height: 18px;
    margin-bottom: var(--ts-space-2); /* place dot above title */
  }
  
  /* Tighter spacing on mobile */
  .ts-v2 .ts-3c-picks .pick-details {
    gap: var(--ts-space-4);
    padding: var(--ts-space-6) var(--ts-space-6) 0 var(--ts-space-6);
    font-size: 0.85rem;
  }
  
  .ts-v2 .ts-3c-picks .pick-details strong{
    font-size: 0.8rem;
  }
  
  .ts-v2 .ts-3c-picks .pick-details .detail-section {
    gap: var(--ts-space-1-5);
  }
  
  /* Make bookie links more touch-friendly */
  .ts-v2 .ts-3c-picks .pick-details a{
  min-height: var(--ts-space-18);
  padding: var(--ts-space-3) var(--ts-space-6);
  }
  
  /* League section layout on mobile */
  .ts-v2 .ts-3c-picks .ts_img_icon{
    flex-wrap: wrap;
  gap: var(--ts-space-2);
  }
}

/* Accessibility Enhancements */
.ts-v2 .ts-3c-picks .pick-3-container:focus-within{
  outline: 2px solid var(--ts-primary-light);
  outline-offset: 2px;
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
  .ts-v2 .ts-3c-picks .pick-3-container{
    transition: none;
  }
  .ts-v2 .ts-3c-picks .pick-3-container:hover{
    transform: none;
  }
  .ts-v2 .ts-3c-picks .timestamp.live{
    animation: none;
  }
}

/* ===== 1-COLUMN PICKS STYLES ===== */
.ts-v2 .ts-1c-picks{ 
  --gap:20px; 
  --pill-radius: var(--ts-radius-pill);
}

.ts-v2 .ts-1c-picks .pick-container{ 
  margin-bottom: var(--gap);
}

.ts-v2 .ts-1c-picks .pick-container{
  background: var(--ts-surface);
  border-radius: var(--ts-radius);
  box-shadow: var(--ts-shadow);
  padding: var(--ts-pad);
  transition: all 0.3s ease;
  border: 1px solid transparent;
  position: relative;
  overflow: visible;
}

.ts-v2 .ts-1c-picks .pick-container:hover{
  transform: translateY(-2px);
  box-shadow: var(--ts-shadow-deep);
  border-color: var(--ts-border-positive-glow);
}

/* Desktop header layout - horizontal */
.ts-v2 .ts-1c-picks .pick-header-desktop{ 
  padding-bottom: 16px;
  border-bottom: 1px solid var(--ts-border-white-soft);
  margin-bottom: 16px;
}

.ts-v2 .ts-1c-picks .pick-header-desktop .tipster,
.ts-v2 .ts-1c-picks .pick-header-desktop .timestamp {
  align-items: center;
  height: 36px;
}

.ts-v2 .ts-1c-picks .pick-header-desktop h2 {
  font-size: 1.2rem;
  font-weight: 600;
  color: var(--ts-text);
  justify-content: center;
  display: flex;
  gap: 8px;
}

.ts-v2 .ts-1c-picks .pick-header-desktop h2 a{
  color: inherit;
  text-decoration: none;
  transition: color 0.2s ease;
}

.ts-v2 .ts-1c-picks .pick-header-desktop h2 a:hover{
  text-decoration: underline;
}

.ts-v2 .ts-1c-picks .pick-header-mobile .tipster-timestamp {
  margin-bottom: 8px; /* tighter, like 2/3 columns */
  padding: 8px 10px; /* align with shared mobile padding */
}

.pick-container .tipster-timestamp .tipster, .pick-container .tipster-timestamp .timestamp {
  padding: 0;
  border: none;
}

/* Mobile pick details spacing and borders */
.ts-v2 .ts-1c-picks .pick-details {
  padding: 0 15px; /* Add horizontal padding for mobile */
}

.ts-v2 .ts-1c-picks .pick-details .detail-section {
  padding: 12px 0;
  border-bottom: 1px solid var(--ts-border);
}

.ts-v2 .ts-1c-picks .pick-details .detail-section:last-child {
  border-bottom: none;
}

.ts-v2 .ts-1c-picks .pick-title-mobile h2{
  font-size: 1.1rem;
  font-weight: 600;
  color: var(--ts-text);
  margin: 0;
}

.ts-v2 .ts-1c-picks .pick-title-mobile h2 a{
  color: inherit;
  text-decoration: none;
  transition: color 0.2s ease;
}

.ts-v2 .ts-1c-picks .pick-title-mobile h2 a:hover{
  text-decoration: underline;
}

.ts-v2 .ts-1c-picks .timestamp{
  color: var(--ts-muted);
  font-size: var(--ts-text-base);
  font-weight: var(--ts-font-medium);
  background: color-mix(in srgb, var(--ts-white) 5%, transparent);
  padding: var(--ts-space-3) var(--ts-space-5);
  border-radius: var(--ts-radius-pill);
  display: inline-flex;
  align-items: center;
  position: relative;
}

.ts-v2 .ts-1c-picks .timestamp.active{
  background: var(--ts-countdown-bg);
  color: var(--ts-countdown-ink);
  border: 1px solid color-mix(in srgb, var(--ts-positive) 20%, transparent);
}

/* Desktop horizontal details layout */
.ts-v2 .ts-1c-picks .pick-details-horizontal{
  padding: var(--ts-space-8) 0;
  display: flex;
  flex-direction: column;
  gap: var(--ts-space-8);
  min-height: 160px;
}

.ts-v2 .ts-1c-picks .detail-row{
  display: flex;
  flex-wrap: wrap;
  gap: var(--ts-space-8);
  align-items: flex-start;
}

.ts-v2 .ts-1c-picks .detail-item{
  display: flex;
  align-items: flex-start;
  gap: var(--ts-space-4);
  min-width: 0;
  margin-bottom: var(--ts-space-4);
}

.ts-v2 .ts-1c-picks .detail-item strong{
  color: var(--ts-muted);
  font-size: var(--ts-text-base);
  font-weight: var(--ts-font-semibold);
  white-space: nowrap;
  padding-top: var(--ts-space-2);
  line-height: var(--ts-leading-tight);
}

.ts-v2 .ts-1c-picks .detail-item .detail-value{
  color: var(--ts-text);
  font-weight: var(--ts-font-normal);
  font-size: var(--ts-text-md);
  word-wrap: break-word;
  overflow-wrap: break-word;
  hyphens: auto;
  line-height: var(--ts-leading-normal);
  flex: 1;
  padding-top: var(--ts-space-1);
  margin-top: 0;
}

/* Multi-pick support for 1-column desktop layout */
.ts-v2 .ts-1c-picks .detail-item .ts-multi-pick {
  display: flex;
  flex-direction: column;
  gap: var(--ts-space-2);
  width: 100%;
}

.ts-v2 .ts-1c-picks .detail-item .ts-pick-item,
.ts-v2 .ts-3c-picks .detail-content .ts-pick-item,
.ts-v2.ts-single-pick .ts-pick-item {
  padding: var(--ts-space-1) var(--ts-space-4);
  background: color-mix(in srgb, var(--ts-white) 3%, transparent);
  border-radius: var(--ts-radius-xxs);
  border-left: var(--ts-space-1) solid var(--ts-primary);
  font-size: var(--ts-text-base);
  line-height: var(--ts-leading-snug);
}

.ts-v2 .ts-1c-picks .detail-item a.detail-value{
  display: inline-flex;
  align-items: center;
  padding: var(--ts-space-2) var(--ts-space-6);
  border-radius: var(--ts-radius-pill);
  background: var(--ts-gray-150);
  border: 1px solid var(--ts-border-soft);
  color: var(--ts-link);
  font-weight: var(--ts-font-semibold);
  font-size: var(--ts-text-base);
  text-decoration: none;
  max-width: fit-content;
  margin-top: 0;
  transition: color 0.2s ease;
  line-height: var(--ts-leading-tight);
}

.ts-v2 .ts-1c-picks .detail-item a.detail-value:hover{
  color: var(--ts-link);
}

/* Remove pill styling when bookie link contains an image */
.ts-v2 .ts-1c-picks .detail-item a.detail-value.bookie-image {
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
  font-weight: var(--ts-font-normal);
}

.ts-v2 .ts-1c-picks .detail-item .ts_img_icon{
  display: flex;
  align-items: center;
  gap: var(--ts-space-3);
  padding-top: var(--ts-space-1);
  margin-top: 0;
}

.ts-v2 .ts-1c-picks .detail-item .ts_img_icon :is(img, svg){
  height: var(--ts-space-12);
  width: auto;
  max-width: none;
  border-radius: var(--ts-radius-tiny);
}

/* Mobile vertical details layout - Clean block layout like ts-3c-picks */
.ts-v2 .ts-1c-picks .pick-details{
  margin-top: var(--ts-space-3); 
  font-size: var(--ts-text-md); 
  color: var(--ts-gray-700); 
  padding: var(--ts-space-10) var(--ts-space-10) 0 var(--ts-space-10);
  display: flex;
  flex-direction: column;
  gap: var(--ts-space-6); /* Clean spacing between sections */
}

.ts-v2 .ts-1c-picks .pick-details .detail-section{
  display: flex;
  flex-direction: column;
  gap: var(--ts-space-2);
  padding: 0;
  border-bottom: none;
}

.ts-v2 .ts-1c-picks .pick-details .detail-section:last-child{
  border-bottom: none;
}

.ts-v2 .ts-1c-picks .pick-details .detail-section strong,
.ts-v2 .ts-1c-picks .pick-details strong{
  color: var(--ts-ink-800);
  font-size: var(--ts-text-base);
  text-transform: uppercase;
}

/* Content follows title directly, no floating */
.ts-v2 .ts-1c-picks .pick-details .detail-content,
.ts-v2 .ts-1c-picks .pick-details span{
  display: block;
  margin-left: 0;
  font-weight: var(--ts-font-normal);
  color: var(--ts-ink-550);
  font-size: var(--ts-text-md);
  flex: none;
  word-wrap: break-word;
  overflow-wrap: break-word;
  hyphens: auto;
  line-height: 1.4;
}

.ts-v2 .ts-1c-picks .pick-details a{
  display: inline-flex;
  align-items: center;
  padding: var(--ts-space-2) var(--ts-space-6);
  border-radius: var(--ts-radius-pill);
  background: var(--ts-gray-150);
  border: 1px solid var(--ts-border-soft);
  color: var(--ts-link);
  font-weight: var(--ts-font-semibold);
  font-size: var(--ts-text-base);
  text-decoration: none;
  max-width: fit-content;
  margin-top: var(--ts-space-1);
}

.ts-v2 .ts-1c-picks .pick-details a:hover{ 
  text-decoration-thickness: 2px; 
}

/* Remove pill styling when link contains an image */
.ts-v2 .ts-1c-picks .pick-details a:has(img) {
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
  font-weight: var(--ts-font-normal);
}

/* Fallback for browsers that don't support :has() */
.ts-v2 .ts-1c-picks .pick-details a.bookie-image {
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
  font-weight: var(--ts-font-normal);
}

/* League section with icons */
.ts-v2 .ts-1c-picks .ts_img_icon{
  display: inline-flex; 
  align-items: center; 
  gap: var(--ts-space-2); 
  float: right;
  margin-top: var(--ts-space-2);
}

/* Preview content styling */
.ts-v2 .ts-1c-picks .preview-content {
  font-size: var(--ts-text-md);
  line-height: var(--ts-leading-relaxed);
  color: var(--ts-ink-550);
  max-height: 120px;
  overflow: hidden;
  position: relative;
}

.ts-v2 .ts-1c-picks .preview-content::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: var(--ts-space-10);
  background: var(--ts-gradient-fade-mist);
  pointer-events: none;
}

/* Multi-pick support for 1-column mobile layout */
.ts-v2 .ts-1c-picks .pick-details .detail-content .ts-multi-pick {
  display: flex;
  flex-direction: column;
  gap: var(--ts-space-2);
  width: 100%;
}

.ts-v2 .ts-1c-picks .pick-details .detail-content .ts-pick-item {
  padding: var(--ts-space-1) var(--ts-space-4);
  background: color-mix(in srgb, var(--ts-white) 3%, transparent);
  border-radius: var(--ts-radius-xxs);
  border-left: 2px solid var(--ts-positive);
  font-size: var(--ts-text-sm);
  line-height: var(--ts-leading-snug);
}

/* Clean result display for 1-column */
.ts-v2 .ts-1c-picks .result-summary,
.ts-v2.ts-single-pick .result-summary {
  display: flex;
  align-items: center;
  gap: var(--ts-space-4);
  flex-wrap: wrap;
}

.ts-v2 .ts-1c-picks .result-profit {
  font-weight: var(--ts-font-semibold);
  font-size: var(--ts-text-md);
  padding: var(--ts-space-1) var(--ts-space-3);
  border-radius: var(--ts-radius-xxs);
  min-width: var(--ts-result-chip-min-width);
  text-align: center;
}

.ts-v2 .ts-1c-picks .result-profit.profit-positive {
  color: var(--ts-positive);
  background: var(--ts-positive-soft);
}

.ts-v2 .ts-1c-picks .result-profit.profit-negative {
  color: var(--ts-negative);
  background: var(--ts-negative-soft);
}

/* Mobile layout inherits ts-3c-picks styling */
.ts-v2 .ts-1c-picks .pick-details {
  display: flex;
  flex-direction: column;
  gap: var(--ts-space-6);
}

.ts-v2 .ts-1c-picks .pick-details .detail-section{
  display: flex;
  align-items: flex-start;
  gap: var(--ts-space-4);
  padding: var(--ts-space-4) 0;
  border-bottom: 1px solid color-mix(in srgb, var(--ts-white) 5%, transparent);
}

.ts-v2 .ts-1c-picks .pick-details .detail-section:last-child{
  border-bottom: none;
}

.ts-v2 .ts-1c-picks .pick-details .detail-section strong{
  color: var(--ts-muted);
  font-size: var(--ts-text-sm);
  font-weight: var(--ts-font-semibold);
  min-width: var(--ts-detail-label-min-width);
  white-space: nowrap;
}

.ts-v2 .ts-1c-picks .pick-details .detail-content a{
  display: inline-flex;
  align-items: center;
  padding: var(--ts-space-2) var(--ts-space-6);
  border-radius: var(--ts-radius-pill);
  background: var(--ts-gray-150);
  border: 1px solid var(--ts-border-soft);
  color: var(--ts-link);
  font-weight: var(--ts-font-semibold);
  font-size: var(--ts-text-base);
  text-decoration: none;
  max-width: fit-content;
  margin-top: 0;
  transition: color 0.2s ease;
}

.ts-v2 .ts-1c-picks .pick-details .detail-content a:hover{
  color: var(--ts-link);
}

/* Remove pill styling when mobile bookie link contains an image */
.ts-v2 .ts-1c-picks .pick-details .detail-content a.bookie-image {
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
  font-weight: var(--ts-font-normal);
}

/* Preview sections */
.ts-v2 .ts-1c-picks .preview-desktop-container{
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.ts-v2 .ts-1c-picks .preview-section{
  background: color-mix(in srgb, var(--ts-white) 3%, transparent);
  border-radius: var(--ts-radius-small);
  padding: var(--ts-space-8);
  border-left: var(--ts-border-thick) solid var(--ts-primary);
  flex: 1;
  margin-bottom: var(--ts-space-8);
}

.ts-v2 .ts-1c-picks .preview-section strong{
  color: var(--ts-muted);
  font-size: var(--ts-text-base);
  font-weight: var(--ts-font-semibold);
  display: block;
  margin-bottom: var(--ts-space-4);
}

.ts-v2 .ts-1c-picks .preview-content{
  color: var(--ts-text);
  font-size: var(--ts-text-base);
  line-height: var(--ts-leading-relaxed);
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 6;
  line-clamp: 6;
  -webkit-box-orient: vertical;
}

/* Read more buttons */
.ts-v2 .ts-1c-picks .read-more-desktop{
  display: flex;
  justify-content: center;
  align-items: flex-end;
  flex: 1;
}

.ts-v2 .ts-1c-picks .read-more-desktop .btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  border: 0;
  border-radius: var(--ts-radius-md);
  padding: var(--ts-space-5) var(--ts-space-10);
  font-weight: var(--ts-font-semibold);
  background: var(--ts-primary);
  color: var(--ts-ink-950);
  text-decoration: none;
  transition: all 0.2s ease;
}

.ts-v2 .ts-1c-picks .read-more-desktop .btn:hover{
  filter: brightness(1.05);
}

/* Ensure images in bookie links are properly sized */
.ts-v2 .ts-1c-picks .detail-item a img,
.ts-v2 .ts-1c-picks .pick-details a img {
  max-height: var(--ts-space-14);
  width: auto;
  display: block;
  border-radius: var(--ts-radius-small);
}

/* Responsive adjustments */
@media (max-width: 991.98px) {
  .ts-v2 .ts-1c-picks .detail-row{
    flex-direction: column;
    align-items: flex-start;
    gap: var(--ts-space-8);
  }
  
  .ts-v2 .ts-1c-picks .detail-item{
    width: 100%;
    justify-content: space-between;
  }
}

/* Accessibility Enhancements */
.ts-v2 .ts-1c-picks .pick-container:focus-within{
  outline: var(--ts-space-2) solid var(--ts-primary-light);
  outline-offset: var(--ts-space-2);
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
  .ts-v2 .ts-1c-picks .pick-container{
    transition: none;
  }
  .ts-v2 .ts-1c-picks .pick-container:hover{
    transform: none;
  }
}

/* Result section styling for desktop horizontal layout */
.ts-v2 .ts-1c-picks .pick-details-horizontal .result-row .detail-section {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0;
  border: none;
  margin: 0;
}

.ts-v2 .ts-1c-picks .pick-details-horizontal .result-row .detail-section strong {
  color: var(--ts-muted);
  font-size: 0.85rem;
  font-weight: 600;
  white-space: nowrap;
  padding-top: 4px;
  line-height: 1.2;
  margin: 0;
}

.ts-v2 .ts-1c-picks .pick-details-horizontal .result-row .detail-content {
  display: inline-flex;
  align-items: center;
}

/* Result pills styling - biggest border radius */
.ts-v2 .ts-1c-picks .pick-details-horizontal .result-row .ts-badge,
.ts-v2 .ts-1c-picks .pick-details-horizontal .result-row .result-profit,
.ts-v2 .ts-1c-picks .pick-details-horizontal .result-row .result-score,
.ts-v2.ts-single-pick .result-row .ts-badge,
.ts-v2.ts-single-pick .result-row .result-profit,
.ts-v2.ts-single-pick .result-row .result-score {
  border-radius: var(--ts-radius-pill) !important;
  font-size: 0.9rem;
  min-width: 45px !important;
}

/* Mobile result pills styling - biggest border radius */
.ts-v2 .ts-1c-picks .pick-details .ts-badge,
.ts-v2 .ts-1c-picks .pick-details .result-profit,
.ts-v2 .ts-1c-picks .pick-details .result-score {
  border-radius: var(--ts-radius-pill) !important;
}
/* ===== Tipster Modern Redesign (Hero, Stats, Tabs) ===== */
.ts-v2 .ts-tipster-wrapper{border-radius:var(--ts-radius-xl);}
.ts-v2 .ts-tipster-hero{display:flex;flex-wrap:wrap;gap:var(--ts-space-12);align-items:stretch;max-width:100%;}
.ts-v2 .ts-card{background:var(--ts-surface);border:1px solid var(--ts-surface-cloud);border-radius:var(--ts-radius-xl);box-shadow:var(--ts-shadow-card);}
.ts-v2 .ts-card:hover{box-shadow:var(--ts-shadow-header);} 
.ts-v2 .ts-tipster-hero-left{flex:0 0 auto;}
.ts-v2 .ts-tipster-hero-main{flex:1 1 var(--ts-hero-main-flex-basis);min-width:var(--ts-hero-main-min-width);min-inline-size:0;}
.ts-v2 .ts-avatar-wrap{width:var(--ts-avatar-size-hero);height:var(--ts-avatar-size-hero);border-radius:50%;overflow:hidden;box-shadow:var(--ts-shadow-avatar);}
.ts-v2 .ts-tipster-avatar{width:100%;height:100%;object-fit:cover;display:block;}
.ts-v2 .ts-hero-header-line{display:flex;gap:var(--ts-space-8);align-items:center;flex-wrap:wrap;}
.ts-v2 .ts-hero-name{font-size:var(--ts-text-hero);line-height:var(--ts-leading-compressed);margin:0;font-weight:var(--ts-font-semibold);color:var(--ts-text);}
.ts-v2 .ts-rank-badge{display:inline-block;background:linear-gradient(135deg,var(--ts-gold-400),var(--ts-gold-500));color:var(--ts-ink-900);font-size:var(--ts-text-badge);font-weight:var(--ts-font-semibold);padding:var(--ts-space-2-5) var(--ts-space-4-5);border-radius:var(--ts-radius-pill);vertical-align:middle;margin-left:var(--ts-space-4);letter-spacing:var(--ts-tracking-wide);}
.ts-v2 .ts-follow-btn{background:var(--ts-blue-600);color:var(--ts-white);text-decoration:none;padding:var(--ts-space-4-5) var(--ts-space-8);border-radius:var(--ts-radius-sm);font-weight:var(--ts-font-semibold);font-size:var(--ts-text-sm);display:inline-flex;align-items:center;gap:var(--ts-space-3);box-shadow:var(--ts-shadow-btn-primary);transition:.18s ease;}
.ts-v2 .ts-follow-btn:hover{background:var(--ts-blue-700);box-shadow:var(--ts-shadow-card-hover);} 
.ts-v2 .ts-tipster-bio{font-size:var(--ts-text-base);line-height:var(--ts-leading-relaxed);color:var(--ts-gray-600);max-width:var(--ts-tipster-bio-max-width);}
.ts-v2 .ts-social-links{display:flex;gap:var(--ts-space-4);flex-wrap:wrap;align-items:center;}
.ts-v2 .ts-social{width:var(--ts-icon-button-size);height:var(--ts-icon-button-size);border-radius:var(--ts-radius-sm);background:var(--ts-surface-shell);display:inline-flex;align-items:center;justify-content:center;font-size:var(--ts-text-sm);color:var(--ts-gray-700);text-decoration:none;font-weight:var(--ts-font-semibold);transition:.18s;border:1px solid var(--ts-border);}
/* Normalize inline SVG icon sizing inside social buttons (was text glyph size before) */
.ts-v2 .ts-social svg{width:var(--ts-space-9);height:var(--ts-space-9);display:block;}
.ts-v2 .ts-social:hover{background:var(--ts-surface-dust);color:var(--ts-gray-900);}

/* Stat grid */
.ts-v2 .ts-stat-grid{display:grid;gap:var(--ts-space-8);grid-template-columns:repeat(auto-fit,minmax(var(--ts-stat-card-min-width),1fr));}
.ts-v2 .ts-stat-card{background:var(--ts-surface-2);border:1px solid var(--ts-border);border-radius:var(--ts-radius-lg);padding:var(--ts-space-7) var(--ts-space-7);position:relative;display:flex;flex-direction:column;gap:var(--ts-space-2-5);min-height:var(--ts-stat-card-min-height);}
.ts-v2 .ts-stat-card.is-positive{border-color:var(--ts-green-600);}
.ts-v2 .ts-stat-card.is-negative{border-color:var(--ts-red-600);}
.ts-v2 .ts-stat-card.is-neutral{border-color:var(--ts-border);}
.ts-v2 .ts-stat-label{font-size:var(--ts-text-4xs);letter-spacing:var(--ts-tracking-wider);text-transform:uppercase;color:var(--ts-gray-600);font-weight:var(--ts-font-bold);}
.ts-v2 .ts-stat-value{font-size:var(--ts-text-4xl);font-weight:var(--ts-font-semibold);color:var(--ts-gray-900);line-height:var(--ts-leading-compressed);}
.ts-v2 .ts-stat-sub{font-size:var(--ts-text-4xs);color:var(--ts-gray-600);margin-top:auto;letter-spacing:var(--ts-tracking-wide);}
.ts-v2 .ts-sparkline{position:absolute;inset:auto var(--ts-space-3) var(--ts-space-3) var(--ts-space-3);height:var(--ts-space-11);background:repeating-linear-gradient(90deg,color-mix(in srgb, var(--ts-ink-950) 5%, transparent) 0 2px,transparent 2px 4px);border-radius:var(--ts-radius-tiny);opacity:.35;}

/* KPI directional badges */
.ts-v2 .ts-kpi-badge{position:absolute;top:var(--ts-space-3);right:var(--ts-space-3);font-size:var(--ts-text-2xs);font-weight:var(--ts-font-extrabold);padding:var(--ts-space-2-5) var(--ts-space-3-5);border-radius:var(--ts-radius-xs);letter-spacing:var(--ts-tracking-medium);line-height:var(--ts-leading-solid);display:inline-flex;align-items:center;gap:var(--ts-space-1-5);}
.ts-v2 .ts-kpi-badge.is-up{background:color-mix(in srgb, var(--ts-green-600) 16%, transparent);color:var(--ts-green-600);border:1px solid color-mix(in srgb, var(--ts-green-600) 30%, transparent);}
.ts-v2 .ts-kpi-badge.is-down{background:color-mix(in srgb, var(--ts-red-600) 16%, transparent);color:var(--ts-red-600);border:1px solid color-mix(in srgb, var(--ts-red-600) 30%, transparent);}
.ts-v2 .ts-kpi-badge.is-neutral{background:var(--ts-gray-100);color:var(--ts-gray-600);border:1px solid var(--ts-border);}
/* Size inline KPI SVG so it visually matches previous arrow glyph height */
.ts-v2 .ts-kpi-badge .ts-kpi-icon{width:1em;height:1em;display:block;line-height:1;}

/* Tabs (unified) */
.ts-v2 .ts-tipster-tabs{display:flex;gap:var(--ts-tab-gap);flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;position:relative;padding-bottom:var(--ts-tab-gap);margin-top:var(--ts-tab-margin-top);}
.ts-v2 .ts-tipster-tabs::-webkit-scrollbar{display:none;}
.ts-v2 .ts-tipster-tabs:after{content:"";position:absolute;left:0;right:0;bottom:0;height:var(--ts-space-1);background:var(--ts-border);}
.ts-v2 .ts-tipster-tabs .ts-tab{white-space:nowrap;background:linear-gradient(180deg,var(--ts-surface-veil),var(--ts-surface-shell));color:var(--ts-gray-700);padding:var(--ts-tab-padding-y) var(--ts-tab-padding-x);border-radius:var(--ts-radius-pill);font-size:var(--ts-text-md);font-weight:var(--ts-font-semibold);text-decoration:none;transition:.18s;border:1px solid color-mix(in srgb, var(--ts-border-muted) 70%, transparent);position:relative;line-height:var(--ts-leading-solid);}
.ts-v2 .ts-tipster-tabs .ts-tab[aria-selected="true"],
.ts-v2 .ts-tipster-tabs .ts-tab.active{background:var(--ts-primary);color:var(--ts-white);border-color:var(--ts-primary-hover);font-weight:var(--ts-font-semibold);}
.ts-v2 .ts-tipster-tabs .ts-tab:not([aria-selected="true"]):hover{background:color-mix(in srgb, var(--ts-surface-shell) 80%, transparent);color:var(--ts-gray-900);}

/* Prevent horizontal overflow on small screens */
.ts-v2 .ts-tipster-wrapper, .ts-v2 .ts-tipster-hero, .ts-v2 .ts-stat-grid{max-width:100%;}

/* Spacing enhancement below hero */
.ts-v2 .ts-tipster-hero{margin-bottom:var(--ts-space-10);}
/* streak result pills (compact, iconless) */
.ts-streak{ display:flex; gap:3px; }
.ts-pill{
  min-width:20px; height:20px; display:inline-flex; align-items:center; justify-content:center;
  border-radius:50%; border:1px solid transparent; position:relative;
  font-size:0.6rem; line-height:1; font-weight:600;
}
/* pill classes by result_status_fk number */
.ts-pill--1 { /* won */
  background: var(--ts-gradient-positive-soft);
  border-color: color-mix(in srgb, var(--ts-positive) 35%, transparent);
  color: var(--ts-green-600); /* darker green */
}
.ts-pill--2 { /* void */
  background: var(--ts-gradient-cancel-soft);
  border-color: var(--ts-border-muted);
  color: var(--ts-ink-600); /* darker gray */
}
.ts-pill--3 { /* lost */
  background: color-mix(in srgb, var(--ts-red-600) 8%, transparent);
  border-color: color-mix(in srgb, var(--ts-red-600) 25%, transparent);
  color: var(--ts-red-600); /* darker red */
}
.ts-pill--4 { /* half won */
  background: var(--ts-gradient-positive-soft);
  border-color: color-mix(in srgb, var(--ts-green-500) 45%, transparent);
  color: var(--ts-emerald-600); /* darker green variant */
}
.ts-pill--5 { /* half lost */
  background: color-mix(in srgb, var(--ts-red-600) 12%, transparent);
  border-color: color-mix(in srgb, var(--ts-red-600) 30%, transparent);
  color: var(--ts-red-700); /* darker red variant */
}
.ts-pill--7 { /* cancel */
  background: linear-gradient(135deg, var(--ts-surface-haze) 0%, var(--ts-surface-foam) 100%);
  border-color: var(--ts-border-muted);
  color: var(--ts-ink-600); /* darker gray */
}

/* Black tooltips for pills */
/* black tooltip (appears on hover) */
.ts-pill[title]:hover::after {
  content: attr(title);
  position:absolute; bottom:100%; left:50%; transform:translateX(-50%);
  background:var(--ts-overlay-tooltip); color:var(--ts-white); padding:4px 6px; border-radius:4px;
  font-size:11px; white-space:nowrap; z-index:1000; margin-bottom:4px;
  box-shadow:0 2px 6px color-mix(in srgb, var(--ts-ink-950) 25%, transparent);
}
.ts-pill[title]:hover::before {
  content:""; position:absolute; bottom:100%; left:50%; transform:translate(-50%,2px);
  width:0; height:0; border:5px solid transparent; border-top-color:var(--ts-black); z-index:1001;
}

/* Chart + Stats Wrapper */
.ts-v2 .ts-chart-stats-wrapper {
  border: 1px solid var(--ts-border);
  border-radius: var(--ts-radius);
  padding: 20px;
  background: var(--ts-surface);
  box-shadow: var(--ts-shadow);
}

/* 12 Month Stats Grid */
.ts-v2 .ts-stats-grid {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 16px 0;
}

.ts-v2 .ts-stat-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 6px 0;
  border-bottom: 1px solid var(--ts-border);
}

.ts-v2 .ts-stat-row:last-child {
  border-bottom: none;
}

.ts-v2 .ts-stat-label {
  font-size: 0.8rem;
  color: var(--ts-muted);
  font-weight: 500;
}

.ts-v2 .ts-stat-value {
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--ts-text);
}

.ts-v2 .ts-stat-value.ts-profit.ts-won {
  color: var(--ts-green-600);
}

.ts-v2 .ts-stat-value.ts-profit.ts-lost {
  color: var(--ts-red-600);
}

.ts-v2 .ts-stat-row .ts-streak {
  gap: var(--ts-space-2);
}

/* ============ Bookie Reviews Widget ============ */
.ts-v2 .ts-bookiereviews-container {
  display: flex;
  flex-direction: column;
  gap: var(--ts-space-8);
}

.ts-v2 .ts-bookiereviews-card {
  border: 1px solid var(--ts-border);
  border-radius: var(--ts-radius-md);
  padding: var(--ts-space-10) var(--ts-space-8);
  background: var(--ts-surface);
  box-shadow: var(--ts-shadow-card-soft);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: var(--ts-space-6);
}

.ts-v2 .ts-bookiereviews-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--ts-shadow-card-hover);
}

.ts-v2 .ts-bookiereviews-rank {
  font-size: var(--ts-text-4xl);
  font-weight: var(--ts-font-bold);
  color: var(--ts-text-muted);
  margin-bottom: var(--ts-space-2);
}

.ts-v2 .ts-bookiereviews-logo {
  width: var(--ts-avatar-size-lg);
  height: var(--ts-avatar-size-lg);
  border-radius: var(--ts-radius-sm);
  border: 1px solid var(--ts-border);
  background: var(--ts-gray-50);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  margin-bottom: var(--ts-space-4);
}

.ts-v2 .ts-bookiereviews-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.ts-v2 .ts-bookiereviews-title {
  font-size: var(--ts-text-md);
  font-weight: var(--ts-font-semibold);
  color: var(--ts-text);
  text-align: center;
}

.ts-v2 .ts-bookiereviews-rating {
  margin-bottom: var(--ts-space-4);
}

.ts-v2 .ts-stars-rating {
  position: relative;
  display: inline-flex;
  font-size: var(--ts-text-xl);
}

.ts-v2 .ts-stars-back {
  color: var(--ts-border);
}

.ts-v2 .ts-stars-front {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  color: var(--ts-yellow-400);
}

.ts-v2 .ts-bookiereviews-actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--ts-space-4);
  width: 100%;
}

.ts-v2 .ts-bookiereviews-review-label {
  font-size: var(--ts-text-xs);
  color: var(--ts-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-weight: var(--ts-font-medium);
}

.ts-v2 .ts-bookiereviews-review-link {
  font-size: var(--ts-text-base);
  color: var(--ts-link);
  text-decoration: none;
  font-weight: var(--ts-font-medium);
  display: flex;
  align-items: center;
  gap: var(--ts-space-2);
  margin-bottom: var(--ts-space-4);
}

.ts-v2 .ts-bookiereviews-review-link:hover {
  color: var(--ts-blue-800);
  text-decoration: underline;
}

.ts-v2 .ts-bookiereviews-bet-btn {
  width: 100%;
  padding: var(--ts-space-6) var(--ts-space-8);
  background: linear-gradient(to right, var(--ts-primary-hover), var(--ts-primary));
  color: var(--ts-surface);
  border: none;
  border-radius: var(--ts-radius);
  font-weight: var(--ts-font-semibold);
  font-size: var(--ts-text-md);
  text-decoration: none;
  text-align: center;
  transition: background-color 0.2s ease, transform 0.1s ease;
  display: block;
}

.ts-v2 .ts-bookiereviews-bet-btn:hover {
  background: linear-gradient(to right, var(--ts-primary-hover), var(--ts-primary));
  transform: translateY(-1px);
  color: var(--ts-surface);
  text-decoration: none;
}

/* =========================================================
   Responsive Breakpoints
========================================================= */

/* Tables to cards (max-width 767.98px) */
@media (max-width: 767.98px) {
  /* Hide headers */
  .ts-v2 .ts-v2-table thead { display: none; }

  /* Turn table into stacked blocks */
  .ts-v2 .ts-v2-table .tipster-script-table,
  .ts-v2 .ts-v2-table tbody,
  .ts-v2 .ts-v2-table tr,
  .ts-v2 .ts-v2-table td {
    display: block;
    width: 100%;
  }

  /* Row becomes a card */
  .ts-v2 .ts-v2-table tbody tr {
    background: var(--ts-surface);
    border: 1px solid var(--ts-border);
    border-radius: var(--ts-radius);
    margin: var(--ts-space-6) 0;
    overflow: hidden;
    box-shadow: var(--ts-shadow-card-mobile);
    padding: 0; /* padding handled by cells */
  }

  /* Cell stacks label over value, like 3-column detail-section */
  .ts-v2 .ts-v2-table td {
    border-bottom: 1px solid var(--ts-border);
    text-align: left;
    word-wrap: break-word;
    word-break: break-word;
    overflow-wrap: break-word;
    padding: var(--ts-space-6) var(--ts-space-8);
  }
  .ts-v2 .ts-v2-table td:last-child { border-bottom: 0; }

  /* Label above content */
  .ts-v2 .ts-v2-table td::before {
    content: attr(data-title);
    display: block;
    color: var(--ts-text-muted);
    font-weight: var(--ts-font-semibold);
    font-size: var(--ts-text-md);
    margin-bottom: var(--ts-space-2);
  }

  /* Event cell acts as title (no label) */
  .ts-v2 .ts-v2-table .table_event::before { display: none; }
  .ts-v2 .ts-v2-table .table_event a {
    font-size: var(--ts-text-2xl-plus);
    font-weight: var(--ts-font-semibold);
    color: var(--ts-text-dark);
    text-decoration: none;
  }

  /* Ensure long pick text wraps nicely */
  .ts-v2 .ts-v2-table .table_pick { width: 100%; line-height: 1.4; }
  .ts-v2 .ts-v2-table .table_score { width: 100%;}
  .ts-v2 .ts-v2-table .table_tipster { width: 100%;}
  .ts-v2 .ts-v2-table .table_event { width: 100%;}

  /* Remove floats that break stacking */
  .ts-v2 .ts-v2-table td a { float: none !important; }

  /* Alternating backgrounds remain subtle */
  .ts-v2 .ts-v2-table tbody tr:nth-child(odd) { background: var(--ts-surface); }
  .ts-v2 .ts-v2-table tbody tr:nth-child(even) { background: var(--ts-surface-2); }
}

/* Active picks (max-width 767.98px) */
@media (max-width: 767.98px) {
  .ts-v2 .ts-activepicks-item { padding: var(--ts-space-6); }
  .ts-v2 .ts-activepicks-event-link { font-size: var(--ts-text-xl); }
  .ts-v2 .ts-activepicks-details { gap: var(--ts-space-3) var(--ts-space-5); }
}

/* Tipsters filter (max-width 767.98px) */
@media (max-width: 767.98px) {
  .ts-v2 .ts-date-container-tipsters,
  .ts-v2 .ts-filter > [class*="col-"] { margin-top: var(--ts-space-5); }
}

/* Tipsters layout adjustments (max-width 767.98px) */
@media (max-width: 767.98px) {
  /* card breathing */
  .ts-v2 .tipsters-modern-single {
    padding-top: var(--ts-space-11);
    padding-bottom: var(--ts-space-10);
  }

  /* left column stack stays centered */
  .ts-v2 .tipsters-modern .col-md-4.d-flex {
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: var(--ts-space-3);
    text-align: center;
  }

  .ts-v2 .tipsters-img { width: 58px; height: 58px; margin-bottom: var(--ts-space-1); }
  .ts-v2 .tipsters-name { margin: 0; font-size: var(--ts-text-xl); line-height: var(--ts-leading-tight); }

  /* on mobile, button returns to normal flow and is centered below */
  .ts-v2 .tipsters-user .btn {
    position: static;
    transform: none;
    margin-top: var(--ts-space-3);
    padding: var(--ts-space-4) var(--ts-space-9);
    min-width: 120px;
    font-size: var(--ts-text-md);
  }

  /* stats spacing & readability */
  .ts-v2 .tipster-stats { margin-top: var(--ts-space-7); }
  .ts-v2 .tipster-stats .row > [class*="col-"] { margin-top: var(--ts-space-4); }
  .ts-v2 .ts-stats { margin-right: 0; border-bottom: 1px solid var(--ts-border); }
  .ts-v2 .ts-stat { min-height: calc(var(--ts-control-height-md) - var(--ts-space-2)); gap: var(--ts-space-1); line-height: var(--ts-leading-tight); padding-bottom: var(--ts-space-10); }
  .ts-v2 .tipsters-modern-single .ts-left { border-bottom: 1px solid var(--ts-border); padding-bottom: var(--ts-space-7-5); }
  .ts-v2 .tipsters-modern-single .ts-cta { padding-top: var(--ts-space-2-5); }
  .ts-v2 .tipsters-modern-single .ts-cta a { width: 100%; padding: var(--ts-space-5) 0; }
}

/* Profile inline menu button (max-width 767.98px) */
@media (max-width: 767.98px) {
  .ts-v2.ts-profile .ts-menu-inline {
    margin-top: var(--ts-space-10);
    width: 100%;
    display: inline-flex; align-items: center; justify-content: center; gap: var(--ts-space-4);
    height: var(--ts-control-height-lg); padding: 0 var(--ts-space-7);
    border: 0; border-radius: var(--ts-radius-md); cursor: pointer;
    background: var(--ts-blue-600); color: var(--ts-white); font-weight: var(--ts-font-semibold);
    box-shadow: var(--ts-shadow-inline-menu);
  }
  .ts-v2.ts-profile .ts-menu-inline__icon { font-size: var(--ts-text-3xl); line-height: var(--ts-leading-solid); }
  .ts-v2.ts-profile .ts-menu-inline:active { transform: translateY(1px); }
}

/* Profile navigation drawer (max-width 767.98px) */
@media (max-width: 767.98px) {
  .ts-v2.ts-profile .ts-nav.ts-nav--drawer {
    position: fixed; z-index: 1002;
    top: 0; left: 0;
    height: 100vh;
    width: 78%; max-width: 340px;
    padding: 16px;
    background: var(--ts-white);
    border-right: 1px solid var(--ts-border);
    border-radius: 0 16px 16px 0;
    box-shadow: var(--ts-shadow-drawer);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    transform: translateX(-105%);
    transition: transform .22s cubic-bezier(.2,.7,.2,1);
  }

  .ts-v2.ts-profile::after {
    content: "";
    position: fixed;
    left: 0; right: 0; bottom: 0;
    top: var(--ts-overlay-top, 0) !important;
    background: var(--ts-overlay-clear);
    pointer-events: none;
    z-index: 1000;
    transition: background .2s ease;
  }
  .ts-v2.ts-profile.ts-menu--open::after {
    background: var(--ts-overlay-backdrop);
    pointer-events: auto;
  }

  .ts-v2.ts-profile.ts-menu--open .ts-nav.ts-nav--drawer {
    transform: translateX(0);
  }

  .ts-v2.ts-profile .ts-nav.ts-nav--drawer.ts-nav--dividers .ts-nav__item:not(:last-child)::after {
    left: 0; right: 0;
  }
}

/* Chart stats wrapper adjustments (max-width 767.98px) */
@media (max-width: 767.98px) {
  .ts-v2 .ts-chart-stats-wrapper > .row > .col-md-4 {
    margin-top: 1.75rem;
    padding-top: 1rem;
    border-top: 1px solid color-mix(in srgb, var(--ts-ink-950) 5%, transparent);
  }
  .ts-v2 .ts-chart-stats-wrapper > .row > .col-md-4 .ts-sectionTitle { margin-top: 0; }
}

/* Multi-pick stack spacing (max-width 767.98px) */
@media (max-width: 767.98px) {
  .ts-v2 .ts-pick-item {
    font-size: var(--ts-text-sm);
    padding: var(--ts-space-1-5) 0;
  }

  .ts-v2 .ts-pick-number {
    min-width: var(--ts-space-9);
    font-size: var(--ts-text-2xs);
  }

  .ts-v2 .ts-multi-pick {
    gap: var(--ts-space-1);
  }
}

/* Pagination scrolling (max-width 767.98px) */
@media (max-width: 767.98px) {
  .ts-v2 .ts-pagination-wrapper {
    margin: var(--ts-space-8) 0;
    padding: 0 var(--ts-space-4);
  }

  .ts-v2 .ts-pagination__list {
    gap: var(--ts-space-1);
    padding: var(--ts-space-1);
    flex-wrap: nowrap;
    max-width: calc(100vw - var(--ts-space-16));
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .ts-v2 .ts-pagination__list::-webkit-scrollbar {
    display: none;
  }

  .ts-v2 .ts-pagination__item a,
  .ts-v2 .ts-pagination__item span {
    min-width: var(--ts-control-width-sm);
    height: var(--ts-control-width-sm);
    padding: 0 var(--ts-space-3);
    font-size: var(--ts-text-sm);
    flex-shrink: 0;
  }

  .ts-v2 .ts-pagination__item--prev a,
  .ts-v2 .ts-pagination__item--next a {
    min-width: var(--ts-control-width-sm);
    font-size: var(--ts-text-xl);
    font-weight: var(--ts-font-bold);
  }
}

/* Single pick header layout (max-width 767.98px) */
@media (max-width: 767.98px) {
  .ts-v2.ts-single-pick .header-content {
    flex-direction: row;
    align-items: flex-start;
  }

  .ts-v2.ts-single-pick .tipster-details {
    gap: var(--ts-space-2);
  }

  .ts-v2.ts-single-pick .timestamp-desktop {
    display: none;
  }

  .ts-v2.ts-single-pick .timestamp-mobile {
    display: block;
  }

  .ts-v2.ts-single-pick .tipster-avatar {
    width: calc(var(--ts-avatar-size-lg) - var(--ts-space-4));
    height: calc(var(--ts-avatar-size-lg) - var(--ts-space-4));
  }
}

/* Single pick content rhythm (max-width 767.98px) */
@media (max-width: 767.98px) {
  .ts-v2.ts-single-pick {
    --single-pick-padding: var(--ts-space-8);
  }

  .ts-v2.ts-single-pick .pick-details {
    gap: var(--ts-space-6);
  }

  .ts-v2.ts-single-pick .ts-stat-row {
    padding: var(--ts-space-3) 0;
  }

  .ts-v2.ts-single-pick .ts-stat-label {
    font-size: var(--ts-text-base);
  }

  .ts-v2.ts-single-pick .ts-stat-value {
    font-size: var(--ts-text-xl);
  }

  .ts-v2.ts-single-pick .single-pick-modern__title {
    font-size: var(--ts-text-4xl-plus);
    align-items: center;
  }
}

/* Single pick live badge spacing (max-width 767.98px) */
@media (max-width: 767.98px) {
  .ts-v2 .ts-1c-picks .live-score-mobile {
    margin-top: 16px !important;
  }
}

/* Single column pick detail adjustments (max-width 767.98px) */
@media (max-width: 767.98px) {
  .ts-v2 .ts-1c-picks .pick-details .detail-section {
    gap: var(--ts-space-3);
    padding: var(--ts-space-3) 0;
  }

  .ts-v2 .ts-1c-picks .pick-details strong {
    font-size: var(--ts-text-xs);
    min-width: var(--ts-detail-label-min-width-sm);
  }

  .ts-v2 .ts-1c-picks .pick-details .detail-content {
    font-size: var(--ts-text-sm);
  }

  .ts-v2 .ts-1c-picks .preview-section {
    padding: var(--ts-space-6);
  }
  .ts-v2 .ts-1c-picks .preview-content {
    padding-bottom: var(--ts-space-5);
  }
  .ts-v2 .timestamp.live-timestamp {
    margin-top: var(--ts-space-2);
    margin-right: 12px;
  }
  .ts-v2 .pick-container .pick,
  .ts-v2 .pick-container .pick-title-mobile {
    padding: var(--ts-space-6) !important;
  }
}

/* Tipster hero compression (max-width 767.98px) */
@media (max-width: 767.98px) {
  .ts-v2 .ts-tipster-wrapper { border-radius: var(--ts-radius-md); }
  .ts-v2 .ts-tipster-hero { flex-direction: column; }
  .ts-v2 .ts-hero-name { font-size: var(--ts-text-hero-sm); }
  .ts-v2 .ts-stat-grid { grid-template-columns: 1fr; }
}

/* Tipster stats list spacing (max-width 767.98px) */
@media (max-width: 767.98px) {
  .ts-v2 .ts-stats-grid {
    margin-top: var(--ts-space-10);
    padding-top: var(--ts-space-10);
    border-top: 1px solid var(--ts-border);
  }

  .ts-v2 .ts-stat-row {
    padding: var(--ts-space-5) 0;
  }
}

/* Results table cards (max-width 767.98px) */
@media (max-width: 767.98px) {
  .ts-v2.ts-results thead {
    display: none;
  }

  .ts-v2.ts-results .table-responsive { padding-left: 0; padding-right: 0; }

  .ts-v2.ts-results .ts-table {
    border: 0; box-shadow: none; background: transparent;
  }

  .ts-v2.ts-results tbody,
  .ts-v2.ts-results tr,
  .ts-v2.ts-results td {
    width: 100%;
  }

  .ts-v2.ts-results tbody tr {
    display: block;
    margin: var(--ts-space-6) 0;
    padding: var(--ts-space-6) var(--ts-space-7);
    border: 1px solid var(--ts-border);
    border-radius: var(--ts-radius-md);
    box-shadow: var(--ts-shadow-card-soft);
  }

  .ts-v2.ts-results tbody tr:nth-child(even) {
    background: var(--ts-surface-breeze);
  }

  .ts-v2.ts-results tbody tr:nth-child(odd) td { background: transparent !important; }
  .ts-v2.ts-results tbody tr:hover td { background: transparent !important; }

  .ts-v2.ts-results tbody td {
    display: grid; grid-template-columns: 96px 1fr;
    gap: var(--ts-space-4); border: 0; padding: var(--ts-space-4) 0;
  }
  .ts-v2.ts-results tbody td::before {
    content: attr(data-title);
    font-weight: var(--ts-font-semibold); color: var(--ts-gray-700);
  }

  .ts-v2.ts-results .ts-badge { min-width: auto; }
  .ts-v2.ts-results .ts-col--datetime { white-space: normal; }
}

/* Tipster Script Subscription */
/* -------- Compact paywall (fits a tight table cell) -------- */
.ts-v2 .ts-paymini{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  white-space:nowrap;
  font-size:13px;
}

.ts-paymini__single {
  justify-content: center!important;
  margin-top: 20px;
}

/* short buy button */
.ts-v2 .ts-paymini__buy{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:8px 10px;
  border:0;
  border-radius:10px;
  background: var(--ts-secondary);
  color: var(--ts-secondary-ink);
  font-weight:700;
  line-height:1;
  cursor:pointer;
  box-shadow:var(--ts-shadow-btn-secondary);
  transition: background-color .2s ease, box-shadow .2s ease, transform .1s ease;
}
.ts-v2 .ts-paymini__buy:hover{
  background: var(--ts-secondary-hover);
  color: var(--ts-secondary-ink);
  box-shadow: var(--ts-shadow-btn-secondary-hover);
}
.ts-v2 .ts-paymini__buy:active{
  transform:translateY(1px);
  background: color-mix(in srgb, var(--ts-secondary) 80%, #000000 20%);
}

.ts-v2 .ts-paysub__buy {
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:12px 10px;
  border:0;
  border-radius:16px;
  background: var(--ts-secondary);
  color: var(--ts-secondary-ink);
  font-weight:700;
  line-height:1;
  cursor:pointer;
  box-shadow:var(--ts-shadow-btn-secondary);
  width: 100%;
  font-size: 1.15rem;
  justify-content: center;
  transition: background-color .2s ease, box-shadow .2s ease, transform .1s ease;
}

.ts-v2 .ts-paysub__login {
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:12px 10px;
  border:0;
  border-radius:16px;
  border-color: #cbd5e1;
  background:#d1d5db;
  color:#1f2937;
  font-weight:600;
  line-height:1;
  cursor:pointer;
  box-shadow: 0 2px 6px rgba(0,0,0,0.08);
  width: 100%;
  font-size: 1.1rem;
  justify-content: center;
  text-decoration: none!important;
}

.ts-v2 .ts-paysub__subscribe, .ts-v2 .ts-paysub__subscribed {
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:12px 10px;
  border:0;
  border-radius:16px;
  border-color: rgba(32,178,107,0.35);
  background: var(--ts-countdown-bg);
  color: var(--ts-countdown-ink);
  font-weight:600;
  line-height:1;
  cursor:default;
  box-shadow: 0 1px 0 rgba(0,0,0,0.05), 0 8px 18px rgba(22,163,74,0.28);
  width: 100%;
  font-size: 1.15rem;
  justify-content: center;
}

.ts-v2 .ts-actions-paysub__profile {
  justify-content: center;
}


.ts-v2 .ts-paysub__profile {
  width: 80%;
  border-radius: 16px;
  padding: 8px 0;
  text-align: center;
  align-items: center;
  justify-content: center;
  display: inline-flex;
  font-size: 1rem;
  font-weight: 600;
  background: var(--ts-primary); 
}

.ts-v2 .ts-paysub__profile:hover{
  background: var(--ts-primary);  
  box-shadow: var(--ts-primary-shadow);
}
.ts-v2 .ts-paysub__profile:active{
  background: var(--ts-primary-hover);
  box-shadow: 0 2px 8px color-mix(in srgb, var(--ts-primary) 35%, transparent);
}

.ts-v2 .ts-paysub__subscribe:hover,
.ts-v2 .ts-paysub__subscribe:active{
  background: var(--ts-countdown-bg);
  color: var(--ts-countdown-ink);
  transform: none;
}

.ts-v2 .ts-paysub__login:hover{
  background: #c4c9cf;
  box-shadow: 0 4px 10px rgba(0,0,0,0.10);
}
.ts-v2 .ts-paysub__login:active{
  background: #b4bac0;
  box-shadow: 0 2px 6px rgba(0,0,0,0.08);
}

.ts-v2 .ts-paysub__buy:hover{
  background: var(--ts-secondary-hover);
  color: var(--ts-secondary-ink);
  box-shadow: var(--ts-shadow-btn-secondary-hover);
}
.ts-v2 .ts-paysub__buy:active{
  transform:translateY(1px);
  background: color-mix(in srgb, var(--ts-secondary) 80%, #000000 20%);
}

/* tiny link */
.ts-v2 .ts-paymini__sub{
  color:#1f3a8a !important;    
  font-weight: 600 !important;
  font-size: 0.9rem !important;
  text-decoration:none !important;
  border: unset !important;
  border-bottom:1px dashed rgba(31,58,138,.35) !important;
  padding: 0!important;
  border-radius: 0!important;
  background: 0!important;
}
.ts-v2 .ts-paymini__sub:hover{ border-bottom-color: currentColor; }

.ts-v2 .ts-v2-table .table_pick p {margin-bottom:0!important}

.ts-v2 .ts-v2-table .table_user a {margin-left: 8px;}

.ts-v2 .tss-buy-cta {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top:auto;
  margin-bottom:auto;  
}

.ts-v2 .pick-3-container .tss-buy-cta {
    margin-top: 3rem;
}

/* Force stacked layout for 3-column view */
.ts-v2 .ts-3c-picks .tss-buy-cta .ts-paymini {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.75rem;
    width: 100%;
}

.ts-v2 .ts-3c-picks .tss-buy-cta .ts-paymini__buy,
.ts-v2 .ts-3c-picks .tss-buy-cta .ts-paymini__sub {
    max-width: 200px;
}

.ts-v2 .tss-login {
  cursor: pointer;
  text-decoration: underline;
  color: var(--ts-link);
  background-color: #eee;
}

/* When the table collapses to cards on mobile, stack + full width */
@media (max-width: 767.98px){
  .pick-3-container, .pick-2-container {
    padding-right: 0!important;
  }
  .ts-v2 .ts-paymini{
    justify-content:center;
    white-space:normal;
    flex-direction:column;
    gap:8px;
    padding: 12px;
    width:100%;
  }
  .ts-v2 .ts-paymini__buy{ width:100%; justify-content:center; padding: 12px 0; }
  .ts-v2 .ts-paymini__buy span{ font-size:1.15rem!important; font-weight: 700!important;}
  .ts-v2 .ts-3c-picks .tss-buy-cta .ts-paymini__buy{max-width: none;}
}

.ts-v2 .ts-card--with-badge {
    position: relative;
}

.ts-v2 .ts-card__badge {
    position: absolute;
    top: 0;
    left: 0;
}

.ts-v2 .badge{
  position:absolute;
  top:0; left:0;
  transform: translate(-12px,-12px); 
  display:inline-flex; align-items:center; gap:6px;
  padding:6px 10px;
  border-radius:999px;
  background:var(--ts-badge-free-bg); 
  color:var(--ts-badge-free-text);
  font-weight:700; font-size:.75rem; line-height:1;
  box-shadow:0 8px 18px rgba(0,0,0,.10);
  z-index:2; 
}

/* a tiny connector notch so it “touches” the card edge */
.ts-v2 .badge::after{
  content:"";
  position:absolute; bottom:-6px; left:12px;
  width:10px; height:10px;
  background:var(--bg);
  transform:rotate(45deg);
  border-bottom-right-radius:2px;
  filter:brightness(.97);
}

/* variants */
.ts-v2 .tss-pick-badge-free, .ts-v2 .tss-tipsters-badge-free{background:var(--ts-badge-free-bg); color:var(--ts-badge-free-text); border: 1px solid var(--ts-badge-free-border);}
.ts-v2 .tss-pick-badge-premium, .ts-v2 .tss-tipsters-badge-premium{background:var(--ts-badge-pro-bg); color:var(--ts-badge-pro-text); border: 1px solid var(--ts-badge-pro-border);}

/* slightly tighter on very small phones */
@media (max-width:575.98px){
  .ts-v2 .badge{ transform:translate(-10px,-10px); padding:5px 9px; font-size:.72rem; }
}
.ts-v2 .tipsters-modern-single .ts-sub_buy-wrapper {
    padding-right: 0;
}
@media (max-width: 768px) {
  .ts-v2 .tipsters-modern-single .ts-sub_buy-wrapper {
      padding-right: var(--ts-space-8);
  }
}

.ts-v2 .ts-sub_buy {
    background: var(--ts-surface-feature);
    border: 1px solid var(--ts-surface-feature-border);
    padding: 1.25rem 0.75rem;
    border-radius: 16px;
    box-shadow: var(--ts-shadow, 0 6px 18px rgba(0,0,0,.06));
}

.ts-v2 .ts-sub_buy:hover {
  background: var(--ts-surface-cloud);
}

.ts-v2 .ts-sub_buy .tss_tipster_desc{
  font-size: var(--ts-text-base-plus);
}

.ts-v2 .ts-sub_buy .ts-tipster-break{
  line-height: 1;
}

.ts-v2 .tss_subscription_tipster {
  margin-top: 0;
}

.ts-v2 .ts-subscription-controls {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    gap: 0.75rem;
    padding: 0.5rem 0.75rem;
    margin-bottom: 1rem;
    flex-wrap: nowrap;
    background-color: var(--ts-surface-2);
    border-radius: var(--radius-xl, 16px);
}

.ts-v2 .ts-subscription-controls .ts-price {
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--ts-text);
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    margin: 0;
    white-space: nowrap;
}

.ts-v2 .ts-subscription-controls .ts-field {
    flex: 1;
    margin: 0;
    min-width: 100px;
}

.ts-v2 .ts-subscription-controls select {
    width: 100%;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-color: var(--ts-surface);
    background-image: url('data:image/svg+xml,%3Csvg width="14" height="14" viewBox="0 0 14 14" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath d="M3.25 5.25L7 9l3.75-3.75" stroke="%235b6472" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round" fill="none"/%3E%3C/svg%3E');
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 0.85rem;
    padding-right: 1.5rem;
    border: 1px solid var(--ts-border);
    border-radius: 10px;
}

.ts-v2 .ts-subscription-controls select:focus {
    outline: none;
    border-color: var(--ts-primary-light);
    box-shadow: 0 0 0 2px rgba(156, 163, 175, 0.2);
}
/* Checkout modal refreshed styles */
.ts-v2 .checkout-modal {
    background: var(--ts-surface);
    border-radius: 24px;
    padding: 28px;
    max-width: 460px;
    width: 100%;
    box-shadow: 0 20px 45px rgba(15, 23, 42, 0.16);
    border: none;
    font-family: inherit;
    position: relative;
}

.ts-v2 .checkout-close {
    position: absolute;
    top: 18px;
    right: 18px;
    width: 40px;
    height: 40px;
    color: #111827;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    border: 1px solid rgba(15, 23, 42, 0.18);
    background: rgba(248, 250, 252, 0.96);
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.12);
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease, background 0.18s ease;
    backdrop-filter: blur(6px);
}

.ts-v2 .checkout-close:hover {
    background: #ffffff;
    border-color: rgba(15, 23, 42, 0.3);
    box-shadow: 0 10px 22px rgba(15, 23, 42, 0.18);
}

.ts-v2 .checkout-close:active {
    transform: scale(0.95);
    box-shadow: 0 6px 16px rgba(15, 23, 42, 0.2);
}

.ts-v2 .checkout-close svg {
    width: 24px;
    height: 24px;
}

.ts-v2 .checkout-close:focus-visible {
    outline: none;
    border-color: rgba(37, 99, 235, 0.65);
    box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.25);
}

.ts-v2 .checkout-close__icon {
    width: 22px;
    height: 22px;
    display: block;
}

.ts-v2 .visually-hidden {
    position: absolute !important;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.ts-v2 .tss-checkout--css .modal-header {
    padding-top: 0!important;
}

.ts-v2 .checkout-header {
    border: none;
    padding: 0 48px 22px 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    border-bottom: 1px solid #e2e8f0;
}

.ts-v2 .checkout-header__copy {
    flex: 1 1 auto;
}

.ts-v2 .checkout-header__copy h2 {
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1.2;
    color: var(--ts-text);
    margin: 0 0 6px;
}

.ts-v2 .checkout-header__subtitle {
    margin: 0;
    font-size: 0.95rem;
    color: #64748b;
}

.ts-v2 .checkout-header__subtitle .checkout-header__tipster {
    font-weight: 600;
    color: var(--ts-text);
}

.ts-v2 .checkout-body {
    padding-left: 0!important;
    padding-right: 0!important;
}

.ts-v2 .checkout-section {
    margin-top: 24px;
}

.ts-v2 .checkout-section:first-of-type {
    margin-top: 0;
}

.ts-v2 .checkout-label {
    display: block;
    font-size: 0.85rem;
    font-weight: 600;
    color: #6b7280;
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.ts-v2 .checkout-coupon {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: nowrap;
}

.ts-v2 .checkout-coupon input.tss_cart_coupon_code, .ts-v2 .checkout-coupon input.tss_cart_coupon_code_p {
    flex: 1 1 auto;
    min-width: 0;
    padding: 8px 18px;
    border-radius: 16px;
    border: 1px solid var(--ts-input-border);
    background-color: var(--ts-input-bg);
    color: var(--ts-input-text);
    font-size: 0.95rem;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.ts-v2 .checkout-coupon input.tss_cart_coupon_code:focus, .ts-v2 .checkout-coupon input.tss_cart_coupon_code_p:focus{
    border-color: var(--ts-input-focus-border);
    box-shadow: var(--ts-input-focus-shadow);
    outline: none;
}

.ts-v2 .checkout-coupon__apply {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    padding: 8px 12px;
    border-radius: 16px;
    border: 1px solid var(--ts-input-border);
    background: linear-gradient(180deg, var(--ts-input-bg) 0%, var(--ts-input-border) 100%);
    color: var(--ts-primary);
    font-weight: 600;
    font-size: 0.85rem;
    cursor: pointer;
    transition: all 0.2s ease;
}

.ts-v2 .checkout-coupon__apply:focus,
.ts-v2 .checkout-coupon__apply:focus-visible {
    outline: none;
    color: var(--ts-link);
    border-color: var(--ts-primary);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12);
}

.ts-v2 .checkout-coupon__apply:hover {
    border-color: var(--ts-input-border);
    color: var(--ts-link);
}

.ts-v2 .checkout-coupon__apply:active {
    border-color: var(--ts-input-border);
    color: var(--ts-link);
}

.ts-v2 .checkout-subheading {
    font-size: 1.05rem;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 16px;
}

.ts-v2 .checkout-details-card {
    background: var(--ts-surface-aurora);
    border-radius: 18px;
    padding: 16px 20px;
    display: flex;
    flex-direction: column;
    border: 1px solid var(--ts-border);
}

.ts-v2 .checkout-detail {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    font-size: 0.97rem;
    color: var(--ts-text);
    padding: 12px 0;
}

.ts-v2 .checkout-detail:first-child {
    padding-top: 0;
}

.ts-v2 .checkout-detail:last-child {
    padding-bottom: 0;
}

.ts-v2 .checkout-detail + .checkout-detail {
    border-top: 1px solid var(--ts-border);
}

.ts-v2 .checkout-detail__label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 600;
    color: var(--ts-muted);
}

.ts-v2 .checkout-detail__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.ts-v2 .checkout-detail__value {
    font-weight: 600;
    color: var(--ts-text);
}

.ts-v2 .checkout-icon {
    width: 20px;
    height: 20px;
    display: block;
    color: var(--ts-text);
}

.ts-v2 .checkout-footer {
    border: none;
    padding: 12px 0 0;
    display: flex;
    flex-direction: column;
    gap: 18px;
    align-items: stretch;
}

.ts-v2 .checkout-saving {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
    padding: 12px 20px;
    border-radius: 16px;
    transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.ts-v2 .checkout-saving__headline {
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--ts-muted);
    letter-spacing: 0.01em;
    text-transform: none;
}

.ts-v2 .checkout-saving__amount {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--ts-muted);
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.ts-v2 .checkout-saving__amount::before {
    content: '';
    display: none;
}

.ts-v2 .checkout-saving--inactive {
    background: #fdfcfb;
    border: 1px dashed #e5e7eb;
}

.ts-v2 .checkout-saving--inactive .checkout-saving__headline {
    color: var(--ts-muted);
}

.ts-v2 .checkout-saving--active {
    background: linear-gradient(135deg, rgba(34, 197, 94, 0.16), rgba(134, 239, 172, 0.26));
    border-color: rgba(34, 197, 94, 0.4);
    transform: translateY(-1px);
}

.ts-v2 .checkout-saving--active .checkout-saving__headline {
    color: #047857;
    text-transform: uppercase;
}

.ts-v2 .checkout-saving--active .checkout-saving__amount {
    color: #065f46;
}

.ts-v2 .checkout-saving--active .checkout-saving__amount::before {
    content: '\1F389';
    display: inline-flex;
    font-size: 1.35rem;
    line-height: 1;
}

.ts-v2 .checkout-secure {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.85rem;
    color: var(--ts-muted);
    justify-content: center;
    margin-top: -8px;
}

.ts-v2 .checkout-secure__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #111827;
}

.ts-v2 .checkout-final {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    font-size: 1.25rem;
    font-weight: 700;
    color: #0f172a;
    background-color: #fafafa;
    padding: 12px 20px;
    border-radius: 16px;
}

.ts-v2 .checkout-final__label {
    font-size: 1.25rem;
    font-weight: 700;
    color: #475569;
}

.ts-v2 .checkout-pay-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    padding: 16px 24px;
    border: none;
    border-radius: 999px;
    background: linear-gradient(135deg, color-mix(in srgb, var(--ts-secondary), white 6%) 0%, var(--ts-secondary) 100%);
    box-shadow: var(--ts-shadow-btn-secondary);
    color: #1f2937;
    font-size: 1.05rem;
    font-weight: 700;
    cursor: pointer;
}

.ts-v2 .checkout-pay-btn:hover {
    color: #1f2937;
    transform: translateY(-1px);
    background-color: linear-gradient(135deg, color-mix(in srgb, var(--ts-secondary-hover), white 6%) 0%, var(--ts-secondary-hover) 100%);
    box-shadow: var(--ts-shadow-btn-secondary-hover);
}

.ts-v2 .checkout-pay-btn:active {
    color: #1f2937;
    transform: translateY(0);
    box-shadow: var(--ts-shadow-btn-secondary);
}

.ts-v2 .checkout-pay-btn__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #111827;
}

.ts-v2 .checkout-pay-btn__amount {
    font-weight: 700;
}

@media (max-width: 575.98px) {
    .ts-v2 .checkout-modal {
        padding: 24px 20px;
    }

    .ts-v2 .checkout-header {
        flex-direction: column;
        align-items: flex-start;
    }

    .ts-v2 .checkout-coupon {
        align-items: center;
        gap: 8px;
    }

    .ts-v2 .checkout-coupon input.tss_cart_coupon_code {
        flex: 2 1 0;
    }

    .ts-v2 .checkout-coupon__apply {
        flex: 1 1 0;
        width: auto;
        min-width: 0;
        padding: 10px 12px;
    }

    .ts-v2 .checkout-detail {
        flex-direction: column;
        align-items: flex-start;
    }

    .ts-v2 .checkout-final {
        flex-direction: column;
        gap: 4px;
        align-items: flex-start;
    }

    .ts-v2 .checkout-saving {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

    .ts-v2 .checkout-saving__amount {
        align-self: flex-start;
    }
}

/* ========================================================================
   Tipster Login modal refresh (tsl_login_css)
   ======================================================================== */
.tsl_login_css .modal-content {
  border: 1px solid color-mix(in srgb, var(--ts-border) 70%, transparent);
  background: var(--ts-surface);
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.16);
}

.tsl_login_css .modal-header {
  border-bottom: 1px solid color-mix(in srgb, var(--ts-border) 70%, transparent);
  background: var(--ts-surface-2);
}

.tsl_login_css .modal-header .btn-close:hover {
  background: color-mix(in srgb, var(--ts-border) 45%, transparent);
}

.tsl_login_css .input,
.tsl_login_css input[type="text"],
.tsl_login_css input[type="password"],
.tsl_login_css input[type="email"] {
  border: 1px solid var(--ts-input-border);
  background: var(--ts-input-bg);
  color: var(--ts-input-text);
}

.tsl_login_css .input:focus,
.tsl_login_css input[type="text"]:focus,
.tsl_login_css input[type="password"]:focus,
.tsl_login_css input[type="email"]:focus {
  border-color: color-mix(in srgb, var(--ts-primary) 65%, transparent);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--ts-primary) 24%, transparent);
  background: var(--ts-input-bg);
}

.tsl_login_css #tsl_login_submit,
.tsl_login_css #tsl_register_submit,
.tsl_login_css #lost-password-submit {
  background: var(--ts-primary);
  color: var(--ts-surface);
  box-shadow: var(--ts-shadow-btn-primary);
}

.tsl_login_css #tsl_login_submit,
.tsl_login_css #tsl_register_submit,
.tsl_login_css #lost-password-submit {
  box-shadow: var(--ts-primary-shadow);
}

.tsl_login_css .tsl_login_form_header__login:hover,
.tsl_login_css .tsl_login_form_header__register:hover,
.tsl_login_css .tsl_login_form_header__logged:hover {
  background: color-mix(in srgb, var(--ts-border) 40%, transparent);
}

.tsl_login_css .tsl_login_form_header__logged-dd {
  background: var(--ts-surface);
  border: 1px solid color-mix(in srgb, var(--ts-border) 55%, transparent);
  box-shadow: var(--ts-shadow-tooltip, 0 12px 28px rgba(15, 23, 42, 0.18));
}

.tsl_login_css .tsl_login_form_header__logged-dd-item:not(:last-child) {
  border-bottom: 1px solid color-mix(in srgb, var(--ts-border) 70%, transparent);
}

.tsl_login_css,
.tsl_login_css .tsl_login_form_header__logged-dd-item a,
.tsl_login_css .modal-header .modal-title {
  color: var(--ts-text);
}

.tsl_login_css .tsl_login_form_header__logged-dd-item a:hover,
.tsl_login_css .tsl_recaptcha_message a,
.tsl_login_css .tsl_login_footer button:hover,
.tsl_login_css .tsl_login_footer button:focus, 
.tsl_login_css .tsl_lost_pass_footer button:hover,
.tsl_login_css .tsl_lost_pass_footer button:focus,
.tsl_login_css .tsl_login_footer button, .tsl_login_css .tsl_lost_pass_footer button {
  color: var(--ts-link);
}

.tsl_login_css .tsl_wrapper,
.tsl_login_css .tsl_inside_content {
  background: var(--ts-surface);
}

.tsl_login_css .tsl_inside {
  background: var(--ts-surface-2);
}

.tsl_login_css .login-remember,
.tsl_login_css .login-remember label,
.tsl_login_css .login-password .dashicons,
.tsl_login_css .tsl_login_form_header__logged-dd-icon,
.tsl_login_css .tsl_recaptcha_message,
.tsl_login_css form label,
.tsl_login_css #custom-lost-password label,
.tsl_login_css .tsl_register label {
  color: var(--ts-text-muted);
}
.tsl_login_css {
  line-height: 1.5;
}

.tsl_login_css .modal-dialog {
  max-width: 480px;
  margin: 24px auto;
}

.tsl_login_css .modal-content {
  border-radius: 16px;
  overflow: hidden;
}

.tsl_login_css .modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 18px 24px;
}

.tsl_login_css .modal-header .modal-title {
  margin: 0;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.35;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.tsl_login_css .modal-header .btn-close {
  width: 32px;
  height: 32px;
  border-radius: 12px;
  opacity: .75;
  transition: background .18s ease, opacity .18s ease;
}

.tsl_login_css .modal-header .btn-close:hover {
  opacity: 1;
}

.tsl_login_css .modal-body {
  padding: clamp(20px, 5vw, 32px);
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.tsl_login_css #custom-lost-password p {
  font-size: 0.85rem;
}

.tsl_login_css form {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.tsl_login_css form p {
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.tsl_login_css form label,
.tsl_login_css #custom-lost-password label,
.tsl_login_css .tsl_register label {
  font-size: 0.8rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.tsl_login_css .input,
.tsl_login_css input[type="text"],
.tsl_login_css input[type="password"],
.tsl_login_css input[type="email"] {
  width: 100%;
  padding: 10px 12px;
  border-radius: 12px;
  font-size: 0.88rem;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
  box-shadow: none;
  box-sizing: border-box;
}

.tsl_login_css .input:focus,
.tsl_login_css input[type="text"]:focus,
.tsl_login_css input[type="password"]:focus,
.tsl_login_css input[type="email"]:focus {
  outline: none;
}

.tsl_login_css #tsl_login_submit,
.tsl_login_css #tsl_register_submit,
.tsl_login_css #lost-password-submit {
  width: 100%;
  height: 44px;
  border: none;
  border-radius: 12px; 
  font-weight: 600;
  font-size: 0.9rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  transition: transform .18s ease, box-shadow .18s ease;
  cursor: pointer;
}

.tsl_login_css #lost-password-submit {
  margin-top: 1rem;
}

.tsl_login_css #tsl_login_submit:hover,
.tsl_login_css #tsl_register_submit:hover,
.tsl_login_css #lost-password-submit:hover {
  filter: brightness(1.05);
}

.tsl_login_css #tsl_login_submit:active,
.tsl_login_css #tsl_register_submit:active,
.tsl_login_css #lost-password-submit:active {
  transform: translateY(0);
}

.tsl_login_css .tsl_login_footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-top: 12px;
}

.tsl_login_css .tsl_login_footer button, .tsl_login_css .tsl_lost_pass_footer button {
  background: transparent;
  border: none;
  padding: 0;
  font-size: 0.85rem;
  font-weight: 500;
  text-decoration: underline;
  cursor: pointer;
  transition: color .15s ease, text-decoration-color .15s ease;
}

.tsl_login_css .tsl_login_footer button:hover,
.tsl_login_css .tsl_login_footer button:focus, 
.tsl_login_css .tsl_lost_pass_footer button:hover,
.tsl_login_css .tsl_lost_pass_footer button:focus {
  text-decoration: underline;
  outline: none;
}

.tsl_login_css .tsl_recaptcha_message {
  font-size: 0.8rem;
  margin: 0;
}

.tsl_login_css .tsl_recaptcha_message a {
  text-decoration: underline;
}

.tsl_login_css .tsl_form_error,
.tsl_login_css .tsl_register_success,
.tsl_login_css .tsl_lost_pass_success,
.tsl_login_css .tsl_reset_pass_success {
  display: none;
  padding: 14px 18px;
  border-radius: 12px;
  font-size: 0.88rem;
  line-height: 1.5;
  margin: 0;
}

.tsl_login_css .tsl_login_form_header__login,
.tsl_login_css .tsl_login_form_header__register,
.tsl_login_css .tsl_login_form_header__logged {
  cursor: pointer;
  border-radius: 12px;
  padding: 6px 14px;
  transition: background .18s ease, color .18s ease;
}

.tsl_login_css .tsl_login_form_header__logged-dd {
  display: none;
  list-style: none;
  margin: 0;
  padding: 6px;
  min-width: 180px;
  border-radius: 12px;
  text-align: left;
  white-space: nowrap;
}

.tsl_login_css .tsl_login_form_header__logged-dd-item {
  display: block;
  font-size: 0.88rem;
  padding: 10px 14px;
}

.tsl_login_css .tsl_login_form_header__logged-dd-item a {
  text-decoration: none;
  transition: color .15s ease;
}

.tsl_login_css .tsl_login_form_header__logged-dd-item a:hover {
  text-decoration: underline;
}

.tsl_login_css .tsl_login_form_header__logged-dd-icon {
  font-size: 1.25rem;
  position: absolute;
  right: 18px;
  top: -0.4em;
}

.tsl_login_css .tsl_wrapper {
  display: flex;
  border-radius: 16px;
  overflow: hidden;
}

.tsl_login_css .tsl_inside {
  flex: 0 0 40%;
  max-width: 40%;
}

.tsl_login_css .tsl_inside img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.tsl_login_css .tsl_inside_content {
  flex: 1 1 60%;
  padding: clamp(18px, 5vw, 36px);
}

.tsl_login_css .login-remember {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  font-size: 0.8rem;
}

.tsl_login_css .login-remember label {
  text-transform: none;
  letter-spacing: 0;
  font-weight: 500;
}

.tsl_login_css .login-remember input[type="checkbox"] {
  width: 12px;
  height: 12px;
  margin-right: 6px;
}

.tsl_login_css .login-password {
  position: relative;
}

.tsl_login_css .login-password input {
  padding-right: 24px;
}

.tsl_login_css .login-password .dashicons {
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translateY(-50%);
  font-size: 1.25rem;
}

.tsl_login_css .login-submit {
  margin: 0;
}

.tsl_login_css .login-submit .button-primary {
  width: 100%;
}

@media (max-width: 767.98px) {
  .tsl_login_css .modal-dialog {
    max-width: min(480px, 92vw);
  }

  .tsl_login_css .modal-header {
    padding: 16px 18px;
  }

  .tsl_login_css .modal-body {
    padding: 18px;
  }

  .tsl_login_css .tsl_wrapper {
    flex-direction: column;
  }

  .tsl_login_css .tsl_inside,
  .tsl_login_css .tsl_inside_content {
    max-width: 100%;
    flex-basis: auto;
  }

  .tsl_login_css .tsl_inside {
    max-height: 200px;
  }

  .tsl_login_css .tsl_login_footer {
    flex-wrap: wrap;
    gap: 10px;
  }
}

/* ===================== THEMES ===================== */

/* DARK */
.ts-v2[data-theme="dark"],
.ts-v2.ts-theme-dark,
.ts-v2[data-theme="dark"] .ts-v2,
.ts-theme-dark .ts-v2,
[data-theme="dark"] .ts-v2 {
  --ts-text: #e2e8f0;                         
  --ts-text-muted: #94a3b8;   
  --ts-text-title: #e2e8f0;                 
  --ts-surface: #0f172a;                       
  --ts-surface-2: #1e293b;  
  --ts-surface-cloud: #273449; 
  --ts-border: #334155; 
  
  /* Primary (main CTAs, links) */
  --ts-primary: #3b82f6;
  --ts-primary-border: #2563eb;
  --ts-primary-hover: #60a5fa; 
  --ts-primary-light: #93c5fd;
  --ts-primary-shadow: 0 6px 16px rgba(59,130,246,.35);
  
  /* Secondary (monetization CTAs, buy/subscribe) */
  --ts-secondary: #2563eb;
  --ts-secondary-hover: #3b82f6;
  --ts-secondary-text: #f8fafc;
  --ts-shadow-btn-secondary: 0 1px 0 rgba(0,0,0,.3), 0 8px 18px rgba(59,130,246,.32);
  --ts-shadow-btn-secondary-hover: 0 10px 20px rgba(0,0,0,.35), 0 10px 20px rgba(59,130,246,.38);

  /* Links */
  --ts-link: #60a5fa;
  --ts-link-hover: #93c5fd;

  /* Semantics */
  --ts-positive: #22c55e;
  --ts-positive-soft: rgba(22,163,74,0.15);
  --ts-positive-border: #16a34a;
  
  --ts-negative: #ef4444;
  --ts-negative-soft: rgba(239,68,68,0.15);
  --ts-negative-border: #dc2626;
  
  --ts-warning: #f59e0b;
  --ts-warning-soft: rgba(245,158,11,0.15);
  --ts-warning-border: #f59e0b;

  /* Countdown chip */
  --ts-countdown-bg: rgba(22,163,74,0.25);
  --ts-countdown-ink: #bbf7d0;

  /* Shadows */
  --ts-shadow: 0 6px 18px rgba(0,0,0,0.4);
  --ts-card-hover-shadow: 0 8px 24px rgba(0,0,0,0.45);

  /* Inputs */
  --ts-input-bg: #1e293b;
  --ts-input-border: #334155;
  --ts-input-placeholder: #64748b;
  --ts-input-text: #f1f5f9;
  --ts-input-focus-border: #3b82f6;
  --ts-input-focus-shadow: rgba(59,130,246,0.35);

  /* Tipster/identity pill */
  --ts-tipster-pill-bg: #1e293b;
  --ts-tipster-pill-text: #93c5fd;
  --ts-tipster-pill-border: #334155;

  /* FREE / PRO badges */
  --ts-badge-free-bg: #064e3b;
  --ts-badge-free-border: #16a34a;
  --ts-badge-free-text: #86efac;

  --ts-badge-pro-bg: #422006;
  --ts-badge-pro-border: #facc15;
  --ts-badge-pro-text: #fde68a;

  /* Widget chip (Profit leaderboard, etc.) */
  --ts-widgets-chip-bg: linear-gradient(180deg, #2563eb 0%, #1e40af 100%);
  --ts-widgets-chip-text: #ffffff;
  --ts-widgets-chip-shadow: 0 2px 6px rgba(37,99,235,.35);

  /* Tables */
  --ts-table-head-bg: #1e293b;
  --ts-table-head-text: #f1f5f9;
  --ts-table-row-hover: #273449;
  --ts-table-border: #334155;

  /* Aurora / hover backgrounds */
  --ts-surface-aurora: #202a3d;
  --ts-surface-feature: #223049;
  --ts-surface-feature-border: #2f3a4f;
  --bs-table-hover-bg: rgba(59,130,246,0.12);
  --bs-table-hover-color: #f1f5f9;

  --ts-gradient-fade-mist: none;
  --ts-surface-mist: none;
  --ts-surface-haze: #1a2233;
}

/* PitchPro */
.ts-v2[data-theme="pitchpro"],
.ts-v2.ts-theme-pitchpro,
.ts-v2[data-theme="pitchpro"] .ts-v2,
.ts-theme-pitchpro .ts-v2,
[data-theme="pitchpro"] .ts-v2 {
  --ts-text: #0f172a;
  --ts-text-muted: #475569;
  --ts-text-title: #0f172a;

  --ts-surface: #ffffff;
  --ts-surface-2: #f4faf6;
  --ts-surface-cloud: #ecfdf5; 
  --ts-surface-aurora: #f7fdf9;
  --ts-surface-feature: #e6faf0;
  --ts-surface-feature-border: #cfe6d9;
  --bs-table-hover-bg: rgba(6, 95, 70, 0.08);
  --bs-table-hover-color: #0f172a;
  --ts-border: #d6e4da;

  /* Primary CTA: deep pitch green */
  --ts-primary: #065f46;
  --ts-primary-border: #047857; 
  --ts-primary-hover: #0a6a50;
  --ts-primary-light: #10b981;
  --ts-primary-shadow: 0 6px 16px rgba(16,185,129,.28);

  /* Secondary CTA: lighter energetic green (Buy/Subscribe/Pay) */
  --ts-secondary: #34d399;
  --ts-secondary-hover: #22c55e;
  --ts-secondary-text: #0f172a;

  --ts-shadow-btn-secondary: 0 1px 0 rgba(0,0,0,0.05), 0 8px 18px rgba(22,163,74,0.28);
  --ts-shadow-btn-secondary-hover: 0 1px 0 rgba(0,0,0,.06), 0 8px 18px rgba(34, 197, 94, .32);

  /* Links */
  --ts-link: #065f46;
  --ts-link-hover: #059669;

  /* Semantics (keep consistent with app logic) */
  --ts-positive: #16a34a;
  --ts-positive-soft: #ecfdf5;
  --ts-positive-border: #bbf7d0;

  --ts-negative: #dc2626;
  --ts-negative-soft: #fef2f2;
  --ts-negative-border: #fecaca;

  --ts-warning: #f59e0b;
  --ts-warning-soft: #fefce8;
  --ts-warning-border: #fde68a;

  /* Countdown chip */
  --ts-countdown-bg: #d1fae5;
  --ts-countdown-ink: #065f46;

  /* Elevation */
  --ts-shadow: 0 6px 18px rgba(6, 95, 70, 0.12);
  --ts-card-hover-shadow: 0 8px 24px rgba(6, 95, 70, 0.16);

  /* Inputs */
  --ts-input-bg: #f9fbf9;
  --ts-input-border: #cfe6d9;
  --ts-input-placeholder: #90a3a0;
  --ts-input-text: #0f172a;
  --ts-input-focus-border: #059669;
  --ts-input-focus-shadow: rgba(5, 150, 105, 0.25);

  /* Tipster/identity pill */
  --ts-tipster-pill-bg: #e7f6ef;
  --ts-tipster-pill-text: #065f46;
  --ts-tipster-pill-border: #bdebd8;

  /* FREE / PRO badges */
  --ts-badge-free-bg: #dcfce7;
  --ts-badge-free-border: #86efac;
  --ts-badge-free-text: #15803d;

  --ts-badge-pro-bg: #fff7d6;
  --ts-badge-pro-border: #facc15;
  --ts-badge-pro-text: #854d0e;

  /* Widget “active” chip (like Profit leaderboard) */
  --ts-widgets-chip-bg: linear-gradient(180deg, #10b981 0%, #047857 100%);
  --ts-widgets-chip-text: #ffffff;
  --ts-widgets-chip-shadow: 0 2px 6px rgba(4, 120, 87, .25);

  --ts-table-head-bg: #f4faf6;
  --ts-table-head-text: #065f46; 
  --ts-table-row-hover: #e8f7f0; 
  --ts-table-border: #d6e4da;
}

/* NAVY PRO */
.ts-v2[data-theme="navypro"],
.ts-v2.ts-theme-navypro,
.ts-v2[data-theme="navypro"] .ts-v2,
.ts-theme-navypro .ts-v2,
[data-theme="navypro"] .ts-v2 {
  --ts-text: #0f172a;
  --ts-text-muted: #475569;
  --ts-text-title: #0f172a;
  --ts-surface: #ffffff;
  --ts-surface-2: #f3f6fc;
  --ts-surface-cloud: #e8efff;
  --ts-border: #d5d9e5;
  --ts-primary: #1e3a8a;
  --ts-primary-border: #1E40AF;
  --ts-primary-hover: #233EA5;
  --ts-primary-light: #3b82f6;
  --ts-primary-shadow: 0 6px 16px rgba(59,130,246,.28);
  --ts-secondary: #38bdf8;
  --ts-secondary-hover: #60a5fa;
  --ts-secondary-text: #0f172a;
  --ts-shadow-btn-secondary:0 1px 0 rgba(0, 0, 0, .06),0 8px 18px rgba(96, 165, 250, .32);
  --ts-shadow-btn-secondary-hover:0 10px 20px rgba(0, 0, 0, .06),0 10px 20px rgba(96, 165, 250, .36);
  --ts-link: #1e3a8a;
  --ts-link-hover: #3b82f6;
  --ts-positive: #16a34a;
  --ts-positive-soft: #ecfdf5;
  --ts-positive-border: #bbf7d0;
  --ts-negative: #dc2626;
  --ts-negative-soft: #fef2f2;
  --ts-negative-border: #fecaca;
  --ts-warning: #f59e0b;
  --ts-warning-soft: #fefce8;
  --ts-warning-border: #fde68a;
  --ts-countdown-bg: #d1fae5;
  --ts-countdown-ink: #065f46;
  --ts-shadow: 0 6px 18px rgba(30,58,138,0.10);
  --ts-card-hover-shadow: 0 8px 24px rgba(30,58,138,0.12);
  --ts-input-bg: #F9FAFB;
  --ts-input-border: #CBD5E1;
  --ts-input-placeholder: #94a3b8;
  --ts-input-text: #0F172A;
  --ts-input-focus-border: #2563EB;
  --ts-input-focus-shadow: rgba(37, 99, 235, 0.25);
  --ts-tipster-pill-bg: #E0E7FF;
  --ts-tipster-pill-text: #1E3A8A;
  --ts-tipster-pill-border: #C7D2FE;
  --ts-badge-free-bg: #DCFCE7;
  --ts-badge-free-border: #86EFAC;
  --ts-badge-free-text: #15803D;
  --ts-badge-pro-bg: #FEF9C3;
  --ts-badge-pro-border: #FACC15;
  --ts-badge-pro-text: #854D0E;
  --ts-widgets-chip-bg: linear-gradient(180deg, #3B82F6 0%, #1E40AF 100%);
  --ts-widgets-chip-text: #fff;
  --ts-widgets-chip-shadow: 0 2px 6px rgba(30, 64, 175, .25);
  --ts-table-head-bg: #f3f6fc;
  --ts-table-head-text: #1e3a8a; 
  --ts-table-row-hover: #e8f0ff;
  --ts-table-border: #d5d9e5;
  --ts-surface-aurora: #f5f8ff;
  --ts-surface-feature: #eaf2ff;
  --ts-surface-feature-border: #d5d9e5;
  --bs-table-hover-bg: rgba(30, 58, 138, 0.08);
  --bs-table-hover-color: #0f172a;
}