﻿/* Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification
for details on configuring this project to bundle and minify static web assets. */

a.navbar-brand {
    white-space: normal;
    text-align: center;
    word-break: break-all;
}

/* Provide sufficient contrast against white background */
a {
    color: #FFD800;
    text-decoration: underline;
}

    /* Hover/focus/active states */
    a:hover,
    a:focus,
    a:active {
        color: #e6be00; /* slightly darker for hover */
        text-decoration: none;
    }

    /* Visited state (optional) */
    a:visited {
        color: #d4aa00;
    }

.btn-primary {
    color: #ffffff;
    background-color: #038929;
    border-color: #02391e;
}

.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
    color: #fff;
    background-color: #038929;
    border-color: #02391e;
}

/* Sticky footer styles
-------------------------------------------------- */
html {
    font-size: 14px;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

.border-top {
    border-top: 1px solid #e5e5e5;
}

.border-bottom {
    border-bottom: 1px solid #e5e5e5;
}

.box-shadow {
    box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
}

button.accept-policy {
    font-size: 1rem;
    line-height: inherit;
}

/* Sticky footer styles
-------------------------------------------------- */
html {
    position: relative;
    min-height: 100%;
}

body {
    color: #f1f5f5;
    background: #038929;
    background-image: url(../images/GrassBackground.JPG);
    background-repeat: no-repeat;
    background-size: cover;
    /* Margin bottom by footer height */
    margin-bottom: 60px;
}

.footer {
    position: absolute;
    bottom: 0;
    width: 100%;
    white-space: nowrap;
    line-height: 60px; /* Vertically center the text there */
}

.transparent {
    background: #7f7f7f;
    background: rgba(0,0,0,0.5);
}


.card {
    color: #e5e5e5;
    background-color: #0c903b;
    border: solid;
    border-color: #7f7f7f;
}

.card-body {
    color: #e5e5e5;
    background-color: #0c903b;
}

.card-title {
    color: #e5e5e5;
    background-color: #0c903b;
    font-size: 20px;
    text-align: center;
    border: solid;
    border-color: #7f7f7f;
    border-width: thin;
    border-radius: 3px;
}

.card-text {
    font-size: 16px;
    text-align: center;
    color: #054b0a;
    background-color: #e5e5e5;
}

/* subtle transparent tint with rounded corners */
.tinted-bg {
    background: #7f7f7f;
    background: rgba(0,0,0,0.5);
    border-radius: 8px; /* control roundness here */
    padding: 1rem; /* optional: gives inner spacing so text doesn't sit at curved edge */
    overflow: hidden; /* ensures child content is clipped to the rounded corners */
}

/* Deep / strong green tint (hex #066021, rgba(6,96,33,0.6)) */
.tinted-bg-deep-green {
    background: #066021;
    background: rgba(6,96,33,0.6);
    border-radius: 10px;
    padding: 1rem;
    overflow: hidden;
    color: #ffffff;
}

/* stronger enforcement while debugging */
.tinted-bg,
.tinted-bg-deep-green {
    background: rgba(6,96,33,0.8) !important;
    border-radius: 10px !important;
    padding: 1rem !important;
    color: #fff !important;
}

    /* ensure cards inside wrapper stay transparent */
    .tinted-bg .card,
    .tinted-bg .card-body,
    .tinted-bg-deep-green .card,
    .tinted-bg-deep-green .card-body {
        background-color: transparent !important;
        color: inherit !important;
        border: none !important;
    }

    /* Ensure common Bootstrap components inside the wrapper don't paint over the tint */
    .jumbotron.tinted-bg-deep-green,
    .tinted-bg-deep-green .card,
    .tinted-bg-deep-green .card-body {
        background-color: transparent !important;
        color: inherit !important;
        border: none !important;
    }

.tinted-bg-deep-green,
.jumbotron.tinted-bg-deep-green {
    background: rgba(6,96,33,0.8) !important;
    border-radius: 10px !important;
    color: #fff !important;
}

/* Jumbotron wrapper: dark yellow border, padding and rounded corners */
.jumbotron.tinted-bg-deep-green {
    /*border: 3px solid #b8860b !important;*/ /* dark yellow / goldenrod */
    padding: .15rem .5rem !important; /* inner spacing around content */
    border-radius: 10px !important; /* match tint rounding */
    background-clip: padding-box !important; /* keep the background inside rounded border */
    box-shadow: 0 1px 0 rgba(0,0,0,0.2) inset !important; /* subtle inner contrast */
}

/* Ensure the jumbotron retains spacing from the next block */
.jumbotron {
    margin-bottom: 1rem;
}

.jumbotron h1 {
    font-size: 1.6rem;
}

.jumbotron .lead {
    font-size: 0.95rem;
}

/* Tighten vertical spacing for .lead inside jumbotron / tinted panels */
.jumbotron .lead,
.tinted-bg-deep-green .lead {
    margin-top: 0.25rem; /* reduce space above */
    margin-bottom: 0.25rem; /* reduce space below */
    padding-top: 0;
    padding-bottom: 0;
    line-height: 1.15; /* slightly tighter leading for compactness */
}

/* navbar theme for Organize My Golf */
.navbar-omg {
    background-color: #05521a; /* was #038929 */ /* primary green used across the site */
}

/* ensure links and brand are readable on the green background */
.navbar-omg .navbar-brand,
.navbar-omg .nav-link {
    color: #ffffff;
}

/* keep hover/active states visible */
.navbar-omg .nav-link:hover,
.navbar-omg .nav-link:focus {
    color: #e6ffe6;
}

/* Footer: match header/navbar colors */
.footer-omg {
    background-color: #05521a; /* same darker green used for navbar */
    color: #ffffff;
    border-top: 0; /* remove default border */
    padding: 0.75rem 0; /* vertical spacing */
}

/* Ensure links in footer are readable */
.footer-omg a {
    color: #ffffff;
    text-decoration: underline;
}

/* Keep existing layout behavior (vertically center text in the footer) */
.footer-omg .container {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
}

.my-events-tabs .nav-link {
    color: #cfcfcf;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
}

.my-events-tabs .nav-link:hover,
.my-events-tabs .nav-link:focus {
    color: #ffffff;
}

.my-events-tabs .nav-link.active,
.my-events-tabs .nav-item.show .nav-link {
    color: #000000;
}

/* Reduce footer vertical height and center content */
.footer {
    position: absolute;
    bottom: 0;
    width: 100%;
    white-space: nowrap;
    line-height: 36px; /* reduced from 60px */
    padding: 0.25rem 0; /* less vertical padding */
    font-size: 0.95rem;
    box-sizing: border-box;
}

/* Keep footer-omg visually consistent while using less height */
.footer-omg {
    background-color: #05521a; /* existing site green */
    color: #ffffff;
    border-top: 0;
    padding: 0; /* remove extra vertical padding; .footer supplies spacing */
}

/* Ensure the container contents are vertically centered inside the shorter footer */
.footer-omg .container {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0; /* avoid adding extra height */
}

/* Thin white border around the navbar brand icon */
.navbar-brand .brand-icon {
    background: #ffffff;
    height: 32px;
    width: auto;
    margin-right: 8px; /* keep spacing before site title */
    display: inline-block;
    vertical-align: middle;
    border-radius: 6px;
    overflow: hidden;
}

/* Spacing for form fields inside tinted panels */
.tinted-bg-deep-green .form-group {
    margin-bottom: 1rem; /* space between fields */
}

/* Extra spacing before/after the submit button */
.tinted-bg-deep-green .form-group.form-submit {
    margin-top: 1.25rem;
    margin-bottom: 1.25rem;
}

/* Optional: tighten label spacing for a cleaner look */
.tinted-bg-deep-green label {
    display: block;
    margin-bottom: 0.25rem;
}

/* Home page title with icon (icon to left of title) */
.home-title {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem; /* space between icon and text */
    color: inherit;
}

/* Icon sizing & styling for the home title (keeps navbar .brand-icon rules unchanged) */
.home-title .brand-icon {
    height: 40px;
    width: auto;
    padding: 4px; /* inner white padding */
    background-color: #ffffff; /* white background for contrast on the green tint */
    border-radius: 6px; /* rounded corners */
    border: 1px solid rgba(0,0,0,0.08); /* subtle frame */
    box-sizing: border-box;
    overflow: hidden; /* clip image to rounded corners */
    display: inline-block;
    vertical-align: middle;
}

/* Light gray navbar with black text */
.navbar-omg-light {
    background-color: #f2f2f2; /* light gray */
    border-color: rgba(0,0,0,0.08);
}

/* Ensure brand and links are black and hover darker */
.navbar-omg-light .navbar-brand,
.navbar-omg-light .nav-link {
    color: #000 !important;
}

.navbar-omg-light .nav-link:hover,
.navbar-omg-light .nav-link:focus {
    color: #222 !important;
}

/* subtle bottom border to match existing border-bottom utility */
.navbar-omg-light.border-bottom {
    border-bottom: 1px solid rgba(0,0,0,0.06);
}

/* Manage nav: make link text white on hover/focus */
.manage-nav .nav-link:hover,
.manage-nav .nav-link:focus {
    color: #ffffff !important;
}

/* Ensure navbar dropdown menu is visible and not clipped */
.navbar-collapse {
    overflow: visible !important;
}

.navbar .dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    min-width: 160px;
    background-color: #fff;
    border: 1px solid rgba(0,0,0,.15);
    border-radius: 0.25rem;
    box-shadow: 0 0.5rem 1rem rgba(0,0,0,.175);
}

/* Dropdown items - normal state */
.navbar .dropdown-item {
    color: #000;
    padding: 0.5rem 1rem;
    text-decoration: none;
    display: block;
    width: 100%;
}

.navbar .dropdown-item:hover,
.navbar .dropdown-item:focus {
    background-color: #038929; /*#f8f9fa;*/
    color: #ffffff; /*#000;*/
}

.modal-omg {
    background: rgba(6,96,33,0.9);
    color: #ffffff;
    border-radius: 10px;
    border: 1px solid rgba(255,255,255,0.2);
}

.modal-omg .modal-header,
.modal-omg .modal-footer {
    border-color: rgba(255,255,255,0.2);
}

.modal-omg .btn-close {
    filter: invert(1);
}

.validation-summary-errors,
.field-validation-error,
.text-danger {
    background-color: #f2f2f2;
    padding: 0.5rem;
    border-radius: 4px;
}

.validation-summary-valid {
    display: none;
}

/* Users table styling for admin pages */
.users-table {
    color: #333333; /* change default text to dark gray */
    margin-bottom: 0;
}

.users-table thead {
    background-color: #05521a; /* dark green header background (matches site theme) */
}

.users-table thead th {
    border-color: rgba(0,0,0,0.1); /* adjusted border for dark gray text */
    color: #ffffff; /* keep header text white for contrast */
    font-weight: 600;
    background-color: #05521a; /* dark green header */
    padding: 0.3rem 0.50rem;
}

.users-table tbody td {
    border-color: rgba(0,0,0,0.1); /* adjusted border for dark gray text */
    color: #333333; /* dark gray text for body rows */
    text-align: center;
    vertical-align: middle;
}

/* Bootstrap striping on tbody rows (alternating row colors) */
.users-table tbody tr:nth-child(odd) {
    background-color: rgba(255,255,255,0.3); /* slightly lighter stripe for better readability */
}

.users-table tbody tr:nth-child(even) {
    background-color: rgba(255,255,255,0.1); /* subtle background */
}

/* Header links - keep gold color */
.users-table thead a {
    color: #FFD800; /* gold links in header */
    text-decoration: none;
}

.users-table thead a:hover {
    color: #e6be00;
    text-decoration: underline;
}

/* Body row links - medium gray normally, darker gray on hover */
.users-table tbody a {
    color: #666666; /* medium gray for body links */
    text-decoration: none;
}

.users-table tbody a:hover {
    color: #333333; /* darker gray on hover */
    text-decoration: underline;
}

/* Email confirmed/unconfirmed indicators */
.email-confirmed-check {
    color: #90EE90; /* light green checkmark */
    font-weight: bold;
    font-size: 1.2em;
}

.email-unconfirmed-x {
    color: #FF6B6B; /* light red X */
    font-weight: bold;
    font-size: 1.2em;
}

/* Override center alignment for specific table cells */
.users-table tbody td:nth-child(1),
.users-table tbody td:nth-child(2),
.users-table tbody td:nth-child(3) {
    text-align: left;
}

/* Style Update link as primary button in table */
.users-table tbody a.btn-primary {
    color: #ffffff !important;
    background-color: #038929;
    border-color: #02391e;
    text-decoration: none;
    display: inline-block;
    padding: 0.375rem 0.75rem;
    border-radius: 0.25rem;
    font-weight: 500;
}

.users-table tbody a.btn-primary:hover {
    background-color: #026b21;
    color: #ffffff;
    text-decoration: none;
}

.users-table tbody a.btn-danger {
    color: #ffffff !important;
}

.users-table tbody a.btn-danger:hover {
    color: #ffffff !important;
}

/* Send Email form text color */
.send-email-form,
.send-email-form label,
.send-email-form .form-text {
    color: #ffffff;
}

/* Inputs/select/textarea text */
.send-email-form .form-control,
.send-email-form .custom-file-label {
    color: #ffffff;
}

/* Placeholder text */
.send-email-form ::placeholder {
    color: rgba(255,255,255,0.7);
}

/* Ensure select options are readable */
.send-email-form select option {
    color: #000000; /* keep dropdown options readable */
}

/* Send Email: force Body textarea and CKEditor text to black */
.send-email-form textarea,
.send-email-form .form-control,
.send-email-form .ck-editor__editable {
    color: #000000;
    background-color: #ffffff;
}

/* Email status view formatting */
.send-email-status .form-control {
    color: #000000;
    background-color: #ffffff;
}