/* News editor toolbar active state */
.navbar .nav-link.legacy-layout-link { color:#fd7e14 !important; display:inline-block; white-space:nowrap; }
.navbar .nav-link.legacy-layout-link:visited { color:#fd7e14 !important; }
.navbar .nav-link.legacy-layout-link:hover, .navbar .nav-link.legacy-layout-link:focus { color:#e8590c !important; background:rgba(253,126,20,0.08); }
.btn.nw-act.active, .btn.nw-color.active, .btn.nw-link.active, .btn.nw-br.active {
    background-color: #0d6efd;
    color: #fff;
    border-color: #0d6efd;
}
.bg-light-red {
    background-color: #f8d7da;
}
.bg-light-green {
    background-color: #d4edda;
}
.bg-light-grey {
    background-color: #d3d3d3;
}
.bg-light-blue {
    background-color: #add8e6;
}
/* Legacy nav-tabs/tab-pane/card-header backgrounds removed — handled by components.css (.syn-tabs, .syn-utabs, .syn-card). */
.activity-circle {
    position: relative;
    display: inline-block;
}
.activity-circle .tooltiptext {
    visibility: hidden;
    opacity: 0;
    width: max-content;
    max-width: 220px;
    background-color: #333;
    color: #fff;
    text-align: center;
    border-radius: 6px;
    padding: 4px 8px;
    position: absolute;
    z-index: 9999;
    right: 110%; /* Position to the left of the circle */
    top: 50%;
    transform: translateY(-50%);
    white-space: nowrap;
    box-shadow: 0 2px 8px rgba(0,0,0,0.2);
    pointer-events: none;
}

.activity-circle:hover .tooltiptext {
    visibility: visible;
    opacity: 1;
}

.list-group-item {
    padding: 10px; /* Make the booking slots more condensed */
    border: 1px solid #ddd; /* Add a nice border */
    margin-bottom: 5px; /* Add some space between slots */
}
.text-available {
    color: green;
}
.text-unavailable {
    color: red;
}
.btn-block {
    display: block;
    width: 100%;
}

/* Coach specific slot styling */
.coach-slot {
    background: #fff8d5 !important; /* pale yellow */
}
.activity-unavailable { opacity: 0.35; }

/* Navbar hover & active enhancements */
.navbar .nav-link { transition: background-color .15s, color .15s; border-radius:4px; }
.navbar .nav-link:hover, .navbar-nav > .nav-item > .nav-link:hover { background:rgba(13,110,253,0.08); color:#0b5ed7; font-weight:400; text-decoration:none; }
.navbar .nav-link.active, .navbar-nav > .nav-item > .nav-link.active, .navbar .nav-link.dropdown-toggle.active { background:rgba(13,110,253,0.10); color:#0b5ed7 !important; font-weight:400; box-shadow:none; }
.navbar .dropdown-menu .dropdown-item.active { background:rgba(13,110,253,0.10); color:#0b5ed7; font-weight:400; }
/* Removed underline indicator for active nav links per request */
.navbar .dropdown-menu { font-size:0.9rem; }
.navbar .dropdown-menu .dropdown-item:hover { background:#eef; }

/* Expanded slot layout improvements for coach view */
.slot-detail { position: relative; }
.slot-circles { position: absolute; top: 4px; right: 6px; gap: 4px; z-index: 10; }
.list-group-item .slot-circles { position:absolute; top:4px; right:6px; }
li.list-group-item.coach-slot { position: relative; padding-right: 72px; }
.coach-slot { overflow: visible; }
.slot-circles { pointer-events: none; }
.slot-circles .activity-circle { pointer-events: auto; box-shadow: 0 0 0 1px #222, 0 0 3px rgba(0,0,0,0.4); }
.activity-circle.circle-small { line-height:20px; text-align:center; font-size:10px; font-weight:600; }
.circle-letter { position:absolute; top:0; left:0; width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:0.7rem; font-weight:700; color:#000; }
.slot-detail-body { padding-right: 70px; }
.participants-wrap { margin-top: 4px; }
.participant-name { display: inline-block; font-size: 0.7rem; background:#eef; padding:1px 4px; border-radius:3px; margin:1px 2px 1px 0; }
.circle-small { width:20px; height:20px; border-radius:50%; }

/* Two-per-row circle layout */
.slot-circles.flex-wrap { width:64px !important; }
.slot-circles.flex-wrap .activity-circle { flex:0 0 calc(50% - 2px); }

/* Full-width expanded coach slot details */
.slot-detail { background:#fff; border:1px solid #ccc; border-radius:4px; }
.slot-detail-body { padding:6px 8px; }

/* Sticky footer adjustments */
footer { margin-top: auto; }

/* Legacy system link distinct styling */

/* Prompt-filled field highlighting */
.prompt-changed {
    outline: 2px solid #0d6efd !important;
    box-shadow: 0 0 0 3px rgba(13,110,253,.15) !important;
    transition: box-shadow .2s, outline-color .2s;
}
.prompt-changed::placeholder { color:#6c757d; }

/* Required empty field emphasis (optional subtle background) */
.required-empty {
    background: #fff3cd; /* pale yellow */
}

/* Sortable table column headers */
.sortable-header {
    cursor: pointer;
    user-select: none;
    position: relative;
    padding-right: 20px !important;
}
.sortable-header:hover {
    background-color: rgba(0, 0, 0, 0.05);
}
.sortable-header::after {
    content: '⇅';
    position: absolute;
    right: 6px;
    opacity: 0.3;
    font-size: 0.8em;
}
.sortable-header.asc::after {
    content: '▲';
    opacity: 0.8;
}
.sortable-header.desc::after {
    content: '▼';
    opacity: 0.8;
}
