@import url(https://fonts.googleapis.com/css?family=Muli);

@viewport {
  width: device-width ;
  zoom: 1.0 ;
}

.footer {
  position: absolute;
  bottom: 10px;
  width: 50%;
  border-top: 1px solid silver;
  font-size: 0.8em;
}

table {
    border-collapse: collapse;
    border-color: #ccc;
}

tr.currentcont td {
    font-weight: bold;
    background-color: #fff;
}

tr.oldcont {
    background-color: #eee;
}

td, th {
    font-size: 13px;
    line-height: 16px;
    border-bottom: 1px solid #eee;
    vertical-align: top;
    padding: 8px;
    font-family: "Roboto", "Lucida Grande", Verdana, Arial, sans-serif;
}

.newcomp td {
    background-color: red;
    display: none;
}
.oldcomp td {
    background-color: blue;
}

th {
    font-weight: 600;
    align: left;
}

.reflist {
    border-spacing: 10px 0;
}

.reflist td, th {
    font-size: 14px;
    padding: 1px;
    font-family: "Roboto", "Lucida Grande", Verdana, Arial, sans-serif;
    padding-right: 10px;
    vertical-align: top;
    text-align: left;
}

.btn {
  display: inline-block;
  font-weight: 400;
  color: #212529;
  text-align: center;
  vertical-align: center;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.btn-light {
  color: #ffffff;
  background-color: #17447f;
  border-color: #17447f;
}
.btn-light.active {
  color: #212529;
  background-color: #18ade5;
  border-color: #f8f9fa;
}

.putton {
    font-weight:bold;
    background:#17447f;
    color:#fff;
    padding:10px 20px;
    font-size:14px;
    text-transform:uppercase;
    //float: right;
    border: 1px solid;
    border-color: white;
}
.putton:hover {
    background:#18ade5;
}

.putton2 {
    width: 100%;
    font-weight:bold;
    background:#17447f;
    color:#fff;
    padding:10px 20px;
    font-size:14px;
    text-transform:uppercase;
    float: right;
    border: 1px solid;
    border-color: white;
}
.putton2:hover {
    background:#18ade5;
}

.putton3 {
    width: 200px;
    font-weight:bold;
    background:#17447f;
    color:#fff;
    padding:10px 20px;
    font-size:14px;
    text-transform:uppercase;
    border: 1px solid;
    border-color: white;
}
.putton3:hover {
    background:#18ade5;
}

.cookie-content {
    width: 100%;
    font-size:18px;
    font-weight:bold;
    vertical-align: center;
}
.btn-orange {
    font-weight:bold;
    background:orange;
    color:#fff;
    padding:5px 5px;
    font-size:14px;
    border: 1px solid;
    border-color: white;
    vertical-align: center;
}

.fakebutton {
    font-weight:bold;
    background:#17447f;
    color:#fff;
    padding:10px 10px;
    font-size:14px;
    text-transform:uppercase;
}
.fakebutton:hover {
    background:#18ade5;
}

.inputlike {
    clear:both;
    float:left;
    margin:0 0 10px;
    background-color:#efefef;
    border:0;
    padding:6px 10px;
    font-size:14px;
}

#id_role li {
    list-style-type: none;
    /*float:left;
    padding:4px 10px;*/
}

.regcheckbox {
	-webkit-appearance: none;
	background-color: #fafafa;
	border: 1px solid #cacece;
	box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px -15px 10px -12px rgba(0,0,0,0.05);
	padding: 9px;
	border-radius: 3px;
	display: inline-block;
	position: relative;
}
.regcheckbox:active, .regcheckbox:checked:active {
	box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px 1px 3px rgba(0,0,0,0.1);
}
.regcheckbox:checked {
	background-color: #e9ecee;
	border: 1px solid #adb8c0;
	box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px -15px 10px -12px rgba(0,0,0,0.05), inset 15px 10px -12px rgba(255,255,255,0.1);
	color: #99a1a7;
}
.regcheckbox:checked:after {
	content: '\2714';
	font-size: 14px;
	position: absolute;
	top: 0px;
	left: 3px;
	color: #17447f;
}
.big-checkbox {
	padding: 18px;
}
.big-checkbox:checked:after {
	font-size: 28px;
	left: 6px;
}


body {
    width: 100%;
    height: 100%;
    margin:0;
    padding:0;
    font-family:helvetica, sans-serif;
}

p {
    line-height: 1;
}

a {
    color:#17447f;
    text-decoration:none;
}

a:hover {
    color:#18ade5;
}

h1, h2, h3, h4, h5 , h6 {
    font-family: "Roboto", "Lucida Grande", Verdana, Arial, sans-serif;
    #font-family: 'Muli', sans-serif;
    font-weight:normal;
}

h1 {
    border-bottom:1px solid #bbb;
    padding: 0 0 10px 0;
    //margin:10px 0 0px 0;
    margin-bottom: 0px;
    color: #ffffff;
    background:#17447f;
    font-size: 54px;
    //line-height: 54px;
    text-align:center;
}

h2 {
    //margin:30px 0 20px;
}

ol {
    line-height:1.5;
}

#header {
    padding:10px 100px;
    font-size:14px;
    background:#17447f;
    color:#fff;
    border-bottom:4px solid #17447f;
    overflow:auto;
}

#header .logo {
    font-family: 'Muli', sans-serif;
    float:left;
    color:#f3f7cc;
    font-size:20px;
    margin-right:10%;
}

#header ul.menu {
    list-style:none;
    float:left;
    margin:0;
    padding:0;
}
#header ul.menu li {
    float:left;
    padding:4px 10px;
}

#header ul.menu li.selected a, #header ul.menu li.selected a:hover {
    color:#18ade5;
    font-weight:bold;
}

#header a {
    color:#f3f7cc;
}
#header a:hover {
    color:#fff;
}

#header .user {
    float:right;
    padding-top:4px;
}

#content1 {
    padding: 0 30px 50px 30px;
}

/* forms */
form {
    overflow:auto;
}

form p {
    width:100%;
    overflow:auto;
}

label {
    /*float:left;*/
    clear:both;
    color:#333;
    margin-bottom:4px;
}
input, textarea {
    /*clear:both;*/
    /*float:left;*/
    margin:0 0 10px;
    background:#efefef;
    border:1;
    padding:6px 10px;
    font-size:14px;
    max-width: 100%;
}
input:read-only {
  color: gray;
}
Xselect:read-only {
  color: gray;
}
input[type=submit], a.button {
    font-weight:bold;
    background:#17447f;
    color:#fff;
    padding:10px 20px;
    font-size:14px;
    text-transform:uppercase;
}
input[type=submit]:hover, a.button:hover {
    background:#18ade5;
}

.errorlist {
    color:#cc0033;
    float:left;
    clear:both;
    padding-left:10px;
}
.helptext {
    margin:0 0 20px 0;
    color:#aaa;
    clear:both;
    float:left;
    font-size:13px;
}
/* messages */
ul.messages {
    margin:10px 100px;
    padding:0;
    list-style-type:
    none;
}
ul.messages li.success,
ul.messages li.warning,
ul.messages li.error,
ul.messages li.info {
    margin:0;
    padding:14px 20px;
    list-style:none;
    color:#fff;
}

ul.messages li.success { background:#81ce81; }
ul.messages li.success a { color:#0ac33e; }

ul.messages li.error { background:#a30029; color:#e9828e; }
ul.messages li.error a { color:#e9828e; }

ul.messages li.info { background:#faffae; color:#696b4e; }
ul.messages li.info a { color:#1586de; }

ul.messages li.warning { background:#de9404; }
ul.messages li.warning a { color:#f49000; }

ul.messages li a.close {
    margin:0;
    float:right;
    opacity:1;
    border:0;
    box-shadow:none;
    text-shadow:none;
}

.login-form {
    float:left;
}

/* social-auth */
.social {
    float:right;
}
.social li {
    list-style:none;
    padding:10px 20px;
    margin:0 0 10px 0;
}
.social li a {
    width:100%;
    height:100%;
    display:block;
    color:#fff;
}
.social li.facebook { background:#3b5399; }
.social li.twitter { background:#00cffa; }
.social li.google { background:#de1710; }


/* images */

.image-preview, .image-detail {
    max-width:300px;
    float:left;
    margin:0 20px 20px 0;
}
.image-detail { margin-top:20px; }
.image-info div {
    padding:20px 0;
    overflow:auto;
}
.count {
    color:#aaa;
    border:3px solid #bbb;
    border-radius:26px;
    padding:10px 20px;
    margin:20px 10px 0;
}
a.like, a.follow { float:right; margin-top:-8px; }

#image-list { overflow:auto; }
#image-list .image {
    float:left;
    width:220px;
    height:300px;
    margin:0 10px 10px 10px;
    border-top:8px solid #17447f;
    background:#eee;
}
#image-list img { width:220px; height:220px; }
#image-list .info { padding:10px; }
#image-list .info a { color:#333; }
.image-likes div {
    float:left;
    width:auto;
    padding:10px;
    text-align:center;
}
.image-likes img {
    width:120px;
    height:120px;
    border-radius:50%;
}

/* users */
#people-list img {
    width:180px;
    height:180px;
    border-radius:50%;
    margin-bottom:20px;
}
#people-list .user {
    width:180px;
    float:left;
    overflow:auto;
    padding:10px;
}
#people-list .info { text-align:center; }
img.user-detail {
    border-radius:50%;
    float:left;
}
.profile-info {
    float:left;
    overflow:auto;
    margin-right:20px;
}
.image-container { margin-top:40px; }

/* actions */
.action {
    clear:both;
    overflow:auto;
}
.action .images {
    float:left;
    margin:0 10px 10px 0;
}
.action .date {
    font-style:italic;
    color:#ccc;
}

#contest-container {
    display: grid;
    //grid-template-columns: 1fr 1fr;
    //grid-template-columns: repeat(2, 1fr);
    grid-template-columns: repeat( auto-fit, minmax(300px, 1fr) );
    //grid-template-columns: minmax(30px, 1fr);
    grid-gap: 10px;

    //grid-auto-rows: 20px;
    //place-items: center;
}

#contest-container2 {
    display: grid;
    grid-template-columns: repeat( auto-fit, minmax(400px, 1fr) );
    grid-gap: 10px;

    //grid-auto-rows: 20px;
    //place-items: center;
}

#menu-container {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 10px;
}

#menu2-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 10px;
    //grid-auto-rows: 20px;
    place-items: left;
}


@media screen and (max-width: 800px) {
    #Xcontest-container {
        display: grid;
        grid-template-columns: 1fr;
        grid-gap: 10px;
    }
}

#contest0 {
    float: left;
    width: 33% ;
}
#contest1 {
    float: left;
    width: 33%;
}
#contest2 {
    float: left;
    width: 33%;
}
#column12 {
    float: left;
    width: 50% ;
}
#column22 {
    float: left;
    width: 50%;
}

@media only screen and (max-width: 1280px) {
  /* only for screens wider or equal to 630 pixels */
  /* code from https://www.thesitewizard.com/css/design-2-column-layout.shtml */
  #contest0 {
    float: none;
    width: 100% ;
  }
  #contest1 {
    float: none;
    width: 100%;
  }
  #contest2 {
    float: none;
    width: 100%;
  }
  #column12 {
      float: none;
      width: 100% ;
  }
  #column22 {
      float: none;
      width: 100%;
  }
}

.arrow-down {
  width: 0; 
  height: 0; 
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  
  border-top: 20px solid #f00;
}

.arrow-right {
  width: 0; 
  height: 0; 
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  
  border-left: 10px solid #17447f;
}

#progress-bar {
  margin-top: 1em;
}

iframeX {
    width: 100%;
    height: 100%;
    background: #000;
    border: none;
    flex-grow: 1;
}

.webpage table {
    width: 100%;
}

.nav-link {
    background: white;
    font-family: Lato, Arial, Helvetica, sans-serif;
    
    padding: 17px;
    font-size: 18px;
    letter-spacing: 0.5px;
    text-decoration: none;
    color: #000000;
    font-weight: 700;
}
.nav-link:hover {
    color:#18ade5;
}

.navbar-toggler{
width: 47px;
height: 34px;
color: black;
background-color: #aaa;
}
.navbar-toggler .line{
width: 100%;
float: left;
height: 2px;
background-color: #fff;
margin-bottom: 5px;
}

#kata_table {
    border-collapse: collapse;
}
#kata_table tr {
    border: none;
}
#kata_table th {
    vertical-align: bottom;
}
.td-kata {
    writing-mode: vertical-rl;
    vertical-align: bottom;
    //border-left: solid 1px #00f;
    background: #eee;
    //margin-left: 5px;
    //margin-right: 5px;
    width: 15px;
}
.td-kata2 {
    writing-mode: vertical-rl;
    vertical-align: bottom;
    //border-left: solid 1px #00f;
    background: #fff;
    //margin-left: 5px;
    //margin-right: 5px;
    //padding:10px;
    width: 15px;

}

.lastelem {
    position: absolute;
    bottom: 0;
    /*
    "top:-1px;" +
    "left:-1px;" +
    "width:1px;" +
    "height:1px;"
*/
}

.tblborders,
.tblborders td {
    border: 1px solid;
}
.tblborders td {
    width: 140px;
    height: 20px;
    background: gray;
}
.tblborders .srcmenu {
    font-weight: bold;
    background: #cfc;
}
.tblborders .srcitem {
    background: #ddf;
}
.tblborders .mnudrop {
    background: #fff;
}
