
/* regatta header*/
.topHList{ width: 100%; position: relative;}
.rtSide{ position: absolute; top: 0px; right: 0px;}
.rtSide ul{ display: flex; align-items: center;}
.rtSide li{ display: inline-block; margin-left: 24px;}
.rtSide input[type="text"]{ width: 300px; height: 33.5px; background: url(../rm_regatta_listing_files/images/srch.png) no-repeat right 10px center #fff; border: 1px solid #a2afb8; padding: 0 15px; color: #a2afb8; font-size:14px; line-height: 20px; font-weight: 400; border-radius: 4px;}
input:focus{ outline: none;}
.rtSide li img{ max-width: 100%; filter: grayscale(100%);}
.rtSide li.actv img{filter: grayscale(0);}
.filterRow{ width: 100%; margin: 10px 0; border-top: 1px solid #a2afb8; border-bottom: 1px solid #a2afb8; padding: 12px 0;}
.colm{ padding: 0 5px;}
.filterRow .row{ margin: 0 -5px;}
.filterRow label{ color: #333333; font-size: 19px; line-height: 23px; font-weight: 600;}
.filterRow .inputfld select{ cursor: pointer; background: url(../rm_regatta_listing_files/images/aq.png)no-repeat center right 9px #ffffff;}

.grid-list-icon{font-size: 2rem;}

.logo-200 {
    height: 200px;
}
.map-400 {
    height: 400px;
}
.map-mh-200 {
    min-height: 200px;
}

/* regatta list */
.rtSide li.current img{filter: grayscale(0);}
.searchreslt_top b{ font: 700 22px/26px 'Open Sans', sans-serif; color:#3097d1; }
.searchreslt_top.filterRow { padding: 22px 0; }

.regatta-listing {  width: 100%;  padding-top: 35px;}
.regatta-box { width: 100%; padding: 10px; box-shadow: 0 0 5px 6px #eff2f4; display: inline-block; margin-top: 20px; }
.regatta-boximg { width: 100%; float: left; position: relative; }
.regatta-boximg img{ width: 100%; object-fit: cover; }
.regatta-listing .list .regatta-boximg{ width: 30%; }
.regatta-listing .list .regatta-boximg img{ height: auto; max-width: 100%; }
.smllogo1{ width: auto; position: absolute; left: 12px; bottom: 15px; }
.smllogo1 img{  max-width: 100%; height: auto !important; object-fit: inherit !important;  width: auto !important; }
.smllogo2{ right: 12px; left: inherit; }

.lglogo1{ width: auto; position: absolute; left: 25px; bottom: 15px; }
.lglogo1 img{  max-width: 100%; height: auto !important; object-fit: inherit !important;  width: auto !important; }
.lglogo2{ right: 25px; left: inherit; }
.lglogo1{ background: #fff; padding: 6px; border-radius: 6px; height: 60px; display: flex; align-items: center; }
.lglogo1 img{ max-width: 100%; height: 54px !important; }
.lglogo1 em{ font: 700 28px/32px 'Open Sans', sans-serif; color:#3097d1; font-style: normal; text-transform: uppercase; letter-spacing: 1px; }

.regatta-boxcontent{ width: 68%; float: right; padding: 0 200px 0 15px; position: relative; }
.regatta-boxcontent p{ font: 400 16px/24px 'Open Sans', sans-serif; padding: 10px 0 0; }
.regatta-boxcontent ul.info_list {  width: 500px;  display: inline-block;  border-radius: 10px;  background: #dbebf4;  padding: 12px 12px 15px; }
.regatta-boxcontent ul.info_list li{ width: 100%; display: inline-block; position: relative; padding: 0 0 0 22px; margin: 0 0 8px; }
.regatta-boxcontent ul.info_list li:last-child{ margin-bottom: 0px; }
.regatta-boxcontent ul.btnlist { width: 175px;  position: absolute;  right: 10px;  top: 4%;}
.regatta-boxcontent ul.btnlist li{ width: 100%; float: left; margin-bottom: 10px; }
/*
.regatta-boxcontent ul.btnlist li a{ width: 100%; height: 50px; text-align: center; font: 700 18px/45px 'Open Sans', sans-serif; color:#222222; text-transform: capitalize; border-radius: 5px; display: inline-block; border: 2px solid #222; }

.regatta-boxcontent ul.btnlist li a:hover{ background: #222; color:#fff; }
.regatta-boxcontent ul.btnlist li.slct a{ border-color:#3097d1; background: #3097d1; color:#fff; }
.regatta-boxcontent ul.btnlist li:last-child{ margin-bottom: 0px; }
.regatta-boxcontent ul.btnlist li.slct a:hover{ border-color:#3eb4f7; background: #3eb4f7; color:#fff; }
.regatta-boxcontent ul.info_list li i {  margin: 0;  position: absolute;  left: 0;  top: 1px; }
 */

.regatta-listing .grid .regatta-boximg{ width: 100%; }
.regatta-listing .grid .regatta-boximg img{ height: auto; max-width: 100%; }
.regatta-listing .grid .regatta-boxcontent{ width: 100%; padding: 0px; }
.regatta-listing .grid .regatta-boxcontent ul.info_list{ width: 100%; display: inline-block; }
.regatta-listing .grid .regatta-boxcontent ul.btnlist{ width: 100%; display: inline-block; position: inherit; right: inherit; top: inherit; margin-top: 15px;  transform: inherit;  }
.regatta-listing .grid .regatta-boxcontent ul.btnlist li{ width: 32.5%; float: left; }
.regatta-listing .grid .regatta-boxcontent ul.btnlist li:not(:first-child):not(:last-child){ margin: 0 1% }
.regatta-listing .grid .col-md-12 {  -ms-flex: 0 0 33.33333%;  flex: 0 0 33.33333%;  max-width: 33.33333%; }
.regatta-listing .grid .regatta-boxcontent h2{ font-size: 20px; line-height: 26px; min-height: 68px; }


.pagination_box{ width: 100%; text-align: center; margin-top: 30px; }
.pagination_box ul{ display: inline-block; }
.pagination_box ul li{ float: left; margin-left: 30px; }
.pagination_box ul li:first-child{ margin-left: 0px; }
.pagination_box ul li a img{ max-width: 100%; filter: grayscale(100%); }
.pagination_box ul li a img:hover{ filter: grayscale(0); }
.pagination_box ul li{ width: 35px; height: 35px; border-radius: 100%; font: 700 18px/35px 'Open Sans', sans-serif; color:#666666; float: left; }
.pagination_box ul li a{ width: 100%; float: left; height: 35px; color:#666; }
.pagination_box ul li.actv{ background: #3097d1; color:#fff; }
.pagination_box ul li.prev img{ margin-top: -2px; }
.pagination_box ul li.next img{ margin-top: -2px; }

.search_left{ width: 100%; padding: 20px; background: #fff; border: 1px solid #e1e7eb; box-shadow: 0 0 5px 6px #eff2f4; display: inline-block; margin-top: 20px;  }
.search_left .card{ background: #f5f8fa; border: none; border-radius: 5px; margin-bottom: 12px; }
.search_left .card-header{ background: none; padding: 0px; border: none; }
.search_left .card-header .btn{ font: 600 18px/24px 'Open Sans', sans-serif; padding: 15px 15px; padding-right: 32px; text-transform: capitalize; text-decoration: none; background: url(../rm_regatta_listing_files/images/arw2.png) no-repeat right  15px top 23px;  color:#3097d1; }
.search_left .card-header .btn.collapsed{ background: url(../rm_regatta_listing_files/images/arw1.png) no-repeat right 15px top 23px; color:#333333; }
.search_left .card-body{ padding: 0 15px 15px; }
.search_left .card-body h5{ font: 700 18px/24px 'Open Sans', sans-serif; color:#5ba7d7; }
.search_left .card-body ul{ width: 100%; display: inline-block; }
.search_left .card-body ul li{ width: 100%; display: inline-block; margin: 10px 0 0; font: 700 16px/20px 'Open Sans', sans-serif; color:#666666; position: relative; padding: 2px; padding-left: 40px; }
.search_left .card-body ul li i{ margin-right: 8px; }
.search_left .card-body ul li input[type="checkbox"]{ width: 100%; float: left; -webkit-appearance: none; outline: none; cursor: pointer; background: url(../rm_regatta_listing_files/images/chk1.png) no-repeat left top; height: 23px;
    position: absolute; left: 0;}
.search_left .card-body ul li input[type="checkbox"]:checked{ background: url(../rm_regatta_listing_files/images/chk2.png) no-repeat left top; height: 23px;}


/*List_page*/
.inputfld span.selected{width: 100%; background: #ffffff; border: none; border: 1px solid #e1e7eb; border-radius: 4px; font-size: 13px; line-height: 29px; font-weight: 600; height: 33.5px; outline: none; box-shadow: none; -webkit-appearance: none; color: #333333; padding: 0 11px; cursor: pointer; background: url(../rm_regatta_listing_files/images/sel_img2.png) no-repeat center right 9px #ffffff; float: left; }
.searchreslt_top.filterRow label { padding: 5px 0 0;}
.searchreslt_top.filterRow .inputfld{ position: relative; }
.searchreslt_top.filterRow .fancy-select{ position: absolute;  left: 0;  top: 100%;  width: 92%;  background: #fff;  z-index: 5;  height: auto !important;  margin: 0px 4%;  box-shadow: 0 0 8px -4px #737373;  border-radius: 5px; }
.searchreslt_top.filterRow .fancy-select li{ width: 100%; padding: 13px 15px; border-bottom: 1px solid #e7ebee; font: 700 16px/20px 'Open Sans', sans-serif; color: #666666; cursor: pointer; position: relative; }
.searchreslt_top.filterRow .fancy-select li:hover{ background: #3097d1; color:#fff; border-color:#3097d1; }
.searchreslt_top.filterRow .fancy-select li:last-child{ border: none; }
.searchreslt_top.filterRow .inputfld.location .fancy-select li{ padding-left: 40px; }
.searchreslt_top.filterRow .inputfld.location .fancy-select li:before{ position: absolute; left: 18px; top: 13px; font-size: 16px; content: "\f3c5"; font-family: "Font Awesome 6 Pro"; font-weight: 900; }

.searchreslt_top.filterRow .row {  margin: 0 -15px;}
.searchreslt_top.filterRow .colm {  padding: 0 15px;}
.searchreslt_top.filterRow .colm {  padding: 0 5px;}
.searchreslt_top.filterRow .row {  margin: 0 -5px;}
.searchreslt_top.filterRow .col-lg-10{ padding: 0 5px; }
.sel_sec .collum{ padding: 0 5px; }
.sel_sec .row {  margin: 0 -5px;}


.smllogo1{ background: #fff; padding: 3px; border-radius: 3px; height: 30px; display: flex; align-items: center; }
.smllogo1 img{ max-width: 100%; height: 24px !important; }
.smllogo1 em{ font: 700 14px/16px 'Open Sans', sans-serif; color:#3097d1; font-style: normal; text-transform: uppercase; letter-spacing: 1px; }

.regatta-boxcontent ul.btnlist li a {
    height: 33.5px !important;
    line-height: 28.5px !important;
    padding: 0px !important; font-size: 14px  !important;
}

.inputfld select, .inputfld input[type="text"], .inputfld input[type="email"], .inputfld input[type="tel"]{height: 33.5px !important; border-radius: 4px;}
.inputfld input[type="submit"], .inputfld input[type="reset"], .details_btn{height: 33.5px !important; border-radius: 4px; line-height: 30.5px !important; font-size: 14px;}

.inputfld select{background-size: 10px !important;}
.inputfld select, .inputfld input[type="text"], .inputfld input[type="email"], .inputfld input[type="tel"]{font-size: 14px;}

.regatta-boxcontent p{ min-height: 30px;}
/*.regatta-listing .grid .regatta-boxcontent ul.info_list{min-height: 108px;}*/

@media (min-width: 768px) and (max-width: 9000px) {
    .nav_top .dropdown .dropdown-menu { -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s;
        -o-transition: all 0.3s;transition: all 0.3s; max-height: 0; display: block; opacity: 0; visibility: hidden;  margin:0px; border: none; border-bottom: 2px solid #ccc;
        background:#fff !important;
        width: 150px; padding: 0px;
        border-radius: 0; left: 0; right: inherit; padding: 5px 8px 8px; box-shadow: inherit; }

    .nav_top .dropdown:hover .dropdown-menu { max-height: 300px;opacity: 1; visibility: visible; }
}

@media (min-width: 1400px) and (max-width: 1599px) {
    /*search_result*/
    .regatta-boxcontent ul.info_list {  width: 400px; }
    .regatta-boxcontent {  padding: 0 185px 0 10px;}
}

@media (min-width: 1200px) and (max-width: 1399px) {
    /*search_result*/
    .regatta-boxcontent ul.info_list {  width: 365px; }
    .regatta-boxcontent {  padding: 0 162px 0 10px;}
    .regatta-listing { padding-top: 20px;}
    .searchreslt_top.filterRow {  padding: 16px 0;}
    .regatta-container h1 {  font-size: 36px;  line-height: 48px;}
    .regatta-boxcontent h2{ font-size: 22px; line-height: 26px; padding: 10px 0 0; }
    .regatta-boxcontent p{ font-size: 15px;line-height: 22px; }
    .pagination_box ul li { margin-left: 20px;}
    .regatta-listing .grid .regatta-boxcontent h2 {font-size: 18px; line-height: 24px;  min-height: 62px;}
    .regatta-boxcontent ul.btnlist li a{ height: 46px; font-size: 16px; line-height: 42px; }
    .regatta-boxcontent ul.info_list li{ font-size: 14px; line-height: 20px; }
    .regatta-boxcontent ul.btnlist { width: 150px;}
}

@media (min-width: 992px) and (max-width: 1199px) {
    /*search_result*/
    .regatta-boxcontent ul.info_list {  width: 100%; }
    .regatta-boxcontent {  padding: 0; width: 58%; }
    .regatta-listing { padding-top: 20px;}
    .searchreslt_top.filterRow {  padding: 16px 0;}
    .regatta-container h1 { font-size: 28px;  line-height: 44px;}
    .regatta-boxcontent h2{ font-size: 22px; line-height: 26px; padding: 10px 0 0; }
    .regatta-boxcontent p{ font-size: 15px;line-height: 22px; }
    .pagination_box ul li { margin-left: 15px;  font-size: 16px;  width: 30px;  height: 30px;  line-height: 30px; }
    .regatta-listing .grid .regatta-boxcontent h2 {font-size: 18px; line-height: 24px;  min-height: 62px;}
    .regatta-boxcontent ul.btnlist li a{ height: 46px; line-height: 42px; }
    .regatta-boxcontent ul.info_list li{ line-height: 20px; }
    .regatta-boxcontent ul.btnlist { position: inherit;  right: inherit;  top: inherit;  transform: inherit;  width: 100%;  display: inline-block;}
    .regatta-listing .list .regatta-boximg {  width: 40%;}
    .regatta-boxcontent ul.btnlist li{ width: 100% !important; margin: 10px 0 0 !important; }
    .regatta-container {  padding: 50px 0;}
    .search_left .card-body ul li {  padding-left: 35px;}
    .regatta-listing .grid .col-md-12 {  -ms-flex: 0 0 50%;  flex: 0 0 50%;  max-width: 50%;}
    .searchreslt_top b{ font-size: 20px; }
    .search_left .card-header .btn{ padding: 12px; }
}

@media only screen and (max-width: 991px) {
    .regatta-container {padding: 50px 0;}
    .regatta-container h1 {font-size: 30px; line-height: 39px;}
    .box ul li{font-size: 16px; line-height: 26px;}
    .box {padding: 20px 17px;}
    .box p {font-size: 12px; line-height: 20px;}
    .inputfld select {padding: 0 10px;}
    .inputfld input[type="submit"], .inputfld input[type="reset"] {margin: 28px 8px 0 0;}

    /*search_result*/
    .regatta-boxcontent ul.info_list {  width: 100%; }
    .regatta-boxcontent {  padding: 0; width: 58%; }
    .regatta-listing { padding-top: 0;}
    .searchreslt_top.filterRow {  padding: 16px 0;}
    .regatta-container h1 {  font-size: 26px;  line-height: 40px;}
    .regatta-boxcontent h2{ font-size: 22px; line-height: 26px; padding: 10px 0 0; }
    .regatta-boxcontent p{ font-size: 15px;line-height: 22px; }
    .pagination_box ul li { margin-left: 15px;  font-size: 16px;  width: 30px;  height: 30px;  line-height: 30px; }
    .regatta-listing .grid .regatta-boxcontent h2 {font-size: 18px; line-height: 24px;  min-height: 62px;}
    .regatta-boxcontent ul.btnlist li a{ height: 46px; line-height: 42px; }
    .regatta-boxcontent ul.info_list li{ line-height: 20px; }
    .regatta-boxcontent ul.btnlist { position: inherit;  right: inherit;  top: inherit;  transform: inherit;  width: 100%;  display: inline-block;}
    .regatta-listing .list .regatta-boximg {  width: 40%;}
    .regatta-boxcontent ul.btnlist li{ width: 100% !important; margin: 10px 0 0 !important; }
    .regatta-container {  padding: 50px 0;}
    .search_left .card-body ul li {  padding-left: 35px;}
    .regatta-listing .grid .col-md-12 {  -ms-flex: 0 0 50%;  flex: 0 0 50%;  max-width: 50%;}
    .searchreslt_top b{ font-size: 20px; }
    .search_left .card-header .btn{ padding: 12px; }
    .search_left{ padding: 15px; }
    .search_left .card-body {  padding: 15px 0 0; }
    .search_left .card-body ul li { border-bottom: 1px solid #e7ebee;  padding: 0 0 10px 46px; }
    .search_left .card-body ul li input[type="checkbox"]{ background-position: left 15px top !important;}
    .search_left .card-body ul li:last-child{ border-bottom: none; }
    .search_left .card-body h5 { padding: 0 0 6px 12px;}
    .rtSide input[type="text"] { width: 240px;  height: 45px;}
    .rtSide li:first-child{ margin-left: 0px; }
    .rtSide li { margin-left: 12px;}
    .rtSide li img { width: 28px;}

    /*List page*/
    .searchreslt_top.filterRow label {  padding: 0;}
    .searchreslt_top.filterRow .inputfld { margin: 10px 0 0;}
    .searchreslt_top.filterRow .fancy-select{ width: 96%;  margin: 0px 2%; }

    /*Details page, override defaults */
    .lglogo1{ height: 30px !important; }
    .lglogo1 img{ height: 27px !important; }
    .lglogo1 em{ font: 700 14px/16px 'Open Sans', sans-serif !important; }
}


@media (min-width: 768px) and (max-width: 991px) {
    /*search_result*/
    .search_left .card{ width: 48%; margin: 5px 1%; float: left; }
    .search_left .collapse.show {  position: absolute;  left: 0;  top: 98%;  width: 96%;  background: #fff;  z-index: 5;  height: auto !important;  margin: 0 2%;  box-shadow: 0 0 8px 2px #eaeaea;  border-radius: 5px;  transition: inherit;}
    .search_left .collapsing {  position: absolute;  left: 0;  top: 98%;  width: 96%;  background: #fff;  z-index: 5;  height: auto !important;  margin: 0 2%;  box-shadow: 0 0 8px 2px #eaeaea;  border-radius: 5px;  transition: inherit; }

    .search-typeahead-wrapper input[type="text"] {
        width: 132px;
        height: 42px;
        background-size: 16px;
        font-size: 14px; line-height: 20px;
    }
}


@media only screen and (max-width: 767px){
    .box_content .btn, .box_content .collapsed{display: block;}
    .box_content .col-sm-6{display: none;}
    .box_content.current .col-sm-6 {  display: block;}
    .box_content.current .btn-info{ background: url(../rm_regatta_listing_files/images/btn_back1.png) no-repeat right top;}
    .box_content .th_row_contant{display: none;}
    .box_content.current .th_row_contant {display: block;}
    .tab_show ul li {-ms-flex: 0 0 50%; flex: 0 0 50%; max-width: 50%;}

    .navbar-dark .navbar-toggler {  color: #fff;  border-color: #fff;}
    .navbar-toggler {  padding: 4px 7px;}
    .navbar-nav {  margin: 16px 0 0;  padding: 5px 0 0;  border-top: 1px solid #fff;}

}

@media only screen and (max-width: 575px){
    /*search_result*/
    .rtSide li{ display: none; }
    .rtSide li.search{ display: inline-block; }
    .regatta-container h1 { font-size: 20px; line-height: 35px;}
    .rtSide input[type="text"] { width: 180px; height: 42px; font-size: 15px;}
    .regatta-container { padding: 40px 0;}
    .searchreslt_top.filterRow {  padding: 12px 0;}
    .searchreslt_top b {  font-size: 17px;}
    .regatta-listing .list .regatta-boximg {  width: 100%;}
    .regatta-boxcontent {  width: 100%;}
    .pagination_box ul li {  margin-left: 10px;  font-size: 14px;  width: 25px;  height: 25px;  line-height: 25px;}
    .pagination_box ul li.next img {  margin-top: -3px;}
    .regatta-boxcontent h2 {  font-size: 18px;  line-height: 24px;  padding: 10px 0 0;}
    .regatta-listing .grid .col-md-12 {  -ms-flex: 0 0 100%;  flex: 0 0 100%;  max-width: 100%;}
    .regatta-listing .grid .regatta-boxcontent h2 {  min-height: inherit;}
    .regatta-listing .list .regatta-boximg img, .regatta-listing .grid .regatta-boximg img {  height: auto;}
    .th_row_lt{ width: 100%; }
}

@media only screen and (max-width: 450px){
    .col-6{-webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;}

}

/* Regatta registration */
div.division-container div.division:first-child .card-header {
    display: none;
}
div.division-container div.division:first-child .division-sep {
    display: none;
}

/* MWPHRF Certificate Search Result Styles */
.mwphrf-result-item {
    border: 1px solid #dee2e6;
    margin-bottom: 2px;
    padding: 0.75rem 1rem !important; /* Compact padding */
}

.mwphrf-result-item:hover {
    background-color: #f8f9fa;
}

.mwphrf-result-item.active {
    background-color: #007bff;
    border-color: #007bff;
    color: white;
}

.mwphrf-result-item.active .text-muted {
    color: rgba(255, 255, 255, 0.75) !important;
}

.mwphrf-result-item.active h6,
.mwphrf-result-item.active p,
.mwphrf-result-item.active small {
    color: white;
}

.mwphrf-result-item h6 {
    margin-bottom: 0.25rem;
    line-height: 1.3;
}

/* Certificate Pre-population Styles */
.certificate-pre-populated {
    background: rgba(40, 167, 69, 0.1);
    border: 2px solid #28a745;
    border-radius: 8px;
    padding: 10px;
    margin-top: 8px;
    position: relative;
}

.certificate-pre-populated .badge {
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.certificate-pre-populated .badge-warning {
    background: linear-gradient(135deg, #ffc107, #ff8f00);
    color: #212529;
}

.certificate-pre-populated .badge-primary {
    background: linear-gradient(135deg, #007bff, #0056b3);
    color: white;
}

.certificate-loading {
    background: rgba(0, 123, 255, 0.1);
    border: 2px dashed #007bff;
    border-radius: 8px;
    color: #007bff;
    font-weight: 500;
}

.certificate-loading i {
    margin-right: 8px;
}

.choose-cert-btn {
    font-size: 0.75rem;
    padding: 0.25rem 0.75rem;
    border-radius: 4px;
    transition: all 0.2s ease;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    position: absolute;
    top: 8px;
    right: 8px;
}

.choose-cert-btn:hover {
    background-color: #0056b3;
    border-color: #0056b3;
    transform: translateY(-1px);
    box-shadow: 0 3px 6px rgba(0,0,0,0.15);
}

/* Certificate Selection Modal */
#certificateSelectionModal .certificate-option {
    transition: all 0.2s ease;
    border: 2px solid #dee2e6;
}

#certificateSelectionModal .certificate-option:hover {
    border-color: #007bff;
    background-color: rgba(0, 123, 255, 0.05);
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

#certificateSelectionModal .certificate-option .badge {
    font-size: 0.7rem;
}

/* Mobile Responsive Enhancements */
@media (max-width: 576px) {
    .certificate-pre-populated {
        margin-bottom: 1rem;
        padding-top: 40px; /* Make room for button on mobile */
    }
    
    .certificate-pre-populated .choose-cert-btn {
        position: static;
        margin-top: 0.5rem;
        margin-bottom: 0.5rem;
        width: 100%;
        display: block;
    }
    
    #certificateSelectionModal .modal-dialog {
        margin: 10px;
    }
    
    #certificateSelectionModal .certificate-option {
        padding: 1rem;
    }
}

/* Form Field Enhancements for Pre-populated Data */
.handicap[readonly], 
.handicapAlt[readonly],
.certRefNumber[readonly] {
    background: linear-gradient(145deg, #e8f5e8, #d4edda);
    border-color: #28a745;
    color: #155724;
    font-weight: 500;
}

.form-control:focus.pre-populated {
    border-color: #28a745;
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

/* Certificate Option Styling in Modal */
.certificate-option-modal {
    transition: all 0.2s ease;
    border: 2px solid #dee2e6 !important;
}

.certificate-option-modal:hover {
    border-color: #007bff !important;
    background-color: rgba(0, 123, 255, 0.05);
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.certificate-option-modal .badge {
    font-size: 0.7rem;
}

/* Division form layout improvements */
.manual-handicap-section {
    border-top: 1px solid #dee2e6;
    padding-top: 1rem;
    margin-top: 1rem;
}

.manual-handicap-section h6 {
    margin-bottom: 0.75rem;
    font-size: 0.875rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.open-mwphrfCertModal {
    margin-bottom: 0.5rem;
}

/* Hide division dismiss button for first division (data-division-idx="0") */
.division-dismiss-btn[data-division-idx="0"] {
    display: none !important;
}

/* ==========================================================================
   Results pages (fleet / regatta / race results, standings, cards)
   Moved from application.css per #428 — this sheet is loaded only by the
   scoring/results templates that actually use these selectors, not globally.
   ========================================================================== */

/* Results match navigator (floating pill, browser-find style) */
.results-match-nav {
  position: fixed;
  z-index: 1035;
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px 6px;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, .15);
  border-radius: 999px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, .15);
  font-size: .875rem;
}
.results-match-nav .rmn-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 32px;
  min-height: 32px;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
  border-radius: 999px;
}
.results-match-nav .rmn-btn:hover,
.results-match-nav .rmn-btn:focus {
  background-color: rgba(0, 0, 0, .06);
  outline: none;
}
.results-match-nav .rmn-count {
  font-variant-numeric: tabular-nums;
  min-width: 3.5em;
  text-align: center;
  white-space: nowrap;
}
/* Current series name — only rendered when matches span 2+ series.
   Fixed display length; full name is on the title attribute. */
.results-match-nav .rmn-series {
  max-width: 12ch;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding-left: 6px;
  border-left: 1px solid rgba(0, 0, 0, .15);
  color: #6c757d;
}
.results-match-nav .rmn-close {
  margin-left: 2px;
}

@media (min-width: 768px) {
  /* JS sets `top` inline (live navbar height + 12); CSS anchors the right edge. */
  .results-match-nav {
    right: 16px;
    left: auto;
    bottom: auto;
  }
}
@media (max-width: 767.98px) {
  .results-match-nav {
    left: 50%;
    transform: translateX(-50%);
    bottom: calc(12px + env(safe-area-inset-bottom, 0px));
    /* !important: JS may leave an inline `top` from a prior desktop layout;
       fixed + top + bottom would stretch the pill to full viewport height. */
    top: auto !important;
    right: auto;
  }
  /* less room in the bottom-center pill on mobile */
  .results-match-nav .rmn-series {
    max-width: 8ch;
  }
}

/* Current match — stronger than the pale .table-success on all matches.
   Bootstrap's `.table-success > *` uses !important, so this must too. */
tr.current-match > * {
  background-color: #fff3cd !important;
}
tr.current-match > :first-child {
  box-shadow: inset 3px 0 0 0 #f0ad4e;
}

.race-col-header .race-link {
    text-decoration: underline;
    font-weight: 600;
}
.race-col-header .race-link:hover {
    text-decoration: underline;
}

/* ===================== #426 Mobile fleet-results cards ( < md ) ===================== */
.frc-fleet {
    margin-bottom: 1.5rem;
}
.frc-fleet-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: .5rem;
    border-bottom: 1px solid #dee2e6;
    padding-bottom: .25rem;
    margin-bottom: .5rem;
}
.frc-fleet-head h6 {
    font-weight: 600;
}
.frc-boatcount {
    font-size: .8rem;
    flex: none;
}
.frc-fleet.frc-collapsed .frc-latest,
.frc-fleet.frc-collapsed .frc-spark,
.frc-fleet.frc-collapsed .frc-mini-head,
.frc-fleet.frc-collapsed .frc-cardlist,
.frc-fleet.frc-collapsed .frc-roster {
    display: none;
}

/* Latest-race banner */
.frc-latest {
    background-color: #fff3cd;
    border-radius: .375rem;
    padding: .5rem .625rem;
    margin-bottom: .625rem;
    font-size: .8rem;
    line-height: 1.5;
}
.frc-latest-pending {
    background-color: #e9ecef;
}
.frc-latest-notstarted {
    background-color: #e2e3e5;
}
.frc-latest-complete {
    background-color: #d4edda;
}
.frc-latest-label {
    font-weight: 600;
}
.frc-podium {
    display: block;
}
.frc-podium-spot {
    margin-right: .625rem;
    white-space: nowrap;
}
.frc-latest-link {
    white-space: nowrap;
}

/* Sparkline */
.frc-spark {
    border: 1px solid #dee2e6;
    border-radius: .375rem;
    padding: .5rem .625rem;
    margin-bottom: .625rem;
    color: #6c757d;
}
.frc-spark-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .5rem;
    margin-bottom: .375rem;
}
.frc-spark-cap {
    font-size: .7rem;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: #6c757d;
}
.frc-spark-pick {
    margin: 0;
    flex: 0 1 11rem;
    min-width: 0;
}
.frc-spark-pick .custom-select {
    font-size: .75rem;
    height: calc(1.5em + .5rem + 2px);
    padding-top: .15rem;
    padding-bottom: .15rem;
}
.frc-spark svg {
    display: block;
    width: 100%;
    height: 72px;
}
.frc-spark .frc-spark-line.frc-spark-me {
    stroke: #b5532e;
    stroke-width: 2.5;
    opacity: 1;
}
.frc-spark .frc-spark-dot {
    stroke: #b5532e;
    fill: #b5532e;
}

/* Sticky mini-header */
.frc-mini-head {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 3;
    background-color: #fff;
    border-bottom: 1px solid #dee2e6;
    padding: .25rem 0;
    font-size: .75rem;
    font-weight: 600;
    display: flex;
    justify-content: space-between;
    gap: .5rem;
}
.frc-mini-cols {
    font-weight: 400;
    color: #6c757d;
}

/* Card */
.frc-card {
    border: 1px solid #dee2e6;
    border-radius: .5rem;
    padding: .5rem .625rem;
    margin: .5rem 0;
    background-color: #fff;
}
.frc-card-me {
    border-color: #b5532e;
    box-shadow: 0 0 0 1px #b5532e;
}
.frc-row1 {
    display: flex;
    align-items: baseline;
    gap: .375rem;
}
.frc-pos {
    font-weight: 700;
    font-size: 1.15rem;
    color: #b5532e;
    font-variant-numeric: tabular-nums;
    flex: none;
}
.frc-move {
    font-size: .8rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    flex: none;
}
.frc-move-up {
    color: #28a745;
}
.frc-move-down {
    color: #dc3545;
}
.frc-move-hold {
    color: #6c757d;
}
.frc-name {
    font-weight: 700;
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.frc-total {
    color: #6c757d;
    font-variant-numeric: tabular-nums;
    flex: none;
}
.frc-sub {
    color: #6c757d;
    font-size: .8rem;
    margin: .125rem 0 .375rem;
}
.frc-chips {
    display: flex;
    flex-wrap: wrap;
    gap: .25rem;
}
.frc-chip {
    display: inline-block;
    background-color: #f8f9fa;
    border: 1px solid #dee2e6;
    border-radius: .25rem;
    padding: .0625rem .3125rem;
    font-size: .75rem;
    font-variant-numeric: tabular-nums;
    color: #212529;
    text-decoration: none;
    white-space: nowrap;
}
a.frc-chip:hover {
    text-decoration: none;
    background-color: #e9ecef;
    color: #212529;
}
.frc-chip-drop {
    color: #6c757d;
    text-decoration: line-through;
}
.frc-chip-pen {
    border-color: #dc3545;
    color: #dc3545;
}
.frc-chip-latest {
    border-color: #b5532e;
    border-width: 2px;
    padding: 0 .25rem;
}
.frc-chip-abd,
.frc-chip-empty {
    color: #adb5bd;
}
.frc-more-toggle {
    background: none;
    border: none;
    color: #007bff;
    font-size: .75rem;
    padding: .0625rem .25rem;
    cursor: pointer;
}
.frc-standings {
    color: #6c757d;
    font-size: .8rem;
    margin-top: .375rem;
}
.frc-standings .frc-dot {
    margin: 0 .25rem;
}

/* Not-scored roster — lightweight rows, no card chrome */
.frc-roster {
    margin: .5rem 0;
}
.frc-roster-head {
    font-size: .75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: #6c757d;
    padding: .25rem 0;
    border-bottom: 1px solid #dee2e6;
}
.frc-roster-row {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: .375rem;
    padding: .375rem .25rem;
    border-bottom: 1px solid #f1f3f5;
}
.frc-roster-row.frc-card-me {
    border: 1px solid #b5532e;
    border-radius: .375rem;
    box-shadow: 0 0 0 1px #b5532e;
}
.frc-roster-name {
    font-weight: 600;
}
.frc-roster-sub {
    font-size: .8rem;
}
.frc-roster-row.table-success {
    background-color: #d4edda;
}
.frc-roster-row.current-match {
    background-color: #fff3cd;
    box-shadow: inset 3px 0 0 0 #f0ad4e, 0 0 0 1px #f0ad4e;
}

/* Search highlight — card equivalents of .table-success / .current-match */
.frc-card.table-success {
    background-color: #d4edda;
    border-color: #b1dfbb;
}
.frc-card.current-match {
    background-color: #fff3cd;
    box-shadow: inset 3px 0 0 0 #f0ad4e, 0 0 0 1px #f0ad4e;
}

/* ===================== #426 Desktop fleet-results enrichments ( >= md ) ===================== */
@media (min-width: 768px) {
    /* On desktop the frc-latest elements read as captions above the table, not
       full-width alerts. Drop the solid mobile fill; keep a thin left rule. */
    .frc-latest-desktop {
        max-width: 640px;
        font-size: .8125rem;
        margin-top: .25rem;
        margin-bottom: .75rem;
        padding: .125rem 0 .125rem .625rem;
        background-color: transparent;
        border-radius: 0;
        border-left: 3px solid #ced4da;
    }
    .frc-latest-desktop.frc-latest-complete {
        border-left-color: #a3cfbb;
    }
    .frc-latest-desktop.frc-latest-notstarted,
    .frc-latest-desktop.frc-latest-pending {
        border-left-color: #ced4da;
    }
    .frc-latest-desktop .frc-podium {
        display: inline;
    }
    .frc-latest-desktop .frc-podium-spot {
        margin-right: .5rem;
        margin-left: 0;
    }
    .frc-latest-desktop .frc-latest-link {
        margin-left: .5rem;
    }
    .d-md-block .frc-roster {
        margin: .25rem 0 1rem;
    }
    .d-md-block .frc-roster-row {
        display: flex;
        flex-wrap: nowrap;
        gap: .75rem;
        padding: .25rem .5rem;
    }
    .d-md-block .frc-roster-name {
        flex: 0 0 14rem;
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .d-md-block .frc-roster-sub {
        flex: 1 1 auto;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    .d-md-block .frc-roster-head {
        font-size: .8125rem;
    }
    th[scope="row"] .frc-move {
        margin-left: .375rem;
        vertical-align: baseline;
        display: inline-block;
    }
    th[scope="row"] .frc-place-val {
        font-variant-numeric: tabular-nums;
    }
}

/* ===================== #427 Mobile regatta-results + race-results cards ===================== */
/* Reuses every .frc-* primitive from the #426 block above; only new modifiers live here. */

/* Single-race card list (Page B) */
.vrc-list .vrc-meta div {
    line-height: 1.5;
}
.vrc-card {
    border-left-width: 3px;
}
.vrc-podium-1 {
    border-left-color: #d4af37;
}
.vrc-podium-2 {
    border-left-color: #a8a8a8;
}
.vrc-podium-3 {
    border-left-color: #cd7f32;
}
.vrc-medal {
    margin-left: .25rem;
    font-size: .95rem;
}
.vrc-status-chip {
    margin-left: .25rem;
    vertical-align: baseline;
}
/* Headline row: points is the prominent number for skippers; the corrected /
   elapsed time rides alongside it, muted. */
.vrc-card .frc-total {
    display: flex;
    align-items: baseline;
    gap: .375rem;
    color: inherit;
}
.vrc-points {
    font-weight: 700;
    color: #212529;
}
.vrc-headline-time {
    font-size: .8rem;
    color: #6c757d;
}
.vrc-detail {
    margin-top: .25rem;
    line-height: 1.6;
}
.vrc-detail .vrc-dot {
    margin: 0 .25rem;
    color: #adb5bd;
}
.vrc-detail-label {
    font-variant-numeric: normal;
}
.vrc-detail-cell {
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}
.vrc-notes {
    margin-top: .375rem;
    color: #6c757d;
}

/* Overall regatta-results card list (Page A) */
.rr-list .frc-total {
    font-variant-numeric: tabular-nums;
}

