// Import Bootstrap & Fontawesome @import '~bootstrap/scss/bootstrap'; @import '~@fortawesome/fontawesome-free/scss/fontawesome'; @import '~@fortawesome/fontawesome-free/scss/solid'; @import 'croppie/croppie.css'; // Color Variables $primary-bg: linear-gradient(135deg, #2c2c2c, #1a1a1a); // Dark gray blend $secondary-bg: linear-gradient(135deg, #3b3b3b, #555555); // Muted gray $accent-color: #c89c0a; // Warm orange $light-gray: #f1f1f1; // Light gray for text and borders $dark-gray: #333333; // Neutral dark gray $white: #ffffff; // Pure white $black: #000000; // Pure black $shadow-color: rgba(0, 0, 0, 0.2); // Box shadow color $button-hover-color: lighten($accent-color, 10%); // Lighter accent for hover // Typography $font-family-game: 'Lato', sans-serif; body { font-family: $font-family-game; background: $primary-bg; color: $light-gray; margin: 0; padding: 0; } header { background-color: $secondary-bg; padding: 1.5rem; text-align: center; h1 { color: $accent-color; font-size: 2.5rem; } nav a { color: $light-gray; text-decoration: none; margin: 0 15px; &:hover { color: $accent-color; } } } footer { background: $primary-bg; text-align: center; padding: 1rem; position: relative; span { color: $accent-color; } } // General Container Styling .container { max-width: 1200px; margin: 0 auto; text-align: center; .row { margin: 0 -15px; // Gutter fix for row spacing } } // Carousel Styling #participantCarousel { .carousel-inner { display: flex; align-items: center; justify-content: center; background: $secondary-bg; padding: 1.5rem; border-radius: 8px; box-shadow: 0 8px 15px $shadow-color; .carousel-item { display: flex; flex-wrap: wrap; // Ensure responsiveness justify-content: space-around; align-items: center; .col-md-6 { text-align: center; padding: 15px; img { width: 150px; // Image size for participant profiles height: 150px; border-radius: 50%; // Circular images object-fit: cover; margin-bottom: 10px; box-shadow: 0 4px 8px $shadow-color; } h5 { margin-top: 10px; font-size: 1.2rem; color: $white; } } } } .carousel-control-prev, .carousel-control-next { display: inline-block !important; // Make navigation visible again width: 5%; height: auto; background-color: rgba($black, 0.5); // Semi-transparent black border-radius: 50%; span { font-size: 1.5rem; color: $white; } } } // Goal Button Controls .goal-controls-home, .goal-controls-away { width: auto; display: flex; justify-content: center; margin: 1rem; button { padding: 10px 20px; font-size: 1rem; background-color: $accent-color; color: $white; border: none; border-radius: 5px; box-shadow: 0 3px 6px $shadow-color; transition: all 0.3s ease; &:hover { background-color: $button-hover-color; transform: translateY(-2px); } } } // Card Styling for Layout .card { border: none; border-radius: 8px; box-shadow: 0 8px 15px $shadow-color; background: $dark-gray; padding: 1.5rem; .card-header { background-color: $accent-color; color: $white; font-size: 1.5rem; font-weight: bold; border-radius: 8px 8px 0 0; padding: 1rem; } .card-body { display: flex; flex-direction: column; align-items: center; margin-top: 1rem; } } /* General carousel styles scoped by ID */ #goalCarouselHome, #goalCarouselAway { .carousel-control-prev, .carousel-control-next { top: 50%; width: auto; /* Ensure the buttons are sized automatically */ height: auto; /* Ensure the buttons adjust to text */ padding: 0; /* Remove extra padding around the controls */ background: none !important; /* Remove Bootstrap's default control background */ border: none !important; /* Remove any borders */ box-shadow: none !important; /* Prevent shadowing on controls */ transform: none !important; /* Ensure no flipping/scaling on hover */ } .carousel-control-prev { left: -20px; /* Adjust positioning for the left control */ transform: none !important; /* Ensure no flipping/scaling on hover */ } .carousel-control-next { right: -20px; /* Adjust positioning for the right control */ transform: none !important; /* Ensure no flipping/scaling on hover */ } .carousel-control-prev:hover, .carousel-control-next:hover { background: none !important; /* Ensure no background appears on hover */ transform: none !important; /* Prevent any unexpected transformations */ } .custom-carousel-symbol { font-size: 1.5rem; /* Size of the |< or >| symbols */ color: #000; /* Color for your custom symbols */ font-weight: bold; display: inline-block; /* Prevent text wrapping or alignment issues */ transition: none; /* Prevent any animations */ transform: none !important; /* Ensure no flipping/scaling on hover */ } .carousel-control-prev:hover .custom-carousel-symbol, .carousel-control-next:hover .custom-carousel-symbol { transform: none !important; /* Ensure no flipping/scaling on hover */ } /* Stable dimensions for the controls to prevent flipping or misalignment */ .carousel-control-prev, .carousel-control-next { min-width: 2rem; /* Set a stable width */ height: 2rem; margin: 5px; transform: none !important; /* Ensure no flipping/scaling on hover */ } .carousel-control-prev:focus, .carousel-control-next:focus { outline: none; /* Remove focus outlines */ transform: none !important; /* Ensure no flipping/scaling on hover */ } .carousel-inner { overflow: hidden; /* Ensure no overflow behavior */ transform: none !important; /* Ensure no flipping/scaling on hover */ } } // Typography Adjustments h1 { font-size: 2.5rem; color: $accent-color; text-shadow: 0px 4px 6px $shadow-color; } h5 { font-size: 1.25rem; color: $white; } // Responsive Adjustments @media (max-width: 768px) { .carousel-inner .carousel-item { flex-direction: column; .col-md-6 { margin-bottom: 15px; } } button { font-size: 0.9rem; } } // hovering for the tournament tree .hover-container { position: relative; } .hover-container.special-card-body { min-height: 400px; } /* Team container with default styles */ .team-container { display: flex; flex-direction: column; align-items: center; position: relative; /* Keep content aligned inside container */ text-align: center; } /* Default State: Team images and names visible, participant content hidden */ .team-image, .team-name { display: block; opacity: 1; transition: opacity 0.3s ease-in-out; } .participant-image, .participant-ident { display: none; opacity: 0; transition: opacity 0.3s ease-in-out; } /* Hover: Trigger hover from the parent to apply changes to both teams */ .hover-container:hover .team-image, .hover-container:hover .team-name { display: none; opacity: 0; /* Fade out team content */ } .hover-container:hover .participant-image, .hover-container:hover .participant-ident { display: block; opacity: 1; /* Fade in participant content */ } // form .hidden { display: none; } .cropped-image-upload .cropper-wrapper { background-color: grey; overflow: hidden; } .cropped-image-upload .cropper-wrapper .cropper { background-color: grey; display: none; } .cropped-image-upload .cropper-wrapper.ready .cropper { display: block; } .cropped-image-upload input[type="file"] { position: absolute; left: 0; top: 0; width: 100%; height: 100%; opacity: 0; } td.test { background: $primary-bg; /* Light grey (Bootstrap usually uses this) */ color: #212529; /* Dark text to ensure readability */ border: none; .fixture{ padding: 0.5rem; //background: $accent-color; //color: white; } } .fixed-width-card { width: 320px; // Default (desktop view) max-width: 100%; // Prevent overflow on smaller containers height: 320px; // Prevent overflow on smaller containers max-height: 100%; // Prevent overflow on smaller containers @media (max-width: 768px) { width: 100%; // Full-width cards for mobile } } #goal-overlay { z-index: 1050; /* Above Bootstrap modals */ } .goal-gif { max-width: 80%; /* Responsive scaling */ max-height: 80%; /* Ensure it fits well */ border-radius: 10px; /* Add rounded corners */ box-shadow: 0 0 10px rgba(0, 0, 0, 0.5); /* Optional: subtle shadow */ } .modal-content { color: black; }