@tailwind base;
@tailwind components;
@tailwind utilities;

/* Per-sport theme tokens — RacketRef "Rally" palette. Each token is an RGB
   triplet consumed by the Tailwind sport-* colours (config/tailwind.config.js),
   so utilities like bg-sport/20, text-sport-soft and from-sport-grad-from
   recolour by the nearest data-sport ancestor. rally.css also derives the
   DaisyUI semantic tokens (--color-primary etc.) from --sport-accent /
   --sport-on-accent, so every btn-primary / badge-primary / text-primary picks
   up the live sport colour automatically.

   The accents are the Rally brand hues (each sport's full ramp is derived from
   that base): squash #2F7BFF, badminton #F2B705, racketball #F4434E,
   racquetball #FF7A1A, tennis #5BBF3A, padel #14C9C9, pickleball #7B5CF0.
   :root is the umbrella default Rally Lime #C9F227 (context-less surfaces only;
   the <body> always resolves data-sport, falling back to squash).

   Semantic roles:
     --sport-accent          core accent, buttons/badges/dots
     --sport-accent-soft     text + icons on dark glass
     --sport-accent-strong   hover/pressed accent
     --sport-ink             body text on tinted surfaces
     --sport-ink-soft        secondary text on tinted surfaces
     --sport-surface-tint    low-alpha tinted card/banner fills
     --sport-gradient-from   feature-card gradient start
     --sport-gradient-to     feature-card gradient end
     --sport-header          header/wordmark accent (nav glow)
     --sport-on-accent       ink/text ON a solid accent fill (DaisyUI primary-content) */
:root {
  /* Umbrella / no sport context = Rally Lime #C9F227, dark ink. Note: the
     <body> always resolves data-sport (squash fallback), so :root applies only
     to truly context-less surfaces (emails, embeds). */
  --sport-accent: 201 242 39;        --sport-accent-soft: 215 245 93;
  --sport-accent-strong: 165 198 32; --sport-ink: 236 250 179;
  --sport-ink-soft: 228 248 147;     --sport-surface-tint: 201 242 39;
  --sport-gradient-from: 125 150 24; --sport-gradient-to: 171 206 33;
  --sport-header: 215 245 93;         --sport-on-accent: 11 12 15;
  --sport-page-from: 17 24 39;       --sport-page-via: 30 41 59;
  --sport-page-to: 17 24 39; /* default dark slate */
  /* Morphing blob colours - umbrella = Rally lime + match-teal energy */
  --blob-1-inner: 215, 245, 93;      --blob-1-mid: 201, 242, 39;
  --blob-1-outer: 165, 198, 32;      --blob-2-inner: 19, 225, 224;
  --blob-2-mid: 79, 215, 215;        --blob-2-outer: 13, 148, 136;
  --blob-3-inner: 201, 242, 39;      --blob-3-mid: 236, 250, 179;
  --blob-3-outer: 215, 245, 93;
}
[data-sport="squash"] { /* Rally blue #2F7BFF — dark page bg */
  --sport-accent: 47 123 255;        --sport-accent-soft: 99 156 255;
  --sport-accent-strong: 39 101 209; --sport-ink: 182 209 255;
  --sport-ink-soft: 151 189 255;     --sport-surface-tint: 47 123 255;
  --sport-gradient-from: 29 76 158;  --sport-gradient-to: 40 105 217;
  --sport-header: 99 156 255;         --sport-on-accent: 255 255 255;
  --sport-page-from: 15 23 42;       --sport-page-via: 30 41 59;
  --sport-page-to: 15 23 42; /* slate-900 / slate-800 */
  /* Morphing blob colours - squash = Rally blue hues */
  --blob-1-inner: 99, 156, 255;      --blob-1-mid: 47, 123, 255;
  --blob-1-outer: 39, 101, 209;      --blob-2-inner: 151, 189, 255;
  --blob-2-mid: 99, 156, 255;        --blob-2-outer: 29, 76, 158;
  --blob-3-inner: 47, 123, 255;      --blob-3-mid: 182, 209, 255;
  --blob-3-outer: 99, 156, 255;
}
[data-sport="badminton"] { /* Rally amber #F2B705 — warm cream page bg */
  --sport-accent: 242 183 5;         --sport-accent-soft: 245 201 68;
  --sport-accent-strong: 198 150 4;  --sport-ink: 250 230 168;
  --sport-ink-soft: 248 219 130;     --sport-surface-tint: 242 183 5;
  --sport-gradient-from: 190 145 8;  --sport-gradient-to: 235 185 15;
  --sport-header: 245 201 68;         --sport-on-accent: 26 20 0;
  --sport-page-from: 45 35 20;       --sport-page-via: 55 45 25;
  --sport-page-to: 40 32 18; /* warm brown/sepia tones */
  /* Morphing blob colours - badminton = Rally amber/gold */
  --blob-1-inner: 245, 201, 68;      --blob-1-mid: 242, 183, 5;
  --blob-1-outer: 198, 150, 4;       --blob-2-inner: 248, 219, 130;
  --blob-2-mid: 245, 201, 68;        --blob-2-outer: 150, 113, 3;
  --blob-3-inner: 242, 183, 5;       --blob-3-mid: 250, 230, 168;
  --blob-3-outer: 245, 201, 68;
}
[data-sport="racketball"] { /* Rally red #F4434E — dark rose page bg */
  --sport-accent: 244 67 78;         --sport-accent-soft: 247 114 122;
  --sport-accent-strong: 200 55 64;  --sport-ink: 251 189 193;
  --sport-ink-soft: 249 161 167;     --sport-surface-tint: 244 67 78;
  --sport-gradient-from: 151 42 48;  --sport-gradient-to: 207 57 66;
  --sport-header: 247 114 122;        --sport-on-accent: 255 255 255;
  --sport-page-from: 35 15 18;       --sport-page-via: 50 20 25;
  --sport-page-to: 30 12 15; /* deep rose/maroon */
  /* Morphing blob colours - racketball = Rally red/rose */
  --blob-1-inner: 247, 114, 122;     --blob-1-mid: 244, 67, 78;
  --blob-1-outer: 200, 55, 64;       --blob-2-inner: 249, 161, 167;
  --blob-2-mid: 247, 114, 122;       --blob-2-outer: 151, 42, 48;
  --blob-3-inner: 244, 67, 78;       --blob-3-mid: 251, 189, 193;
  --blob-3-outer: 247, 114, 122;
}
[data-sport="racquetball"] { /* Rally orange #FF7A1A — warm amber page bg */
  --sport-accent: 255 122 26;        --sport-accent-soft: 255 155 83;
  --sport-accent-strong: 209 100 21; --sport-ink: 255 208 175;
  --sport-ink-soft: 255 189 141;     --sport-surface-tint: 255 122 26;
  --sport-gradient-from: 158 76 16;  --sport-gradient-to: 217 104 22;
  --sport-header: 255 155 83;         --sport-on-accent: 42 20 0;
  --sport-page-from: 45 25 12;       --sport-page-via: 55 32 15;
  --sport-page-to: 40 22 10; /* burnt orange/terracotta */
  /* Morphing blob colours - racquetball = Rally orange/tangerine */
  --blob-1-inner: 255, 155, 83;      --blob-1-mid: 255, 122, 26;
  --blob-1-outer: 209, 100, 21;      --blob-2-inner: 255, 189, 141;
  --blob-2-mid: 255, 155, 83;        --blob-2-outer: 158, 76, 16;
  --blob-3-inner: 255, 122, 26;      --blob-3-mid: 255, 208, 175;
  --blob-3-outer: 255, 155, 83;
}
[data-sport="tennis"] { /* Rally green #5BBF3A — forest page bg */
  --sport-accent: 91 191 58;         --sport-accent-soft: 132 207 107;
  --sport-accent-strong: 75 157 48;  --sport-ink: 198 233 186;
  --sport-ink-soft: 173 223 157;     --sport-surface-tint: 91 191 58;
  --sport-gradient-from: 56 118 36;  --sport-gradient-to: 77 162 49;
  --sport-header: 132 207 107;        --sport-on-accent: 7 33 10;
  --sport-page-from: 18 35 22;       --sport-page-via: 25 45 28;
  --sport-page-to: 15 30 18; /* deep forest green */
  /* Morphing blob colours - tennis = Rally green/chartreuse */
  --blob-1-inner: 132, 207, 107;     --blob-1-mid: 91, 191, 58;
  --blob-1-outer: 75, 157, 48;       --blob-2-inner: 173, 223, 157;
  --blob-2-mid: 132, 207, 107;       --blob-2-outer: 56, 118, 36;
  --blob-3-inner: 91, 191, 58;       --blob-3-mid: 198, 233, 186;
  --blob-3-outer: 132, 207, 107;
}
[data-sport="padel"] { /* Rally teal #14C9C9 — deep teal page bg */
  --sport-accent: 20 201 201;        --sport-accent-soft: 79 215 215;
  --sport-accent-strong: 16 165 165; --sport-ink: 173 236 236;
  --sport-ink-soft: 138 228 228;     --sport-surface-tint: 20 201 201;
  --sport-gradient-from: 12 125 125; --sport-gradient-to: 17 171 171;
  --sport-header: 79 215 215;         --sport-on-accent: 4 35 31;
  --sport-page-from: 12 30 32;       --sport-page-via: 18 40 42;
  --sport-page-to: 10 25 28; /* deep teal/cyan */
  /* Morphing blob colours - padel = Rally teal/cyan/aqua */
  --blob-1-inner: 79, 215, 215;      --blob-1-mid: 20, 201, 201;
  --blob-1-outer: 16, 165, 165;      --blob-2-inner: 138, 228, 228;
  --blob-2-mid: 79, 215, 215;        --blob-2-outer: 12, 125, 125;
  --blob-3-inner: 20, 201, 201;      --blob-3-mid: 173, 236, 236;
  --blob-3-outer: 79, 215, 215;
}
[data-sport="pickleball"] { /* Rally violet #7B5CF0 — deep violet page bg */
  --sport-accent: 123 92 240;        --sport-accent-soft: 156 133 244;
  --sport-accent-strong: 101 75 197; --sport-ink: 209 198 250;
  --sport-ink-soft: 189 174 248;     --sport-surface-tint: 123 92 240;
  --sport-gradient-from: 76 57 149;  --sport-gradient-to: 105 78 204;
  --sport-header: 156 133 244;        --sport-on-accent: 255 255 255;
  --sport-page-from: 25 20 45;       --sport-page-via: 35 28 55;
  --sport-page-to: 22 18 40; /* deep violet/purple */
  /* Morphing blob colours - pickleball = Rally violet/purple/indigo */
  --blob-1-inner: 156, 133, 244;     --blob-1-mid: 123, 92, 240;
  --blob-1-outer: 101, 75, 197;      --blob-2-inner: 189, 174, 248;
  --blob-2-mid: 156, 133, 244;       --blob-2-outer: 76, 57, 149;
  --blob-3-inner: 123, 92, 240;      --blob-3-mid: 209, 198, 250;
  --blob-3-outer: 156, 133, 244;
}

/*

@layer components {
  .btn-primary {
    @apply py-2 px-4 bg-blue-200;
  }
}

*/

/* Override default DaisyUI styles where needed */
.modal-box {
  max-width: none !important;
  width: auto !important;
}

/* Hide scrollbar but keep functionality */
.scrollbar-hide {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.scrollbar-hide::-webkit-scrollbar {
  display: none;
}

