:root{
	--page-bg: #111821;
	--page-bg-2: #182231;
	--panel: #202c3a;
	--panel-2: #263443;
	--panel-soft: #2d3c4c;
	--line: #516170;
	--line-soft: #3b4b5b;
	--text: #e0ded7;
	--text-soft: #b7b8b3;
	--muted: #969b9d;
	--accent: #bfc4c1;
	--accent-strong: #d1d2cb;
	--accent-warm: #f2b96d;
	--good: #5fd08b;
	--bad: #ff7d72;
	--shadow: rgba(0, 0, 0, .42);
}

*{
	box-sizing: border-box;
}

html{
	min-height: 100%;
	background: radial-gradient(circle at 25% 0%, rgba(126, 155, 177, .18), transparent 34%), linear-gradient(135deg, var(--page-bg), var(--page-bg-2) 58%, #121922);
}

body,td{
	font-family:verdana;
	color:var(--text);
	background-color: transparent;
}

body{
	min-height: 100%;
	margin: 0;
	background: radial-gradient(circle at 78% 8%, rgba(156, 187, 204, .12), transparent 28%), linear-gradient(160deg, #101720 0%, #1b2532 58%, #111820 100%);
}

body > center{
	display: block;
	width: min(1180px, calc(100% - 28px));
	margin: 0 auto;
	padding: 24px 0 40px;
}

h1,h2,h3,b,strong{
	color: var(--accent-strong);
}

h3{
	margin: 0 0 10px;
	font-size: 1.17em;
	letter-spacing: 0;
}

hr{
	border: 0;
	border-top: 1px solid var(--line-soft);
	box-shadow: 0 1px 0 rgba(255,255,255,.04);
}

input[type="text"], input[type="email"], input[type="password"], select, textarea{
	background: #121a24;
	color: var(--text);
	border: 1px solid var(--line);
	border-radius: 6px;
	padding: 7px 9px;
	outline: 0;
	box-shadow: inset 0 1px 2px rgba(0,0,0,.35), 0 1px 0 rgba(255,255,255,.04);
}

input[type="text"]:focus, input[type="email"]:focus, input[type="password"]:focus, select:focus, textarea:focus{
	border-color: var(--accent);
	box-shadow: 0 0 0 3px rgba(191,196,193,.18), inset 0 1px 2px rgba(0,0,0,.35);
}

button{
	font-family: verdana;
}

.ClickedInCount{
	position: absolute;
    top: 64px;
	font-family: verdana;
    font-size: 44px;
    height: 80px;
    width: 80px;
    line-height: 80px;
    -moz-border-radius: 40px;
    border-radius: 40px;
    color: #f5fbff;
	background: radial-gradient(circle at 30% 24%, #8fb3c9, #496275 58%, #2a3948);
	border: 1px solid rgba(210,226,238,.42);
	box-shadow: 0 14px 30px var(--shadow), inset 0 1px 0 rgba(255,255,255,.24);
    text-align: center;
}

.ClickedInCountMobile{
	position: absolute;
    top: 64px;
	right: 28px;
	font-family: verdana;
    font-size: 45px;
    color: #8d8f8f;
    height: 80px;
    width: 80px;
    line-height: 80px;
    -moz-border-radius: 40px;
    border-radius: 40px;
    color: #f5fbff;
	background: radial-gradient(circle at 30% 24%, #8fb3c9, #496275 58%, #2a3948);
	border: 1px solid rgba(210,226,238,.42);
	box-shadow: 0 12px 24px var(--shadow), inset 0 1px 0 rgba(255,255,255,.24);
    text-align: center;
}

.GameTileGuage{
	position: absolute;
    right: -15px;
    bottom: -24px;
    width: 120px;
    height: 100px;
    display: inline-block;
    margin: 1em;
}

.GameTile{
	float: left;
	position: relative;
	border: 1px solid rgba(163, 185, 200, .32);
	margin-right: 25px;
	margin-bottom: 15px;
	padding: 15px;
	cursor: pointer;
	min-width: 420px;
	border-radius: 8px;
    min-height: 228px;
	background: linear-gradient(150deg, rgba(43, 58, 72, .96), rgba(29, 40, 53, .98));
	box-shadow: 0 16px 34px var(--shadow), inset 0 1px 0 rgba(255,255,255,.08);
	text-align: left;
	color: var(--text);
	transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

.GameTileMobile{
	float: none;
	position: relative;
	border: 1px solid rgba(163, 185, 200, .32);
	margin: 0 auto 25px;
	padding: 15px 15px 25px;
	cursor: pointer;
	width: 90vw;
	min-width: 0;
	max-width: none;
	justify-self: center;
	border-radius: 8px;
    min-height: 220px;
	background: linear-gradient(150deg, rgba(43, 58, 72, .96), rgba(29, 40, 53, .98));
	box-shadow: 0 16px 34px var(--shadow), inset 0 1px 0 rgba(255,255,255,.08);
	text-align: left;
	color: var(--text);
	transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

.GameTileMobile .btnActivate,
.GameTileMobile .ActivatedGame,
.GameTileMobile .CanceledGame{
	bottom: 14px !important;
}

.GameTileMobile .imgInvite{
	bottom: 11px !important;
}

.GameTile:hover,.GameTileMobile:hover{
	background: linear-gradient(150deg, rgba(54, 72, 88, .98), rgba(35, 49, 63, .98));
	border-color: rgba(205, 207, 200, .66);
	box-shadow: 0 20px 42px rgba(0,0,0,.54), 0 0 0 1px rgba(205,207,200,.12) inset;
	transform: translateY(-2px);
}

.ActivatedGame{
	position: absolute;
    left: 12px;
    bottom: 8px;
    background: linear-gradient(180deg, #3eaa68, #247247);
    color: #fff;
    padding: 6px 14px 6px 14px;
    border-radius: 6px;
	font-size: 13px;
	box-shadow: 0 7px 16px rgba(0,0,0,.24);
}

.CanceledGame{
	position: absolute;
    left: 12px;
    bottom: 8px;
    background: linear-gradient(180deg, #d55748, #9f3028);
    color: #fff;
    padding: 6px 14px 6px 14px;
    border-radius: 6px;
	font-size: 13px;
	box-shadow: 0 7px 16px rgba(0,0,0,.24);
}

.RNDVoteBox {
    background: linear-gradient(180deg, #d2e5ef, #91b1c5);
    color: #172433;
    border: 1px solid rgba(255,255,255,.55);
    padding: 3px;
    font-size: 13px;
    font-weight: bold;
    min-width: 15px;
    display: inline-block;
    text-align: center;
    border-radius: 5px;
	box-shadow: 0 3px 8px rgba(0,0,0,.22);
}

.GrayButton{
	background: linear-gradient(180deg, #dedfd9, #aeb4b1);
    color: #182431;
    padding: 5px 15px 5px 15px;
    -moz-border-radius: 7px;
    -webkit-border-radius: 7px;
	border-radius: 7px;
    outline: 0;
    cursor: pointer;
    border: 1px solid rgba(226, 239, 247, .75);
	text-decoration: none;
	display: inline-block;
	font-weight: bold;
	box-shadow: 0 8px 18px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.7);
	transition: transform .12s ease, filter .12s ease, box-shadow .12s ease;
}

.GrayButton:hover{
	background: linear-gradient(180deg, #f0f0ea, #c3c7c3);
	color: #182431;
	transform: translateY(-1px);
	box-shadow: 0 11px 22px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.8);
}

.ReplyButton {
  background: #585c60;
    background-image: -webkit-linear-gradient(top, #18191a, #393c3d);
    background-image: -moz-linear-gradient(top, #18191a, #393c3d);
    background-image: -ms-linear-gradient(top, #18191a, #393c3d);
    background-image: -o-linear-gradient(top, #18191a, #393c3d);
    background-image: linear-gradient(to bottom, #696e70, #767b7d);
    -webkit-border-radius: 6;
    -moz-border-radius: 6;
    border-radius: 6px;
    font-family: Arial;
    color: #ffffff;
    font-size: 11px;
    padding: 3px 7px 3px 7px;
    border: solid #979899 2px;
    text-decoration: none;
    outline: 0;
}

.ReplyButton:hover {
  background: #616263;
  background-image: -webkit-linear-gradient(top, #616263, #5f6061);
  background-image: -moz-linear-gradient(top, #616263, #5f6061);
  background-image: -ms-linear-gradient(top, #616263, #5f6061);
  background-image: -o-linear-gradient(top, #616263, #5f6061);
  background-image: linear-gradient(to bottom, #616263, #5f6061);
  text-decoration: none;
  cursor: pointer;
  outline: 0;
}

.SpinnerContainer{
	display: none;
	position: absolute;
    text-align: center;
    z-index: 10;
    top: 248px;
    left: calc(50% - 110px);
    background-color: var(--panel-2);
    border: 4px solid var(--accent-warm);
    padding: 21px 53px 33px 27px;
}

.spinner.loading {
  padding: 40px;
  position: relative;
  text-align: center;
}

.spinner.loading:before {
  content: "";
  height: 40px; /* WARNING: You can change the height/width, but certain dimensions make the spinner wobble. Example: 50x50 wobbles! */
  width: 40px; /* WARNING: You can change the height/width, but certain dimensions make the spinner wobble. Example: 50x50 wobbles! */
  margin: -15px auto auto -15px;
  position: absolute;
  top: 50%;
  left: 50%;
  border-width: 8px;
  border-style: solid;
  border-color: #2180c0 #ccc #ccc;
  border-radius: 100%;
  animation: rotation .7s infinite linear;
}

@keyframes rotation {
  from {
    transform: rotate(0deg);
  } to {
    transform: rotate(359deg);
  }
}

.RSVPPlayedPastWeek{
	background-color: #2f9d5b;
    color: #fff;
}

.RSVPPlayedPastMonth{
	background-color: #d4ad55;
    color: #17120a;
}

.RSVPNotPlayedPastMonth{
	background-color: #9f3d3d;
    color: #ffe9e9;
}

.RSVPInvitee{
	float: left;
	height: 26px;
    padding: 6px 10px 1px 10px;
    border: 2px solid var(--line);
    margin: 5px 5px 5px 5px;
    border-radius: 9px;
}

.RSVPInviteeLegend{
    width: 93px;
    height: 20px;
	vertical-align: middle;
	padding: 6px 10px 1px 10px;
    border: 2px solid var(--line);
    margin: 5px 5px 5px 5px;
    border-radius: 9px;
}

.RSVPIcon{
	border-radius: 9px;
    vertical-align: text-top;
	margin: -6px 11px -1px -10px;
	cursor: pointer;
}

.RSVPInviteeAlt{
	float: left;
    padding: 6px;
    border: 2px solid var(--line);
    margin: 5px 5px 5px 5px;
    border-radius: 9px;
	background-color:var(--panel-soft);
	color:var(--text);
}

.RSVPDatePicker{
	color: #191919;
    font-size: 38px;
    font-size: 18px;
    width: 107px;
}

.RSVPCalendarIcon{
	vertical-align: middle;
	margin-bottom: 4px;
	cursor: pointer;
}

.NiceTextBox{
	font-size:18px;
	width: 400px;
}

.NiceCheckBox{
	width: 16px;
    height: 16px;
    vertical-align: text-top;
}

a{font-family:verdana;color:var(--accent-strong)}

a:hover{
	color: #ffffff;
}

#tdWeather,#divWeather{
	background: linear-gradient(145deg, rgba(47,65,82,.98), rgba(31,43,56,.98)) !important;
	color: var(--accent-strong) !important;
	border: 1px solid rgba(198, 201, 196, .34) !important;
	box-shadow: 0 10px 26px rgba(0,0,0,.28);
}

#olConfirmed{
	color: var(--text);
	line-height: 1.65;
	padding-left: 28px;
}

#olConfirmed a{
	color: var(--text) !important;
}

#olConfirmed a:hover{
	color: var(--accent-strong) !important;
}

#divComments,
#divComments table,
#tblComments{
	background: transparent !important;
	color: var(--text) !important;
}

#divComments{
	border: 1px solid rgba(209, 210, 203, .34);
	border-radius: 8px;
	padding: 10px;
	background: rgba(18, 26, 36, .38) !important;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 10px 24px rgba(0,0,0,.18);
}

#tblComments{
	width: 100% !important;
	border-collapse: separate !important;
	border-spacing: 0 7px !important;
}

#tblComments tr,
#divComments tr{
	background: transparent !important;
}

#tblComments td{
	background: #202936 !important;
	color: var(--text) !important;
	border-top: 1px solid rgba(198,201,196,.16);
	border-bottom: 1px solid rgba(0,0,0,.35);
	padding: 8px !important;
}

#tblComments tr:nth-child(even) td{
	background: #24303b !important;
}

#tblComments tr[commentid] td:first-child,
#tblComments tr td:first-child{
	border-left: 1px solid rgba(198,201,196,.16);
	border-radius: 6px 0 0 6px;
}

#tblComments tr[commentid] td:last-child,
#tblComments tr td:last-child{
	border-right: 1px solid rgba(0,0,0,.42);
	border-radius: 0 6px 6px 0;
}

#tblComments *,
#divComments font{
	color: var(--text) !important;
}

#tblComments a,
#divComments a{
	color: var(--accent-strong) !important;
}

#tblComments a:hover,
#divComments a:hover{
	color: #ffffff !important;
}

#tblComments .ReplyButton{
	color: #ffffff !important;
}

.MobileComments{
	display: block;
	max-width: 100%;
}

.MobileComment{
	max-width: 100%;
	overflow: hidden;
}

.MobileCommentText,
.MobileCommentText a{
	white-space: normal !important;
	overflow-wrap: anywhere;
	word-break: break-word;
}

.MobileCommentActions{
	max-width: 100%;
}

.ui-dialog{
	background: var(--panel) !important;
	border: 1px solid rgba(198,201,196,.35) !important;
	border-radius: 8px !important;
	box-shadow: 0 22px 50px rgba(0,0,0,.55) !important;
	color: var(--text) !important;
}

.ui-dialog .ui-dialog-titlebar{
	background: linear-gradient(180deg, #334456, #233140) !important;
	color: var(--accent-strong) !important;
	border: 0 !important;
	border-radius: 8px 8px 0 0 !important;
}

.ui-dialog .ui-dialog-content{
	background: var(--panel) !important;
	color: var(--text) !important;
}

#dialogInviteEventName{
	color: var(--accent-strong) !important;
}

#btnSendInvite,#btnInviteClose,
button[onclick="inviteEmail()"],
button[onclick="saveComment()"]{
	background: linear-gradient(180deg, #dedfd9, #aeb4b1);
	color: #182431;
	border: 1px solid rgba(226,239,247,.75);
	border-radius: 7px;
	font-weight: bold;
	box-shadow: 0 7px 16px rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.7);
}

#btnSendInvite:hover,#btnInviteClose:hover,
button[onclick="inviteEmail()"]:hover,
button[onclick="saveComment()"]:hover{
	filter: brightness(1.06);
}

body.rsvp-mobile{
	padding: 0 14px 40px;
	overflow-x: hidden;
}

body.rsvp-mobile > center{
	width: 100%;
	padding: 24px 0 0;
}

body.rsvp-mobile #olConfirmed{
	padding-left: 34px;
	padding-right: 8px;
}

body.rsvp-mobile #txtComment{
	width: 100% !important;
}

body.rsvp-mobile #txtInviteEmail{
	max-width: calc(100% - 76px);
}

body.rsvp-mobile .GrayButton{
	margin-bottom: 8px;
}

.CoolButton {
	-moz-box-shadow:inset 0px 1px 0px 0px #fce2c1;
	-webkit-box-shadow:inset 0px 1px 0px 0px #fce2c1;
	box-shadow:inset 0px 1px 0px 0px #fce2c1;
	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #ffc477), color-stop(1, #fb9e25) );
	background:-moz-linear-gradient( center top, #ffc477 5%, #fb9e25 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffc477', endColorstr='#fb9e25');
	background-color:#ffc477;
	-moz-border-radius:10px;
	-webkit-border-radius:10px;
	border-radius:10px;
	border:2px solid #eeb44f;
	display:inline-block;
	color:navy;
	font-family:arial;
	font-size:15px;
	font-weight:bold;
	padding:6px 19px;
	text-decoration:none;
	text-shadow:1px 1px 0px #cc9f52;
	cursor:pointer;
	outline:0;
}

.CoolButton:hover {
	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #fb9e25), color-stop(1, #ffc477) );
	background:-moz-linear-gradient( center top, #fb9e25 5%, #ffc477 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fb9e25', endColorstr='#ffc477');
	background-color:#fb9e25;
}

.CoolButton:active {
	position:relative;
	top:1px;
}

.flipswitch {
  position: relative;
  width: 158px;
  -webkit-user-select:none;
  -moz-user-select:none;
  -ms-user-select: none;
}
.flipswitch input[type=checkbox] {
  display: none;
}
.flipswitch-label {
  display: block;
  overflow: hidden;
  cursor: pointer;
  border: 2px solid #999999;
  border-radius: 50px;
}
.flipswitch-inner {
  width: 200%;
  text-align: left;
  margin-left: -100%;
  -webkit-transition: margin 0.3s ease-in 0s;
  -moz-transition: margin 0.3s ease-in 0s;
  -ms-transition: margin 0.3s ease-in 0s;
  -o-transition: margin 0.3s ease-in 0s;
  transition: margin 0.3s ease-in 0s;
}
.flipswitch-inner:before, .flipswitch-inner:after {
  float: left;
  width: 50%;
  height: 43px;
  padding: 0;
  line-height: 43px;
  font-size: 18px;
  color: white;
  font-family: Trebuchet, Arial, sans-serif;
  font-weight: bold;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.flipswitch-inner:before {
  content: "Recurring";
  padding-left: 12px;
  background-color: #256799;
  color: #FFFFFF;
}
.flipswitch-inner:after {
  content: "Manual";
  padding-right: 33px;
  background-color: #EBEBEB;
  color: #888888;
  text-align: right;
}
.flipswitch-switch {
  width: 31px;
  margin: 6px;
  background: #FFFFFF;
  border: 2px solid #999999;
  border-radius: 50px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 113px;
  -webkit-transition: all 0.3s ease-in 0s;
  -moz-transition: all 0.3s ease-in 0s;
  -ms-transition: all 0.3s ease-in 0s;
  -o-transition: all 0.3s ease-in 0s;
  transition: all 0.3s ease-in 0s;
}
.flipswitch-cb:checked + .flipswitch-label .flipswitch-inner {
  margin-left: 0;
}
.flipswitch-cb:checked + .flipswitch-label .flipswitch-switch {
  right: 0;
}

.flipswitch2 {
  position: relative;
  width: 158px;
  -webkit-user-select:none;
  -moz-user-select:none;
  -ms-user-select: none;
}
.flipswitch2 input[type=checkbox] {
  display: none;
}
.flipswitch2-label {
  display: block;
  overflow: hidden;
  cursor: pointer;
  border: 2px solid #999999;
  border-radius: 50px;
}
.flipswitch2-inner {
  width: 200%;
  margin-left: -100%;
  -webkit-transition: margin 0.3s ease-in 0s;
  -moz-transition: margin 0.3s ease-in 0s;
  -ms-transition: margin 0.3s ease-in 0s;
  -o-transition: margin 0.3s ease-in 0s;
  transition: margin 0.3s ease-in 0s;
}
.flipswitch2-inner:before, .flipswitch2-inner:after {
  float: left;
  width: 50%;
  height: 43px;
  padding: 0;
  line-height: 43px;
  font-size: 18px;
  color: white;
  font-family: Trebuchet, Arial, sans-serif;
  font-weight: bold;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.flipswitch2-inner:before {
  content: "Enabled";
  padding-left: 12px;
  background-color: #256799;
  color: #FFFFFF;
}
.flipswitch2-inner:after {
  content: "Disabled";
  padding-right: 33px;
  background-color: #EBEBEB;
  color: #888888;
  text-align: right;
}
.flipswitch2-switch {
  width: 31px;
  margin: 6px;
  background: #FFFFFF;
  border: 2px solid #999999;
  border-radius: 50px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 113px;
  -webkit-transition: all 0.3s ease-in 0s;
  -moz-transition: all 0.3s ease-in 0s;
  -ms-transition: all 0.3s ease-in 0s;
  -o-transition: all 0.3s ease-in 0s;
  transition: all 0.3s ease-in 0s;
}
.flipswitch2-cb:checked + .flipswitch-label .flipswitch-inner {
  margin-left: 0;
}
.flipswitch2-cb:checked + .flipswitch-label .flipswitch-switch {
  right: 0;
}
