/* This wraps all of the SwimMaster content. This is primarily intended to be
 * used to overwrite styles defined in the enclosing DIV tag. */

/* Adding support for responsive layouts from v2.2 */
@media all {
.sm_online_entry_popup_container { width: 475px;}
#sm_meet_calendar_cards {display: none;}
}
@media screen and (max-width: 767px) {
#sm_meet_calendar_table {display: none;}
#sm_meet_calendar_cards {display: block;}
.sm_online_entry_popup_container { width: 300px;}
.sm_online_entry_popup { margin: 5px;}
.sm_content_entry_validation { width:80%; }
}
@media only screen and (max-width: 479px) {
.sm_content thead th { padding: 5px; }
.sm_content tbody td { padding: 5px; }
}

.sm_content td {
    padding: 1px 0.3em 1px 0.3em;
    border: 0;
    border-bottom: 1px solid #aaaaaa;
    border-left: 1px dotted #dddddd;
    border-right: 1px dotted #dddddd;
}

.sm_content th {
    padding: 1px 0.3em 1px 0.3em;
    border: 0;
    border-bottom: 2px solid black;
}

.sm_content table {
    border-collapse: collapse;
    border-spacing: 0;
}

.sm_content input[type=text], input[type=textarea], .sm_select select {
    width: 100%;
    max-width: 300px;
}

.sm_select_time {
    display: inline-flex;
    padding-right: 15px;
    
}
/* The subtitle used at the top of a page. */
.sm_page_subtitle {
    font-size: 1.2em;
    font-style: italic;
    margin: 0 0 20px 0;
    padding: 1px 4px 1px 4px;
    text-align: center;
}

/* A heading that spans across all of the columns in a table. */
.sm_heading {
    font-size: 1.5em;
    font-weight: bold;
    margin-bottom: 0;
    margin-top: 1.3em;
    text-align: center;
}

/* A subheading that spans across all of the columns in a table. */
.sm_subheading {
    font-size: 1em;
    font-style: italic;
    font-weight: bold;
    margin-bottom: 0;
    margin-top: 2px;
    text-align: center;
}

/* Left aligned table heading and data cells. */
.sm_content .sm_th_event,
.sm_content .sm_th_event_abbrev,
.sm_content .sm_th_meet_name,
.sm_content .sm_th_old_swimmer_name,
.sm_content .sm_th_relay_event,
.sm_content .sm_th_stroke,
.sm_content .sm_th_swimmer_name,
.sm_content .sm_th_swimmer_names {
    font-weight: bold;
    text-align: left;
}
.sm_td_event,
.sm_td_event_abbrev,
.st_td_meet_name,
.st_td_old_swimmer_name,
.sm_td_relay_event,
.st_td_stroke,
.st_td_swimmer_name,
.st_td_swimmer_names {
    text-align: left;
}

/* Center aligned table header and data cells. */
.sm_content .sm_th_age_group,
.sm_content .sm_th_count_club,
.sm_content .sm_th_count_national,
.sm_content .sm_th_count_relays,
.sm_content .sm_th_count_state,
.sm_content .sm_th_count_swimmers,
.sm_content .sm_th_date,
.sm_content .sm_th_fina_points,
.sm_content .sm_th_old_date,
.sm_content .sm_th_place,
.sm_content .sm_th_pool_type {
    font-weight: bold;
    text-align: center;
}
.sm_td_age_group,
.sm_td_count_club,
.sm_td_count_national,
.sm_td_count_relays,
.sm_td_count_state,
.sm_td_count_swimmers,
.sm_td_date,
.sm_td_fina_points,
.sm_td_old_date,
.sm_td_place,
.sm_td_pool_type {
    text-align: center;
}
.sm_content .sm_td_age_group_place {
    border-top-color: #aaaaaa;
    border-top-style: solid;
    border-top-width: 2px;
    text-align: center;
}

/* Right aligned table data cells. */
.sm_content .sm_th_count_swims,
.sm_content .sm_th_distance,
.sm_content .sm_th_old_time,
.sm_content .sm_th_swimmer_times,
.sm_content .sm_th_time {
    font-weight: bold;
    text-align: right;
}
.sm_td_count_swims,
.sm_td_distance,
.sm_td_old_time,
.sm_td_swimmer_times,
.sm_td_time {
    text-align: right;
}
.sm_td_time_small {
    font-size: 0.8em;
    text-align: right;
}

/* The cells containing CR, SR, NR or WR for the record type. */
.sm_td_count_club,
.sm_td_club_record {
    font-style: italic;
    color: orange;
}
.sm_td_count_state,
.sm_td_state_record {
    font-style: italic;
    color: red;
}
.sm_td_count_national,
.sm_td_national_record {
    font-style: italic;
    font-weight: bold;
    color: red;
}
.sm_td_world_record {
    font-style: italic;
    font-weight: bold;
    color: red;
}

/* Navigation bar */
.sm_content .sm_nav_bar_label {
    border-style: solid;
    border-color: #666666;
    background: #666666;
    border-width: 3px;
    color: white;
    font-style: italic;
    text-align: center;
}
.sm_content .sm_nav_bar {
    border-style: ridge;
    border-color: black;
    border-width: 1px;
    padding: 3px 6px;
    font-size: 1.2em;
    text-align: center;    
}
.sm_content .sm_nav_current {
	font-weight: bold;
	font-size: 1.4em;
}

.sm_content .sm_quick_nav {
    padding: 10px;
    text-align: center;
}

/* The statistics display at the bottom of the page. */
.sm_content .sm_stats {
    text-align: right;
    color: #CCCCCC;
}

/* The list of quick links at the top of the meets and swimmers pages. */
.sm_content .sm_quick_links_headline {
    margin-bottom: 0;
    margin-top: 1em;
    text-align: center;
}
.sm_content .sm_quick_links {
    margin-bottom: 0;
    margin-top: 1em;
    text-align: center;
}

/* The navigation bar on the age_records page. */
.sm_content .sm_age_records_nav {
    text-align: center;
    margin-bottom: 0;
    margin-top: 1em;
}

/* The collection of pull-down lists to select an event. */
.sm_event_selector {
    margin-bottom: 1em;
    margin-top: 1em;
}

/* Center all tables. */
.sm_content table {
    margin-left: auto;
    margin-right: auto;
    width: 95%;
}
.sm_content .sm_events_table {
    width: auto;
}

/* Popups */
.sm_close_popup {
    float: right;
}
.sm_popup {
    background-color: white;
    border: 1px solid black;
    visibility: hidden;
    padding: 5px;
    position: absolute;
    cursor:pointer;
}
.sm_editresult_popup {
    width: 325px;
    background-color: white;
    border: 1px solid black;
    visibility: hidden;
    padding: 5px;
    position: absolute;
    cursor:pointer;
}
.sm_editresult_popup input[type=text] {
    max-width: 55px;
}
.sm_editresult_popup select {
    max-width: 100px;
}
.sm_sd3_popup {
    background-color: white;
    border: 1px solid black;
    visibility: hidden;
    padding: 5px;
    position: absolute;
}
.sm_online_entry_popup_container {
    background-color: white;
    border: 1px solid black;
    visibility: hidden;
    padding: 15px;
    position: absolute;
    z-index: 1;
    box-shadow: 2px 2px 1px #888888;
    box-sizing: border-box;
}
.sm_online_entry_popup {
    margin-left: 35px;

}
#sm_online_entry_popup_dob{
    display: flex;
}
#sm_online_entry_popup_dob .swimmer_day select {
    width: 50px;
}

#sm_online_entry_popup_dob .swimmer_month select {
    width: 85px;
}
.sm_link {
    text-decoration:underline;
    cursor:pointer;
}

.sm_online_entry_link {
    text-decoration:underline;
    cursor:pointer;
}

.sm_sd3_download_link {
    text-decoration:underline;
    cursor:pointer;
}
.sm_content_entry_validation {
    background-color: #fa9595;
    padding: 15px;
    margin-bottom:15px;
    width:50%;
}
.sm_entry_validation_headline {
    color: red;
    font-weight:bold;

}
 .sm_entry_validation_message, .delete_result_message {
    color: red;
    font-weight:bold;

}
/* Widgets */

/* All Left side DIVs */
.sm_widget_left_div {
    left:0;
    position:relative;
    height:10px;
    left:0px;
    
}
/* Right side of FINA Points */
.sm_widget_40_left_div {
    left:40px;
    top:-10px;
    position:relative;
    height:10px;   
    max-width: 200px
}
/* Right side of Meet Results */
.sm_widget_85_left_div {
    left:85px;
    top:-10px;
    position:relative;
    height:10px;  
    max-width: 200px
}
/* Right side of Club Records */
.sm_widget_100_left_div {
    left:100px;
    top:-10px;
    position:relative;
    height:10px;   
    max-width: 200px
}
/* Right side of Birthdays */
.sm_widget_130_left_div {
    left:130px;
    top:-10px;
    position:relative;
    height:10px;   
    max-width: 200px 
}

.sm_meet_calendar_card {
  position: relative;
  height: 155px;
  border: solid 1px;
  padding: 5px;
  margin-bottom: 10px;
  box-shadow: 2px 2px 1px #888888;
}
.sm_card_date {
    padding: 1px;
    position: relative;
}
.sm_card_meet_name{
    padding: 1px;
    position: relative;
}
.sm_card_meet_venue_name {
    padding: 1px;
    position: relative;
}
.sm_card_meet_pool_type {
    padding: 1px;
    position: relative;
}
.sm_card_meet_enter_link {
    padding: 1px;
    position: relative;
    font-weight: bold;
    width: 75px;
}
.sm_card_meet_closing_date {
    padding: 1px;
    position: relative;
    top: -25px;
    left: 60px;
    width: 150px;
    height: 25px;
}
.sm_card_meet_info_url {
    padding: 1px;
    position: relative;
    top: -50px;
    text-align: right;
    right: -225px;
    width: 20px;
}
/* The div elements in the new responsive layout forms. */
  .sm_form_field select, input {
	width: auto;
 }
   .sm_form_field input[type=checkbox] {
	margin-top: -4px;
 }
 .sm_form_field {
	max-width: 450px;
 }
#sm_admin_relay_result_tbl {
	width: auto;
	margin: 10px;
}

#sm_admin_results_row {
	position: relative;
	display: flex;
	flex-flow: row wrap;
}
