/*
Theme Name: Nevlight Medinova
Theme URI: https://nevlighthospital.co.ke
Description: Hospital theme for Nevlight Hospital, ported from the MEDINOVA HTML template by HTML Codex (https://htmlcodex.com). The footer credit link is required by the template's CC BY 4.0 licence (see LICENSE.txt).
Author: Nevlight Hospital
Version: 1.0.0
Requires at least: 6.4
Requires PHP: 7.4
License: CC BY 4.0 (template design) / GPL-2.0-or-later (WordPress code)
Text Domain: nevlight
*/

/*
 * The template's own styles live in assets/css/style.css.
 * This file only adds what WordPress needs on top of them.
 */

/* Keep the sticky navbar below the admin bar. */
.admin-bar .sticky-top { top: 32px; }
@media (max-width: 782px) { .admin-bar .sticky-top { top: 46px; } }
@media (max-width: 600px) { .admin-bar .sticky-top { top: 0; } }

.screen-reader-text {
    border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%);
    height: 1px; margin: -1px; overflow: hidden; padding: 0;
    position: absolute !important; width: 1px; word-wrap: normal !important;
}
.screen-reader-text:focus {
    background: #fff; clip: auto !important; clip-path: none; color: var(--dark);
    display: block; height: auto; left: 5px; padding: 15px 23px; top: 5px; width: auto; z-index: 100000;
}

.navbar-brand img.custom-logo { max-height: 60px; width: auto; }

/* Dropdown items from wp_nav_menu. */
.dropdown-item.active, .dropdown-item:active { background-color: var(--primary); color: #fff; }

/* Post content. */
.entry-content img { max-width: 100%; height: auto; }
.entry-content .alignleft { float: left; margin: 0 1.5rem 1rem 0; }
.entry-content .alignright { float: right; margin: 0 0 1rem 1.5rem; }
.entry-content .aligncenter { display: block; margin-left: auto; margin-right: auto; }
.wp-caption, .wp-block-image figcaption { font-size: .875rem; color: #6c757d; }
.sticky, .bypostauthor, .gallery-caption { }

/* Blog cards keep a uniform image height. */
.blog-card-img { height: 250px; object-fit: cover; }

/* Pagination. */
.nav-links { display: flex; flex-wrap: wrap; justify-content: center; gap: .5rem; }
.nav-links .page-numbers {
    display: inline-flex; align-items: center; justify-content: center;
    min-width: 46px; height: 46px; padding: 0 12px; border-radius: 46px;
    background: var(--light); color: var(--dark); font-weight: 700; text-decoration: none;
}
.nav-links .page-numbers.current, .nav-links a.page-numbers:hover { background: var(--primary); color: #fff; }

/* Comments. */
.comment-list, .comment-list .children { list-style: none; padding-left: 0; }
.comment-list .children { margin-left: 3rem; }
.comment-reply-link { display: inline-block; }
.comment-form label { display: none; }
.comment-form .comment-notes, .comment-form .logged-in-as { font-size: .9rem; }
.comment-form-cookies-consent label { display: inline; }

/* Sidebar widgets. */
.widget ul { list-style: none; padding: 0; margin: 0; }
.widget ul li a {
    display: block; background: var(--light); border-radius: 8px; padding: .5rem 1rem;
    margin-bottom: .5rem; font-family: 'Roboto Condensed', sans-serif; font-weight: 700; font-size: 1.1rem;
}
.tagcloud a { font-size: .9rem !important; }

/* Floating WhatsApp button, stacked above the back-to-top control. */
.nl-whatsapp-float {
    position: fixed; right: 30px; bottom: 80px; z-index: 99;
    display: inline-flex; align-items: center; justify-content: center;
    width: 56px; height: 56px; border-radius: 50%;
    background: #25d366; color: #fff; font-size: 30px; line-height: 1;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .25);
    transition: transform .2s ease, background-color .2s ease;
}
.nl-whatsapp-float:hover, .nl-whatsapp-float:focus { background: #1da851; color: #fff; transform: scale(1.06); }
@media (max-width: 575.98px) {
    .nl-whatsapp-float { right: 16px; bottom: 72px; width: 50px; height: 50px; font-size: 26px; }
}

/* Contact form. */
.form-control.is-invalid { border-color: #b02a37; }

/* Opening hours. */
.nl-open-badge {
    display: inline-flex; align-items: center; gap: .5rem; padding: .35rem .9rem;
    border-radius: 50px; font-weight: 700; font-size: .9rem; white-space: nowrap;
}
.nl-open-badge .nl-dot { width: .6rem; height: .6rem; border-radius: 50%; background: currentColor; }
.nl-open-badge.is-open { background: #e3f6ea; color: #157347; }
.nl-open-badge.is-closed { background: #fbe7e9; color: #b02a37; }
.nl-hours th { font-weight: 400; padding-left: 0; }
.nl-hours td { font-weight: 700; padding-right: 0; }
.nl-hours tr.is-today th, .nl-hours tr.is-today td { color: var(--primary); }
footer .nl-hours, footer .nl-hours th, footer .nl-hours td { color: var(--light); background: transparent; border-color: rgba(255, 255, 255, .1); }
footer .nl-hours tr.is-today th, footer .nl-hours tr.is-today td { color: var(--primary); }
