
/* --- Global Styles --- */

body { font-family: Arial, Helvetica, sans-serif; font-size: 90%; margin: 0; padding: 0; }
td, input { font-family: Arial, Helvetica, sans-serif; }
header, section, footer, aside, nav, main, article, figure { display: block; }

h1 { margin-top: 0; margin-bottom: 5px; padding: 0 10px 0 0; font-weight: bold; font-size: 130%; }

h2 { margin-top: 0; margin-bottom: 5px; padding: 0 10px 0 0; font-weight: bold; font-size: 110%; }

h3 { margin-top: 0; margin-bottom: 5px; padding: 0 10px 0 0; font-weight: bold; font-size: 100%; }

h4 { margin-top: 0; margin-bottom: 3px; padding: 0; font-weight: bold; font-size: 90%; }

li { margin-bottom: 2px; margin-top: 2px; }
form { padding: 0; margin: 0; }
hr { height: 1px; border: 0 none; background-color: gray; padding: 0; margin: 6px 0; }
img.absmiddle { vertical-align: middle; }
pre { padding: 0; margin: 3px 0 3px 0; }

a img { border: 0 none; }
a:link, a:visited, a:active { color: midnightblue; text-decoration: none; }
a:hover { color: midnightblue; text-decoration: underline; }

/* --- Page Layout --- */

section { position: relative; }
footer { margin-top: 20px; border-top: 1px solid gainsboro; padding: 10px 0; }
section::after, .outer-container::after { content: ""; clear: both; display: table; }

footer { color: white; border-top: 0 none; font-size: 90%; margin: 10px 0; background-color: rgb(172, 172, 172); }
footer a, footer a:link, footer a:visited  { color: white; }
footer a:hover { color: rgb(108, 165, 37); text-decoration: none; }
footer #copyright { float: left; width: 30%; min-width: 240px; }
footer .sponsor { float: left; width: 40%; min-width: 320px; text-align: center; }
footer .links { float: right; overflow: hidden; }
footer #copyright { font-size: 85% }
footer .links div { display: inline-block; padding: 0 5px; border-right: 1px solid white; }
footer .sponsor img { max-width: 100%; }

.main-content::after, .outer-container::after, footer::after { content: ""; clear: both; display: table; }
.main-container { background-color: white; padding-bottom: 20px; min-height: calc(100% - 350px); }
.main-container { min-height: calc(100% - (15vw + 200px)); }
body.presentation .main-container { min-height: calc(100% - (80px)); }
.main-content { max-width: 970px; margin: auto; background-color: white; }
body.presentation .main-content { max-width: none; }
.main-content { padding: 0; }
.main-content-area { float: left; max-width: 980px; padding: 10px; background-color: white; }
body.presentation .main-content-area, body.admin .main-content-area { max-width: none; }

/* .main-content-area { padding: 5px 5px; margin: auto; }*/
.right-edge {  border-right: 1px solid gainsboro; }
.outer-container { min-height: 400px; }

aside { float: left; width: 170px; padding: 10px 0 10px 0; background-color: white; }
body.presentation aside { float: right; }
body.presentation aside .sponsor img { width: 100%; padding-bottom: 5px; }
body.presentation aside .sponsor::after { content: ""; clear: both; display: table; }
aside div.message { float: left; background-color: rgb(245,245,245); border-color: gray; border-width: 0 0 1px 0; border-style: solid; margin: 0 0 5px 0; padding: 3px 3px; }
aside span.score { padding: 0 3px; }

.top-logo { line-height: 0; text-align: center; position: relative; }
.unigolftour { background-image: url('../images/backgrounds/wood.jpg'); }

/* --- Form Elements --- */

select { border: 1px solid gray; font-size: 90%; }
input[type=text], input[type=password], textarea {border: 1px solid gray; font-size: 90%; }

input[type=submit], input[type=button] { font-size: 90%; }
input[type=radio] { vertical-align: bottom; }
input[readonly], select[readonly], textarea[readonly] { background-color: gainsboro; }
input[disabled], select[disabled], textarea[disabled] { background-color: gainsboro; }

.x-long  { width: 500px; }
.long    { width: 325px; }
.medium  { width: 240px; }
.short   { width: 120px; }
.x-short { width: 80px;  }
.xx-short_text { width: 20px;  }

.small { font-size: 70%; }
label, .input-caption { font-weight: bold; font-size: 90%; }
div.form-group { display: inline-block; }
div.input-group { display: inline-block; float: left; }
div.input-group label { padding: 6px 6px 6px 0; display: inline-block; float: left; }
div.input-group input { margin: 6px 6px 6px auto; display: inline-block; float: left; }
.error { background-color: orangered; }
.correct { background-color: chartreuse; }
#holes_info, #handicaps_info { padding-left: 5px; }

/* --- Tables --- */

td { font-size: 90%; }
th { font-size: 100%; font-weight: bold; text-align: center; }

/* table stripes */

tr.tbl-stripes-0 { background-color: #999; }
tr.tbl-stripes-0 td, tr.tbl-stripes-0 td a { color: white; text-decoration: none; font-weight: bold; }
tr.tbl-stripes-0 td, tr.tbl-stripes-1 td, tr.tbl-stripes-2 td, tr.tbl-stripes-3 td { padding-left: 3px; padding-right: 3px; }
tr.tbl-stripes-1 { background-color: #F2F2F2; }
tr.tbl-stripes-2 { background-color: #E2E2E2; }
tr.tbl-stripes-3 { background-color: #FF9966; }
tr.tbl-stripes-1:hover, tr.tbl-stripes-2:hover { background-color: lemonchiffon; }
td.order-active { background-image: url('../images/icons/icon_order_nil.gif'); background-repeat: no-repeat; background-position: right center; }
td.list-header { font-size: 90%; color: white; text-align: left; font-weight: bold; padding-left: 3px; }
a.list-header:active, a.list-header:link, a.list-header:visited { font-size: 90%; color: white; font-weight: bold; text-decoration: underline; }
a.list-header:hover { color: black; }
td.no-hurry { background-color: yellowgreen; }
td.due { background-color: gold; }
td.overdue { background-color: orangered; }
.tournament-list thead td { font-size: 110%; }

/* --- Pagination --- */

table.pagin{ margin: 10px 0 0 0; }
table.pagin td.paginicon { width: 22px; padding: 1px 5px 0 5px; vertical-align: middle; }
table.pagin td.sites { padding: 1px 0 0 0; vertical-align: middle; }
table.pagin span.akt, table.pagin td a, table.pagin td a:visited { font-weight: bold; font-size: 90%; margin: 0 3px; color: midnightblue; }
table.pagin td span.akt { background: #FFFFFF; border: 1px solid #CFCFCF; height: 18px; padding: 1px 2px; }

/* --- Divs --- */

div.error-message { border: 1px solid gray; background: gold; color: black; padding: 4px 10px 4px 10px; margin: 5px 20px 15px 15px; }
div.message { border: 1px solid gray; background: lightgreen; color: black; padding: 4px 10px 4px 10px; margin: 5px 20px 15px 15px; }
div.debug-message { color: dimgray; }
div.content-box { border: 1px solid gainsboro; padding: 4px 10px 4px 7px;  margin: 10px 20px 10px 0; }

/* --- Searchbox --- */

div#searchform { position: absolute; top: 5px; right: 18px; border: 1px solid steelblue; overflow: hidden; }
div#searchhandle { float: right; padding-top: 1px; padding-right: 3px; text-align: right; }
div.searchform-big { width: 400px; padding: 0 0 6px 3px; background: azure; }
div.searchform-small { width: 60px; padding: 0; background: azure; }
div.searchform-small-active { width: 60px; padding: 0; background: rgb(255,240,50); font-weight: bold; }
div#searchform_content { display: none; }
div.searchform-row { padding-bottom: 6px; padding-top: 2px; }

/* --- Calendar Popup --- */

div#calendarDiv { position: absolute; visibility: hidden; background-color: white; }
table.cpBorder {  }
td.cpMonthNavigation {  }
select.cpMonthNavigation {  }
td.cpYearNavigation {  }
select.cpYearNavigation {  }
td.cpDayColumnHeader {  }
span.cpDayColumnHeader {  }
td.cpOtherMonthDate {  }
a.cpOtherMonthDate {  }
td.cpCurrentMonthDate {  }
a.cpCurrentMonthDate {  }
td.cpTodayText {  }
a.cpTodayText {  }

/* --- Miscellaneous --- */

span.link-list-item { padding-right: 12px; }
span.link-list-item a { color: midnightblue; font-weight:bold; }
span.link-list-item a.active-entry { color: darkred; }
.courses-missing { background-color: firebrick; padding: 2px 0 1px 2px; }

/* --- Menu --- */

section#main { padding-left: 150px; }
.vertical-menu-panel { width: 140px; height: 100%; padding: 10px 5px 0 5px; font-size: 90%; z-index: 99; }
.vertical-menu-panel { background-color: lightblue; }
.vertical-menu-panel { background: linear-gradient(180deg, rgb(86,161,214) 5%, rgb(198,224,242) 95%); }
div.vertical-menu-panel { float: left; }

div.menu-header { font-weight: bold;  border-bottom: 1px solid black; border-top: 1px solid black; padding: 1px 0 1px 2px; }
div.menu-header { background-color: aliceblue; }
div.menu-header { background: linear-gradient(180deg, #68B6FF 5%, #ECF6FE 95%); }

div.submenu-header { border-bottom: 1px solid black; border-top: 1px solid black; padding: 1px 0 1px 2px; margin: 2px 0 1px 0; }
div.submenu-header { background-color: firebrick; }
div.submenu-header { background: linear-gradient(180deg, #9C1A1A 5%, #BE3939 95%); }

div.menu-entry { padding: 1px 0 1px 4px; }
div.menu-entry a:link, div.menu-entry a:visited, div.menu-entry a:active { color: rgb(0,0,50); text-decoration: none; }
div.last-entry { border-bottom: 1px solid black; padding-bottom: 3px !important; margin-bottom: 1px; }
div.menu-entry a:hover { color: rgb(0,0,50); text-decoration: underline; }
div.menu-active { background-color: paleturquoise; background-image:url('../images/backgrounds/menu_active_2.gif'); background-repeat: no-repeat; background-position: right center; }

/* --- Global Styles --- */

a.external { background-image: url('../images/icons/external-link-icon.gif'); padding-right: 14px; background-position: right center; background-repeat: no-repeat; }

/* --- Form Elements --- */

input.small { font-size: 70%; }
span.small { font-size: 70%; }

/* --- Tables --- */

td { font-size: 90%; }

th { font-size: 100%; font-weight: bold; }

table.nospacing { border-collapse: collapse; border-spacing: 0; }

table.nopadding td, table.nopadding th { padding: 0; }

tr.main-content { background-color: beige; }

td.main-content { padding: 10px 10px 20px 0; }

td.admin-content-area { width: 795px; padding: 12px 0 10px 10px; background-color: beige; }

td.sidebar { padding: 5px 5px 10px 10px; background-color: khaki; }

td.right-edge {  border-right: 1px solid gainsboro; }

body.presentation table.main-container { margin: 0; }

body.presentation td.main-content { padding-left: 10px; }

td.input-caption { font-weight: bold; font-size: 90%; }

table.frontend tr.tbl-stripes-0 { background-color: firebrick; }

table.frontend { border-bottom: 1px solid firebrick; }

tr.tbl-stripes-0 td, tr.tbl-stripes-0 td a {
	color: white; text-decoration: none; font-weight: bold;
}

tr.tbl-stripes-0 td, tr.tbl-stripes-1 td, tr.tbl-stripes-2 td, tr.tbl-stripes-3 td {
	padding-left: 3px; padding-right: 3px;
}

tr.tbl-stripes-1 { background-color: #F2F2F2; }

tr.tbl-stripes-2 { background-color: #E2E2E2; }

tr.tbl-stripes-3 { background-color: #FF9966; }

tr.tbl-stripes-1:hover, tr.tbl-stripes-2:hover { background-color: lemonchiffon; }

td.order-active { background-image: url('../images/icons/icon_order_nil.gif'); background-repeat: no-repeat; background-position: right center; }

td.list-header { font-size: 90%; color: white; text-align: left; font-weight: bold; padding-left: 3px; }

a.list-header:active, a.list-header:link, a.list-header:visited {
	font-size: 90%; color: white; font-weight: bold; text-decoration: underline;
}

a.list-header:hover { color: black; }

table.scoreboard { border: 1px solid #444444; border-collapse: collapse; }

table.scoreboard th { padding: 2px 5px 2px 5px; color: white; font-weight: bold; font-size: 100%; white-space: nowrap; background-color: firebrick; border-right: 1px solid #444444; border-bottom: 1px solid #444444; }

table.scoreboard td { padding: 2px 5px 2px 5px; font-weight: normal; font-size: 100%; white-space: nowrap; background-color: #EEEEEE; border-right: 1px solid #444444; }

table.scoreboard th.active-round { color: khaki; text-decoration: underline; }

table.scoreboard th a { color: white; }

table.scoreboard tr.footer td { font-weight: normal; font-size: 80%; background-color: firebrick; color: beige; }

table.scoreboard tr.category-header td { font-weight: bold; background-color: white; padding: 5px; border-bottom: 1px solid #444444; }

table.scoreboard tr.result td { border-bottom: 1px dotted #888888; }

table.scoreboard tr.result td[rowspan="2"] { border-bottom: 1px solid #444444; }

table.scoreboard tr.annulled td { color: red; }
table.scoreboard tr.annulled + tr { border-bottom: 2px solid black; }

table.scoreboard tr.team-header { font-size: 150%; }
table.scoreboard img.team-logo { display: block; max-width: 56px; max-height: 23px; margin: auto; padding: 0; }
table.team-totals { font-size: 150%; }

@media (min-width: 1800px) {
    table.scoreboard tr.team-header { font-size: 250%; }
    table.scoreboard img.team-logo { max-width: 56px; max-height: 43px; }
    table.team-totals { font-size: 250%; }
}


table.scoreboard tr.intermediate td { border-bottom: 1px solid #444444; font-weight: bold; padding-left: 20px; }

table.scoreboard tr.scorecard { border-bottom: 1px solid #444444; }

table.scoreboard tr.scorecard td { padding: 1px; }

table.scorecard { border: 1px solid #888888; border-collapse: collapse; }

table.scoreboard table.scorecard td { border: 1px solid #888888; width: 20px; text-align: center; font-size: 90%; }

table.scoreboard table.scorecard tr.pars td { color: #555555; }

td.sum { background-color: #CCCCCC !important; min-width: 30px; }

.eagle { background-color: yellow !important; }

.birdie { background-color: salmon !important; }

.par { background-color: yellowgreen !important; }

.bogey { background-color: lightsteelblue !important; }

.dbogey { background-color: steelblue !important; }

div.legend { width: 20px; height: 14px; border: 1px solid #888888; }

table.legend { margin-top: 2px; }

td.finished { color: maroon; }

td.running { color: #004000; }

table.admin-list { margin-top: 3px; border-bottom: 1px solid #888888; }

table.main-container td.footer { font-size: 90%; padding: 0; }

table.main-container td.footer hr { margin: 5px 0; }

.links .seddin { display: none; }

/* --- Pagination --- */

table.pagin{ margin: 10px 0 0 0; }

table.pagin td.paginicon { width: 22px; padding: 1px 5px 0 5px; vertical-align: middle; }

table.pagin td.sites { padding: 1px 0 0 0; vertical-align: middle; }

table.pagin span.akt, table.pagin td a, table.pagin td a:visited {
	font-weight: bold; font-size: 90%; margin: 0 3px; color: midnightblue;
}

table.pagin td span.akt { background: #FFFFFF; border: 1px solid #CFCFCF; height: 18px; padding: 1px 2px; }

/* --- Divs --- */

div.error-message { border: 1px solid gray; background: gold; color: black; padding: 4px 10px 4px 10px; margin: 5px 20px 15px 15px; }

div.message { border: 1px solid gray; background: lightgreen; color: black; padding: 4px 10px 4px 10px; margin: 5px 20px 15px 15px; }

div.debug-message { color: dimgray; }

div.content-box { border: 1px solid gainsboro; padding: 4px 10px 4px 7px;  margin: 10px 20px 10px 0; }

div.refresh_form { position: absolute; top: 10px; right: 10px; width: 250px; height: 30px; text-align: right; }

/* --- Menu --- */

nav.top-menu { background-color: rgb(1, 25, 72); padding: 3px; }

.top-menu ul { margin: auto; padding: 0; list-style: outside none none; }

.top-menu li { float: left; padding: 0; margin: 0; border-right: 0 solid white; }

.top-menu a, .top-menu span.spacer { display: block; padding: 3px 20px 3px 20px; color: white; background-color: rgb(1, 25, 72); }

div#overmenu a { display: block; padding: 3px 20px 3px 20px; color: white; background-color: rgb(1, 25, 72); }

.top-menu a:hover, .top-menu a.active, div#overmenu a:hover, div#overmenu a.active {
    background-color: rgb(108, 165, 37); text-decoration: none;
}

.top-menu ul::before, .top-menu ul::after {
    content: "";
    display: table;
    line-height: 0;
    clear: both;
}

td.vertical-menu-panel { width: 140px; background-color: rgb(255,250,186); background: linear-gradient(180deg, #EBD05A 5%, #FEF8B6 95%); padding: 10px 5px 0 5px; font-size: 80%; }

div.menu-header { font-weight: bold; background-color: firebrick; background: linear-gradient(180deg, #9C1A1A 5%, #BE3939 95%); color: beige; border-bottom: 1px solid black; border-top: 1px solid black; padding: 1px 0 1px 2px; }

div.submenu-header { color: beige; border-bottom: 1px solid black; border-top: 1px solid black; padding: 1px 0 1px 2px; margin: 2px 0 1px 0; }

div.menu-entry { padding: 1px 0 1px 4px; }

div.menu-entry a:link, div.menu-entry a:visited, div.menu-entry a:active {
	color: rgb(0,0,50); text-decoration: none;
}

div.last-entry { border-bottom: 1px solid black; padding-bottom: 3px !important; margin-bottom: 1px; }

div.menu-entry a:hover { color: rgb(0,0,50); text-decoration: underline; }

div.menu-active { background-color: paleturquoise; background-image:url('../images/backgrounds/menu_active_2.gif'); background-repeat: no-repeat; background-position: right center; }

/* --- Searchbox --- */

div#searchform { position: absolute; top: 5px; right: 18px; border: 1px solid steelblue; overflow: hidden; }

div#searchhandle { float: right; padding-top: 1px; padding-right: 3px; text-align: right; }

div.searchform-big { width: 400px; padding: 0 0 6px 3px; background: azure; }

div.searchform-small { width: 60px; padding: 0; background: azure; }

div.searchform-small-active { width: 60px; padding: 0; background: rgb(255,240,50); font-weight: bold; }

div#searchform_content { display: none; }

div.searchform-row { padding-bottom: 6px; padding-top: 2px; }

/* --- Calendar Popup --- */

div#calendarDiv { position: absolute; visibility: hidden; background-color: white; }

table.cpBorder {  }

td.cpMonthNavigation {  }

select.cpMonthNavigation {  }

td.cpYearNavigation {  }

select.cpYearNavigation {  }

td.cpDayColumnHeader {  }

span.cpDayColumnHeader {  }

td.cpOtherMonthDate {  }

a.cpOtherMonthDate {  }

td.cpCurrentMonthDate {  }

a.cpCurrentMonthDate {  }

td.cpTodayText {  }

a.cpTodayText {  }

/* --- Miscellaneous --- */

span.link-list-item { padding-right: 12px; }

span.link-list-item a { color: midnightblue; font-weight:bold; }

span.link-list-item a.active-entry { color: darkred; }

div#overmenu {
	background-color: #323264;
	border: 1px solid #5E5E5E;
	padding: 2px 6px 3px 2px;
	position: absolute;
	left: 0;
	top: 0;
	display: none;
	visibility: hidden;
	z-index: 1000;
}

.progressbar-container { width: 90%; height: 10px; border: 1px solid gray; margin: 2px 0 2px 5px; }
.progressbar { width: 100%; height: 100%; background-color: gray; transform-origin: 0 0; -moz-transform-origin: 0 0; -webkit-transform-origin: 0 0; -ms-transform-origin: 0 0; }
.tournaments-container { float: left; padding-right: 10px; }

/* Responsive Navigation */

nav#desktop {
    position: absolute; top: 0; left: 0; z-index: 99;
}

.nav {
    width:100%;
    background-color: slategray;
    border-bottom: 1px solid #ccc;
    text-align: right;
    position: relative;
    font-size: 100%;
}
.nav:after { clear: both; }

ul.simple-toggle { display: none; }

a.anchor-link {
    text-align: right;
    padding: 10px 15px;
    text-decoration: none;
    margin: 1px;
    font-weight: bold;
    display: none;
}
a.anchor-link:link, a.anchor-link:visited, a.anchor-link:active {
    color: white;
}

@media (max-width: 857px) {
    aside.sidebar { width: 100%; margin: 0; }
}

@media (max-width: 48.000em) {

    .main-content-area { min-width: 240px; }
    input,select,textarea { margin-top: 8px; margin-bottom: 8px; }
    input[type=radio] { vertical-align: baseline; }

    section#main { padding-left: 0; }
    .vertical-menu-panel { display: none; }
    a.anchor-link { display: block; }

    ul.simple-toggle {
        background-color: #F0F0F0;
        box-shadow: 2px 2px 3px #444444;
        list-style: none outside none;
        margin: 0;
        padding: 0;
        position: absolute;
        right: 5px;
        top: 100%;
        width: 70%;
        z-index: 500;
        border-bottom: 1px solid black;
        font-weight: bold;
    }
    ul.simple-toggle li { display: block; list-style: none; text-align: center; border-top: 1px solid #ccc; }
    ul.simple-toggle li a { display: block; padding: 20px 10px; text-decoration: none; }
    ul.simple-toggle li a:hover { background-color: #FAFAFA; text-decoration: underline; }

    ul.simple-toggle li.menu-header { font-weight: bold;  border-top: 1px solid black; padding: 15px 10px; margin: 0; }
    ul.simple-toggle li.menu-header { background-color: lightsteelblue; }

    ul.simple-toggle li.submenu-header { border-top: 1px solid black; padding: 15px 10px 15px 25px; margin: 0; }
    ul.simple-toggle li.submenu-header { background-color: lightsteelblue; }

    ul.simple-toggle li.menu-entry { margin: 0; }

    ul.simple-toggle li.menu-entry a:link, li.menu-entry a:visited, li.menu-entry a:active {
        color: rgb(0,0,50); text-decoration: none;
    }

    ul.simple-toggle li.menu-active { background-color: #EEBB33; }

}

div.help {
    border: 1px solid black; background-color: rgb(255,250,186); padding: 15px; margin-top: 15px; font-size: 80%;
}
div.help h3 { margin-bottom: 5px; }

div.luc_suggestbox {
    z-index:5;
    border:0 none;
    background-color:white;
    margin:0;
    padding:0;
    position:absolute;
    line-height:100%;
    min-height:40px;
    visibility:hidden;
}

div.luc_suggestbox select { min-width:128px; margin:0; }

#luc_suggestbox, #luc_suggestbox2 { top:18px; left:0; min-width:128px; }

#modal_background {
    display: none;
    position: fixed;
    z-index: 100;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto; /* Enable scroll if needed */
    background-color: silver; /* Fallback color */
    background-color: rgba(0, 0, 0, 0.4); /* Black w/ opacity */
}
#modal_container {
    background-color: white;
    margin: 15% auto; /* 15% from the top and centered */
    padding: 0;
    border: 1px solid #888;
    border-radius: 5px;
    max-width: 800px;
    width: 90%;
}
#modal_header {
    text-align: right;
    font-weight: bold;
    font-size: 28px;
    color: dimgray;
    padding: 0 10px;
    border-bottom: 1px solid silver;
}
#modal_header:hover, #modal_header:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}
#modal_content {
    padding: 10px;
}
