.object-cover  { object-fit: cover; }
.object-center { object-position: center; }

.h-full          { height: 100%; }
.h-\[78px\]     { height: 78px; }

.overflow-hidden { overflow: hidden; }

.last\:border-b-0:last-child { border-bottom-width: 0; }

.border                  { border-width: 1px; border-style: solid; }
.border-\[\#004473\]     { border-color: #004473; }

.text-\[\#004473\]        { color: #004473; }
.hover\:bg-\[\#EDEDED\]:hover { background-color: #EDEDED; }

.cursor-pointer { cursor: pointer; }

.disabled\:opacity-60:disabled      { opacity: 0.6; }
.disabled\:cursor-not-allowed:disabled { cursor: not-allowed; }

.transition-colors {
    transition-property: color, background-color, border-color, fill, stroke;
    transition-duration: 150ms;
}

/* --- team templates --- */

/* grid */
.grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (min-width: 768px) {
    .md\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1024px) {
    .lg\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .lg\:flex-row    { flex-direction: row; }
}

/* aspect */
.aspect-square { aspect-ratio: 1 / 1; }

/* type */
.text-xl   { font-size: 1.25rem; line-height: 1.75rem; }

/* spacing */
.space-y-1 > :not([hidden]) ~ :not([hidden]) { margin-top: 0.25rem; }

/* colors */
.bg-\[\#f1f1f1\] { background-color: #f1f1f1; }

/* group-hover utilities (Tailwind v3+ pattern: requires parent .group) */
.group:hover .group-hover\:text-\[\#2384c7\] { color: #2384c7; }
.group:hover .group-hover\:underline         { text-decoration: underline; }

/* hover shadow used by "Back to ..." button */
.hover\:shadow-lg:hover { box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1); }

/* --- single-team --- */
.space-y-2 > :not([hidden]) ~ :not([hidden]) { margin-top: 0.5rem; }
.text-\[\#2384C7\] { color: #2384C7; }
.hover\:underline:hover { text-decoration: underline; }
.whitespace-pre-line { white-space: pre-line; }

#news-detail a { text-decoration:underline }
#news-detail a:hover { text-decoration: none; color: #000 }
