@import url(https://fonts.googleapis.com/css2?family=Lato&display=swap);

@import url(https://fonts.googleapis.com/css2?family=Open+Sans&display=swap);

@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css);

/*! tailwindcss v3.4.11 | MIT License | https://tailwindcss.com*/
*,
:after,
:before {
  border: 0 solid #e5e7eb;
  box-sizing: border-box;
}
:after,
:before {
  --tw-content: "";
}
:host,
html {
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  font-family:
    Open Sans,
    ui-sans-serif,
    system-ui,
    sans-serif,
    Apple Color Emoji,
    Segoe UI Emoji,
    Segoe UI Symbol,
    Noto Color Emoji;
  font-feature-settings: normal;
  font-variation-settings: normal;
  -moz-tab-size: 4;
  tab-size: 4;
  -webkit-tap-highlight-color: transparent;
}
body {
  line-height: inherit;
  margin: 0;
}
hr {
  border-top-width: 1px;
  color: inherit;
  height: 0;
}
abbr:where([title]) {
  text-decoration: underline dotted;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}
a {
  color: inherit;
  text-decoration: inherit;
}
b,
strong {
  font-weight: bolder;
}
code,
kbd,
pre,
samp {
  font-family:
    ui-monospace,
    SFMono-Regular,
    Menlo,
    Monaco,
    Consolas,
    Liberation Mono,
    Courier New,
    monospace;
  font-feature-settings: normal;
  font-size: 1em;
  font-variation-settings: normal;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
table {
  border-collapse: collapse;
  border-color: inherit;
  text-indent: 0;
}
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font-family: inherit;
  font-feature-settings: inherit;
  font-size: 100%;
  font-variation-settings: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  margin: 0;
  padding: 0;
}
button,
select {
  text-transform: none;
}
button,
input:where([type="button"]),
input:where([type="reset"]),
input:where([type="submit"]) {
  -webkit-appearance: button;
  background-color: transparent;
  background-image: none;
}
:-moz-focusring {
  outline: auto;
}
:-moz-ui-invalid {
  box-shadow: none;
}
progress {
  vertical-align: baseline;
}
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}
[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
summary {
  display: list-item;
}
blockquote,
dd,
dl,
figure,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
p,
pre {
  margin: 0;
}
fieldset {
  margin: 0;
}
fieldset,
legend {
  padding: 0;
}
menu,
ol,
ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
dialog {
  padding: 0;
}
textarea {
  resize: vertical;
}
input::placeholder,
textarea::placeholder {
  color: #9ca3af;
  opacity: 1;
}
[role="button"],
button {
  cursor: pointer;
}
:disabled {
  cursor: default;
}
audio,
canvas,
embed,
iframe,
img,
object,
svg,
video {
  display: block;
  vertical-align: middle;
}
img,
video {
  height: auto;
  max-width: 100%;
}
[hidden] {
  display: none;
}
*,
:after,
:before {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x: ;
  --tw-pan-y: ;
  --tw-pinch-zoom: ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position: ;
  --tw-gradient-via-position: ;
  --tw-gradient-to-position: ;
  --tw-ordinal: ;
  --tw-slashed-zero: ;
  --tw-numeric-figure: ;
  --tw-numeric-spacing: ;
  --tw-numeric-fraction: ;
  --tw-ring-inset: ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgba(59, 130, 246, 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur: ;
  --tw-brightness: ;
  --tw-contrast: ;
  --tw-grayscale: ;
  --tw-hue-rotate: ;
  --tw-invert: ;
  --tw-saturate: ;
  --tw-sepia: ;
  --tw-drop-shadow: ;
  --tw-backdrop-blur: ;
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
  --tw-contain-size: ;
  --tw-contain-layout: ;
  --tw-contain-paint: ;
  --tw-contain-style: ;
}
::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x: ;
  --tw-pan-y: ;
  --tw-pinch-zoom: ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position: ;
  --tw-gradient-via-position: ;
  --tw-gradient-to-position: ;
  --tw-ordinal: ;
  --tw-slashed-zero: ;
  --tw-numeric-figure: ;
  --tw-numeric-spacing: ;
  --tw-numeric-fraction: ;
  --tw-ring-inset: ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgba(59, 130, 246, 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur: ;
  --tw-brightness: ;
  --tw-contrast: ;
  --tw-grayscale: ;
  --tw-hue-rotate: ;
  --tw-invert: ;
  --tw-saturate: ;
  --tw-sepia: ;
  --tw-drop-shadow: ;
  --tw-backdrop-blur: ;
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
  --tw-contain-size: ;
  --tw-contain-layout: ;
  --tw-contain-paint: ;
  --tw-contain-style: ;
}
#webcrumbs .absolute {
  position: absolute;
}
#webcrumbs .relative {
  position: relative;
}
#webcrumbs .-bottom-16 {
  bottom: -64px;
}
#webcrumbs .left-4 {
  left: 16px;
}
#webcrumbs .col-span-1 {
  grid-column: span 1 / span 1;
}
#webcrumbs .float-right {
  float: right;
}
#webcrumbs .mb-1 {
  margin-bottom: 4px;
}
#webcrumbs .mb-2 {
  margin-bottom: 8px;
}
#webcrumbs .mb-4 {
  margin-bottom: 16px;
}
#webcrumbs .mt-2 {
  margin-top: 8px;
}
#webcrumbs .mt-4 {
  margin-top: 16px;
}
#webcrumbs .mt-8 {
  margin-top: 32px;
}
#webcrumbs .flex {
  display: flex;
}
#webcrumbs .grid {
  display: grid;
}
#webcrumbs .h-24 {
  height: 96px;
}
#webcrumbs .h-4 {
  height: 16px;
}
#webcrumbs .h-\[200px\] {
  height: 200px;
}
#webcrumbs .w-24 {
  width: 96px;
}
#webcrumbs .w-6 {
  width: 24px;
}
#webcrumbs .w-full {
  width: 100%;
}
#webcrumbs .max-w-\[800px\] {
  max-width: 800px;
}
#webcrumbs .transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
#webcrumbs .cursor-pointer {
  cursor: pointer;
}
#webcrumbs .list-none {
  list-style-type: none;
}
#webcrumbs .grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
#webcrumbs .grid-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
#webcrumbs .flex-row {
  flex-direction: row;
}
#webcrumbs .flex-col {
  flex-direction: column;
}
#webcrumbs .items-center {
  align-items: center;
}
#webcrumbs .justify-between {
  justify-content: space-between;
}
#webcrumbs .gap-2 {
  gap: 8px;
}
#webcrumbs .gap-4 {
  gap: 16px;
}
#webcrumbs :is(.space-y-2 > :not([hidden]) ~ :not([hidden])) {
  --tw-space-y-reverse: 0;
  margin-bottom: calc(8px * var(--tw-space-y-reverse));
  margin-top: calc(8px * (1 - var(--tw-space-y-reverse)));
}
#webcrumbs :is(.divide-y > :not([hidden]) ~ :not([hidden])) {
  --tw-divide-y-reverse: 0;
  border-bottom-width: calc(1px * var(--tw-divide-y-reverse));
  border-top-width: calc(1px * (1 - var(--tw-divide-y-reverse)));
}
#webcrumbs .overflow-hidden {
  overflow: hidden;
}
#webcrumbs .overflow-x-auto {
  overflow-x: auto;
}
#webcrumbs .rounded-full {
  border-radius: 9999px;
}
#webcrumbs .rounded-lg {
  border-radius: 24px 24px 24px 24px !important; /* All corners */
}
#webcrumbs .rounded-xl {
  border-radius: 24px !important; /* Override existing value */
}
#webcrumbs .border-4 {
  border-width: 4px;
}
#webcrumbs .border-white {
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity));
}
#webcrumbs .bg-blue-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(239 246 255 / var(--tw-bg-opacity));
}

#webcrumbs .bg-gray-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity));
}
#webcrumbs .bg-gray-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
}
#webcrumbs .bg-orange-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(255 247 237 / var(--tw-bg-opacity));
}
#webcrumbs .bg-white {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
#webcrumbs .bg-yellow-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 252 232 / var(--tw-bg-opacity));
}
#webcrumbs .bg-gradient-to-r {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
}
/*
#webcrumbs .from-blue-600 {
  --tw-gradient-from: #2563eb var(--tw-gradient-from-position);
  --tw-gradient-to: rgba(37, 99, 235, 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
#webcrumbs .to-blue-800 {
  --tw-gradient-to: #1e40af var(--tw-gradient-to-position);
}*/

#webcrumbs .from-blue-600 {
  --tw-gradient-from: #B8BEC5 var(--tw-gradient-from-position); /* Lighter gray */
  --tw-gradient-to: rgba(184, 190, 197, 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

#webcrumbs .to-blue-800 {
  --tw-gradient-to: #9AA2AD var(--tw-gradient-to-position); /* Darker gray */
}

#webcrumbs .p-2 {
  padding: 8px;
}
#webcrumbs .p-3 {
  padding: 12px;
}
#webcrumbs .p-4 {
  padding: 16px;
}
#webcrumbs .px-4 {
  padding-left: 16px;
  padding-right: 16px;
}
#webcrumbs .pb-8 {
  padding-bottom: 32px;
}
#webcrumbs .pt-20 {
  padding-top: 80px;
}
#webcrumbs .text-left {
  text-align: left;
}
#webcrumbs .text-center {
  text-align: center;
}
#webcrumbs .text-2xl {
  font-size: 24px;
  line-height: 31.200000000000003px;
}
#webcrumbs .text-lg {
  font-size: 18px;
  line-height: 27px;
}
#webcrumbs .text-sm {
  font-size: 14px;
  line-height: 21px;
}
#webcrumbs .text-xl {
  font-size: 20px;
  line-height: 28px;
}
#webcrumbs .text-xs {
  font-size: 12px;
  line-height: 19.200000000000003px;
}
#webcrumbs .font-bold {
  font-weight: 700;
}
#webcrumbs .font-semibold {
  font-weight: 600;
}
#webcrumbs .text-gray-600 {
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity));
}
#webcrumbs .text-gray-700 {
  --tw-text-opacity: 1;
  color: rgb(55 65 81 / var(--tw-text-opacity));
}
#webcrumbs .shadow-lg {
  --tw-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1),
    0 4px 6px -4px rgba(0, 0, 0, 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color),
    0 4px 6px -4px var(--tw-shadow-color);
}
#webcrumbs .shadow-lg,
#webcrumbs .shadow-sm {
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
#webcrumbs .shadow-sm {
  --tw-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
}
#webcrumbs .transition-all {
  transition-duration: 0.15s;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
#webcrumbs .transition-colors {
  transition-duration: 0.15s;
  transition-property: color, background-color, border-color,
    text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
#webcrumbs .transition-transform {
  transition-duration: 0.15s;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
#webcrumbs .duration-300 {
  transition-duration: 0.3s;
}
#webcrumbs {
  font-family: Open Sans !important;
  font-size: 16px !important;
}
#webcrumbs .hover\:scale-105:hover {
  --tw-scale-x: 1.05;
  --tw-scale-y: 1.05;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
#webcrumbs .hover\:bg-gray-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity));
}
#webcrumbs .hover\:bg-gray-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
}
#webcrumbs .hover\:text-pink-500:hover {
  --tw-text-opacity: 1;
  color: rgb(236 72 153 / var(--tw-text-opacity));
}
#webcrumbs .hover\:shadow-lg:hover {
  --tw-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1),
    0 4px 6px -4px rgba(0, 0, 0, 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color),
    0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
#webcrumbs :is(.group[open] .group-open\:rotate-180) {
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
@media (min-width: 768px) {
  #webcrumbs .md\:left-8 {
    left: 32px;
  }
  #webcrumbs .md\:col-span-2 {
    grid-column: span 2 / span 2;
  }
  #webcrumbs .md\:h-32 {
    height: 128px;
  }
  #webcrumbs .md\:w-32 {
    width: 128px;
  }
  #webcrumbs .md\:grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  #webcrumbs .md\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  #webcrumbs .md\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  #webcrumbs .md\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  #webcrumbs .md\:flex-row {
    flex-direction: row;
  }
  #webcrumbs .md\:items-start {
    align-items: flex-start;
  }
  #webcrumbs .md\:justify-end {
    justify-content: flex-end;
  }
  #webcrumbs .md\:justify-between {
    justify-content: space-between;
  }
  #webcrumbs .md\:gap-8 {
    gap: 32px;
  }
  #webcrumbs .md\:p-3 {
    padding: 12px;
  }
  #webcrumbs .md\:p-4 {
    padding: 16px;
  }
  #webcrumbs .md\:p-6 {
    padding: 24px;
  }
  #webcrumbs .md\:px-8 {
    padding-left: 32px;
    padding-right: 32px;
  }
  #webcrumbs .md\:text-right {
    text-align: right;
  }
  #webcrumbs .md\:text-2xl {
    font-size: 24px;
    line-height: 31.200000000000003px;
  }
  #webcrumbs .md\:text-3xl {
    font-size: 30px;
    line-height: 36px;
  }
  #webcrumbs .md\:text-base {
    font-size: 16px;
    line-height: 25.6px;
  }
  #webcrumbs .md\:text-sm {
    font-size: 14px;
    line-height: 21px;
  }
  #webcrumbs .md\:text-xl {
    font-size: 20px;
    line-height: 28px;
  }
}

body {
  line-height: inherit;
  padding: 24px;
  display: flex;
  flex-direction: column;
  min-width: 100vw;
  min-height: 100vh;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #ffffff, #d4d4d4);
}

/* Remove side padding on mobile */
@media (max-width: 767px) {
  body {
    padding: 12px 0;
  }
}

/* Add a new rule for the profile container */
.profile-container {
  border-radius: 24px !important;
  overflow: hidden !important;
  background: white;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

/* If using the existing rounded-xl class: */
#webcrumbs .rounded-xl {
  border-radius: 36px 36px 36px 36px; /* Was previously 36px for all corners */
}

.profile-header {
    border-radius: 24px 24px 0 0 !important;
}

.profile-content {
    border-radius: 0 0 24px 24px !important;
}

/* If using a specific profile container class */
.profile-card {
    border-radius: 24px !important;
}

/* For header section if separate */
.profile-header {
    border-radius: 24px 24px 0 0 !important;
}

/* For any top-level container */
.main-container {
    border-radius: 24px !important;
    overflow: hidden; /* Ensures child elements respect the border radius */
}

/* Add this at the end of the file */
.profile-container {
    border-radius: 24px !important;
    overflow: hidden !important;
    background: white;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

/* If using a different container class */
.main-content {
    border-radius: 24px 24px 24px 24px !important;
    overflow: hidden;
}

/* For the main container */
#webcrumbs > div:first-child {
    border-radius: 24px !important;
    overflow: hidden;
}

/* Ensure consistent spacing between collapsible sections */
details.group {
  margin-top: 2rem !important;
  margin-bottom: 0 !important;
}

details.group + details.group {
  margin-top: 2rem !important;
}

/* Add subtle margin between main sections for better spacing */
.bg-gray-50.rounded-xl {
  margin-bottom: 1rem;
}

/* Hidden class for competition rows */
.competition-row.hidden {
  display: none !important;
}

/* Title grid - desktop layout */
.titles-grid-mobile {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 0.5rem;
}

/* Competition History table column widths - desktop only */
@media (min-width: 768px) {
  .history-table table th:nth-child(1),
  .history-table table td:nth-child(1) {
    width: 10% !important; /* Year - narrower */
  }
  
  .history-table table th:nth-child(2),
  .history-table table td:nth-child(2) {
    width: 40% !important; /* Competition - more space */
  }
  
  .history-table table th:nth-child(3),
  .history-table table td:nth-child(3) {
    width: 40% !important; /* Division - more space */
  }
  
  .history-table table th:nth-child(4),
  .history-table table td:nth-child(4) {
    width: 10% !important; /* Place - 40% narrower (was ~18%, now 10%) */
  }
}

/* Expand button styling - matching fighter.html */
.expand-btn-public {
  background: rgba(156, 163, 175, 0.1);
  color: #4b5563;
  border: 1px solid rgba(156, 163, 175, 0.3);
  padding: 6px 12px;
  border-radius: 4px;
  cursor: pointer;
  font-size: 0.75rem;
  transition: all 0.2s ease;
}

.expand-btn-public:hover {
  background: rgba(156, 163, 175, 0.2);
  border-color: rgba(156, 163, 175, 0.5);
}

/* Fix font size hierarchy - summary should be larger than table headers */
details summary {
  font-size: 1.125rem !important;
  line-height: 1.75rem !important;
  font-weight: 700 !important;
}

/* Make h3 section headings same size as summary headings */
.bg-gray-50 h3 {
  font-size: 1.125rem !important;
  line-height: 1.75rem !important;
  font-weight: 700 !important;
}

/* Table styles with proper sizing */
details table {
  font-size: 14px;
  width: 100%;
  border-spacing: 0;
  border-collapse: collapse;
}

details th {
  font-size: 13px;
  padding: 8px 6px;
  font-weight: 600;
}

details td {
  font-size: 14px;
  padding: 8px 6px;
}

/* Performance Statistics & Medal Totals - more compact on all screens */
.grid.grid-cols-2.md\:grid-cols-4 > div p:first-child {
  font-size: 1.5rem !important; /* Emoji/icon size */
  margin: 0 !important;
  line-height: 1 !important;
}

.grid.grid-cols-2.md\:grid-cols-4 > div p:nth-child(2) {
  font-size: 1rem !important; /* Number size */
  margin: 0.35rem 0 !important;
  line-height: 1.2 !important;
}

.grid.grid-cols-2.md\:grid-cols-4 > div p:last-child {
  font-size: 0.75rem !important; /* Label size */
  margin: 0 !important;
  line-height: 1.2 !important;
}

.grid.grid-cols-2.md\:grid-cols-4 > div {
  padding: 0.85rem !important; /* Reduce padding */
}

/* Mobile responsive improvements */
@media (max-width: 767px) {
  /* Reduce body side padding on mobile */
  body {
    padding: 8px 0 !important;
  }
  
  /* Fix main container padding on mobile */
  .main-page-container {
    padding: 0 5px !important;
  }
  
  /* Reduce webcrumbs padding on mobile */
  #webcrumbs .px-4 {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
  
  #webcrumbs .p-4 {
    padding: 12px !important;
  }
  
  #webcrumbs .md\:p-4 {
    padding: 12px !important;
  }
  
  .overflow-x-auto {
    -webkit-overflow-scrolling: touch;
    margin: 0;
    padding: 0;
    width: 100%;
  }

  table {
    display: table;
    width: 100%;
    table-layout: fixed;
  }

  /* Better font sizing for tables on mobile */
  details table {
    font-size: 12px !important;
  }
  
  details th {
    font-size: 12px !important;
    padding: 6px 4px !important;
    font-weight: 600 !important;
  }
  
  details td {
    font-size: 12px !important;
    padding: 6px 4px !important;
  }

  /* Allow table cells to increase height to fit content */
  details td, details th {
    height: auto;
    white-space: normal;
    word-break: break-word;
  }
  
  /* Make summary headings appropriate size on mobile */
  details summary {
    font-size: 1rem !important;
    line-height: 1.5rem !important;
  }
  
  /* Make h3 section headings same size as summary headings on mobile */
  .bg-gray-50 h3 {
    font-size: 1rem !important;
    line-height: 1.5rem !important;
    font-weight: 700 !important;
  }
  
  /* Reduce action bar padding */
  .action-bar {
    margin-bottom: 12px !important;
  }
  
  /* Expand button mobile sizing */
  .expand-btn-public {
    font-size: 0.7rem !important;
    padding: 5px 10px !important;
  }
  
  /* Adjust titles grid for mobile - always 2 columns */
  .titles-grid-mobile {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 0.4rem !important;
  }
  
  /* Title cards - allow height to grow, fixed width */
  .titles-grid-mobile > div {
    padding: 0.4rem 0.5rem !important;
    font-size: 0.75rem !important;
    gap: 0.25rem !important;
    min-height: auto !important;
    height: auto !important;
    align-items: flex-start !important;
  }
  
  /* Title text - wraps to multiple lines if needed */
  .titles-grid-mobile > div span:first-child {
    font-size: 0.75rem !important;
    line-height: 1.3 !important;
    flex: 1 !important;
    min-width: 0 !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    white-space: normal !important;
    hyphens: none !important; /* No hyphenation */
  }
  
  /* Count + trophy - stays on one line, aligned to top */
  .titles-grid-mobile > div span:last-child {
    font-size: 0.75rem !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
    margin-left: 0.25rem !important;
    line-height: 1.3 !important;
  }
  
  /* Performance Statistics & Medal Totals - compact on mobile - 4 per row */
  .grid.grid-cols-2.md\:grid-cols-4 {
    grid-template-columns: repeat(4, 1fr) !important; /* Force 4 columns on mobile */
    gap: 0.3rem !important;
  }
  
  .grid.grid-cols-2.md\:grid-cols-4 > div p:first-child {
    font-size: 1rem !important; /* Emoji/icon size - match table text */
  }
  
  .grid.grid-cols-2.md\:grid-cols-4 > div p:nth-child(2) {
    font-size: 0.75rem !important; /* Number size - match table text */
    margin: 0.15rem 0 !important;
    font-weight: 600 !important;
  }
  
  .grid.grid-cols-2.md\:grid-cols-4 > div p:last-child {
    font-size: 0.65rem !important; /* Label size - slightly smaller than table text */
    line-height: 1.1 !important;
  }
  
  .grid.grid-cols-2.md\:grid-cols-4 > div {
    padding: 0.35rem 0.2rem !important; /* Slightly more padding */
  }
}
