﻿* {
    box-sizing: border-box;
    font-family: -apple-system, BlinkMacSystemFont, "segoe ui", roboto, oxygen, ubuntu, cantarell, "fira sans", "droid sans", "helvetica neue", Arial, sans-serif;
    font-size: 16px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
body {
    background-color: #435165;
}
.login {
    width: 375px;
    background-color: #ffffff;
    box-shadow: 0 0 9px 0 rgba(0, 0, 0, 0.3);
    margin: 100px auto;
}
.login h1 {
    text-align: center;
    color: #5b6574;
    font-size: 24px;
    padding: 20px 0 20px 0;
    border-bottom: 1px solid #dee0e4;
}
.login form {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding-top: 20px;
}
.login form label {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50px;
    height: 50px;
    background-color: #4CAF50;
    color: #ffffff;
}
.login form input[type="password"], .login form input[type="text"] {
    width: 310px;
    height: 50px;
    border: 1px solid #dee0e4;
    margin-bottom: 20px;
    padding: 0 15px;
}
.login form input[type="submit"] {
    width: 100%;
    padding: 15px;
    margin-top: 20px;
    background-color: #4CAF50;
    border: 0;
    cursor: pointer;
    font-weight: bold;
    color: #ffffff;
    transition: background-color 0.2s;
}
.login form input[type="submit"]:hover {
    background-color: #2868c7;
    transition: background-color 0.2s;
}

.participation th{
    font-size: 16px;
    font-weight: 800;
    text-align: left;
    width: 100px;
}
.participation td{
    padding: 10px;
    border: 1px solid lightgrey;
    text-align: right;
}
/*.navtop {
    background-color: #4CAF50;
    height: 60px;
    width: 100%;
    border: 0;
    padding: 0.01em 16px;
}
.navtop div {
    margin: 0 auto;
    width: 100%;
    height: 100%;
    padding: 15px;
}
.navtop div h1, .navtop div a {
    display: inline-flex;
    align-items: center;
}
.navtop div h1 {
    flex: 1;
    font-size: 24px;
    padding: 0;
    margin: 0;
    color: #fff;
    font-weight: normal;
}
.navtop div a {
    padding: 0 20px;
    text-decoration: none;
    color: #fff;
    font-weight: bold;
}
.navtop div a i {
    padding: 2px 8px 0 0;
}
.navtop div a:hover {
    color: #eaebed;
}
*/

.topnav {
  overflow: hidden;
  background-color: #4CAF50;
}

.topnav a {
  float: left;
  display: block;
  color: #fff;
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
  font-size: 20px;
  font-weight: 700;
}

.topnav a.right{
  float: right;
}

.topnav a:hover {
  background-color: #333;
  color: white;
}

.topnav a.active, .menu-selected {
  background-color: #333;
  color: white;
}

.topnav .icon {
  display: none;
}


body.loggedin {
    background-color: #f3f4f7;
}
.content {
    width: 100%;
    margin: 0 auto;
}
.content h2, .content h3 {
    margin: 0;
    padding: 25px 0;
    font-size: 22px;
    border-bottom: 1px solid #e0e0e3;
    color: #4a536e;
}
.content h3 {
    padding: 15px 0 20px;
    font-size: 20px;
    border-bottom:0;

}
.content > p, .content > div, .content > form{
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.1);
    margin: 25px 0;
    padding: 25px;
    background-color: #fff;
}



.tabledesign {
    width: 900px;
}

.tabledesign td, .result-list td, .match-result td {
    padding: 5px;
}

.tabledesign td a, .result-list td a, .match-result td a{
    color: inherit;
    text-decoration: none;
}

.tabledesign td a:hover, .result-list td a:hover, .match-result td a:hover, .table-form-curve td a:hover{
    color: #4a536e;
    text-decoration: underline;
}

.tabledesign th {
    font-weight: bold;
    color: #4a536e;
}

.tabledesign td:first-child, .tabledesign td:first-child, .tabledesign td:nth-child(3) {
    font-weight: bold;
    color: #4a536e;
    /*padding-right: 10px;*/
}

.standings th {
    padding-right: 10px;
}

.standings td {
    padding-right: 10px;
    text-align: center;
}

.standings td{
    border-bottom: 1px solid #ccc;
}
.standings td:first-child {
    text-align: left;
}

.match-result td:first-child, .tabledesign td:first-child, .tabledesign td:nth-child(3) {
    color: inherit;
    font-weight: normal;
}

.match-result .fa-edit {
    color: #4CAF50;
    font-size: 12px;
}

.match-result h4{
    margin-bottom:0;
}

.match-result .score {
    font-size: 17px;
    font-weight: 500;
}

#upcoming-matches.match-result {
    table-layout: fixed;
}

.content > div p {
    padding: 5px;
    margin: 0 0 10px 0;
}

.dashboard-main td {
    padding: 10px;
}

.dashboard td {
    font-size:10px;
    padding:5px;
}

h4 {
    margin:10px 0 10px 0;
    color: #4a536e;
    font-size: 17px;
}

.tableform {
    width: 600px;
}

.tableform td {
    padding: 5px;
}

.tableform td input[type='text'] {
    width:300px;
}

.tableform td:first-child {
    width: 200px;
}

.tableform td a {
    color: inherit;
    text-decoration: none;
}

.tableform td a:hover {
    color: #4a536e;
    text-decoration: underline;
}

.tableform th {
    font-weight: bold;
    color: #4a536e;
}



.small-text, .small-text-thick {
    font-size: 12px;
}

.small-text-thick {
    font-weight: 700;
}




.button {
  border: none;
  color: white;
  padding: 16px 32px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 16px;
  margin: 4px 2px;
  transition-duration: 0.4s;
  cursor: pointer;
}

.button1 {
  background-color: white; 
  color: black; 
  border: 2px solid #04AA6D;
}

.button1:hover {
  background-color: #04AA6D;
  color: white;
}

.button-small{
    padding: 10px 20px;
}

.result-input{
    width:55px;
    height:60px;
    font-size: 22px;
    font-weight: bold;
    text-align: center;
    background-color: black;
    border: none;
    color: white;
}

.form-curve-column a {
    color: inherit;
    text-decoration: none;
}

.form-curve-column {
    float: left;
    width:32%;
    margin: 0 15px 15px 0;
    word-break: break-all;
}

#form-curve, #latest-results, #standings-doubles, #standings-individuals{
    display: none;
}

#latest-results{
    width: 100%;
}

.form-curve{
    font-size:32px;
    font-weight:bold;
    margin-right:2px;
}

.result-score, .result-score1, .result-score2, .result-score3, .result-score4, .result-score5, .result-score6 {
    font-size: 20px;
    font-weight: 700;
    padding:6px;
    color: #f5f5f5;
    background-color: black;
    /*line-height: 35px;*/
}

.red{
    color:red;
}

.green{
    color:green;
}

.grey{
    color:grey;
}

.small{
    font-size: 12px;
}

.horizontal-line{
    border: 1px solid #ccc;
    display: block;
    margin-bottom: 10px;
}

.match-result .fa-edit {
    font-size:15px;
}

.result{
    width: 700px;
}

.teams{
    height: 200px;
}

.match-result #court, .match-result #round{
    text-align: left;
    padding: 0;
    font-weight: 600;
    font-size: 16px;
}

.result #court, .match-result #round{
    text-align: center;
    font-size: 17px;
    background-color: #FCFBFC;
}

.match-result #court{
    padding: 0;
    margin: 0;
    font-weight: 700;
}

.result #teams table{
    margin: 0 auto;
}

.result #score{
    display: inline-block;
    width: 100%;
    margin: 30px 0;
}

.result #double1, .result #double2{
    display: inline-block;
    width: 50%;
    float: left;
}

.result #set1, .result #set2, .result #set3{
    width: 33%;
    float: left;
    padding: 0 40px;
}

.result #set1-double1, .result #set1-double2, .result #set2-double1, .result #set2-double2, .result #set3-double1, .result #set3-double2{
    width:50%;
    float: left;
    text-align: center;
}

.result #submit{
    clear: left;
}

.result #submit .button1{
    display: block;
    margin: 20px auto;
}

.result #score .set-text{
    display: block;  
    margin-bottom: 10px;
    text-align: center;
}

.result #score .matchtie{
    height: 30px;
    display: block;
    text-align: center;
}

.result #score .matchtiebreak-result {
    text-align: center;
    display: block;
    font-size: 24px;
}

#help-text{
    display: none;
    background-color: #f5f5f5;
    padding: 10px;
}

.box-example {
    width:110px;
    text-align:center;
    padding:15px 10px;
    float:left;
    margin: 10px 20px 0 0;
    border: 5px solid transparent;
}
.box-player{
    width:200px;
    text-align:center;
    padding:15px 10px;
    float:left;
    margin: 10px 20px 0 0;
}
.not-replied{
    background:#ccc;
}
.replied-yes{
    background:#ffcc33;
}
.replied-no{
    background:#FF6961;
}
.drafted{
    background:green;
    color:white;
    height: 114px;
}

/*.small-box {
    padding: 10px 5px;
    margin: 5px 10px 0 0;
    font-size: 14px;  
}*/

.my-reply{
    border: 5px solid black;
    font-weight: 600;
}

.event-description .drafted {
    height: auto;
}

.box-example.drafted{
    height: 82px;
}


/* Event-liste container */
.event-list {
    /* Sikrer, at event-listen altid starter på en ny linje og fylder sin container */
    
    clear: both;   /* Vigtigt: Rydder eventuelle floats over den */
    width: 100%; /* Sørger for, at den fylder 100% af forælderens bredde */
    max-width: 800px; /* Du kan stadig begrænse bredden, hvis ønsket */
    
    /* Din eksisterende flexbox for de enkelte bokse indeni */
    display: flex; /* Ja, vi kan have dette dobbelt-op display, da det virker på indholdet indeni */
    flex-direction: column; /* Stabler event-bokse vertikalt indenfor listen */
    gap: 30px; /* Afstand mellem de enkelte event-bokse */

    /* Baggrund og skygge for hele listen, hvis ønsket */
    /* background-color: #f9f9f9; */
    /* border-radius: 8px; */
    /* box-shadow: 0 2px 10px rgba(0,0,0,0.05); */
    /* padding: 15px; */
}

/* Styling for den enkelte event-boks (uændret, da den allerede var god) */
.event-box {
    display: flex;
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.3);
    padding: 20px;
    align-items: stretch;
}

.event-box:target, .box-player:target{
    box-shadow: 0 0 10px rgba(0, 123, 255, 0.5); /* En let glødende effekt */
}

/* Styling for indholdsområdet */
.event-content {
    flex-grow: 1;
    padding-right: 20px;
}

.event-title {
    margin-top: 0;
    margin-bottom: 10px;
    color: #333;
}

.event-description {
    margin-bottom: 0;
    color: #000;
    line-height: 1.6;
}

/* Styling for knap-området */
.event-action {
    display: flex;
    align-items: center;
    justify-content: center;
}

.message-area{
    background-color: #4CAF50 !important;
    color: white;
    opacity: 90%;
}

.season-select, .event-select{
    height: 50px;
    width: 170px;
    padding: 10px;
    border: 4px solid #04AA6D;
}

.event-select{
    width:250px;
}

.season-area {
    float: right;
}

.player-form{
    word-break: break-all;
}

.admin-view{
    height: 162px;
}

.admin-view .update-event-player-status{
    margin-top: 27px;
}

.sponsor-image-big {
    max-height: 250px;
}
.sponsor-image-small {
    max-height: 200px;
}

.sponsor-image-content {
    float: right;
    max-height: 150px;
    margin: 20px;
}

.sponsor{
    text-align: left;
    margin-bottom:30px;
    display: flex;
}

.sponsor-area{
    padding: 10px;
    background-color: ghostwhite;
    border: 1px solid darkgrey;
    border-radius: 10px;
}


.modal { display: none; position: fixed; z-index: 1000; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.6); }
.modal-content { background: #fff; margin: 5% auto; padding: 20px; width: 80%; max-width: 800px; border-radius: 8px; max-height: 80vh; overflow-y: auto; }
.modal-header { display: flex; justify-content: space-between; border-bottom: 2px solid #eee; padding-bottom: 10px; }
.match-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 20px; }
.round-box { background: #f9f9f9; padding: 15px; border-radius: 5px; border: 1px solid #ddd; }
.match-card { background: #fff; padding: 10px; margin-bottom: 10px; border-left: 5px solid #457371; box-shadow: 0 2px 4px rgba(0,0,0,0.1); font-size: 0.9em; }
.close { cursor: pointer; font-size: 24px; }

@media screen and (max-width: 600px) {
    .topnav a:not(:first-child) {display: none;}
    .topnav a.icon {
        float: right;
        display: block;
    }
    .topnav.responsive {position: relative;}
    .topnav.responsive .icon {
        position: absolute;
        right: 0;
        top: 0;
    }
    .topnav.responsive a, .topnav.responsive.right a {
        float: none;
        display: block;
        text-align: left;
    }

    .content > div {
        padding: 25px 15px;
    }

    .tabledesign {
        width: 100%;
    }
        
    .horizontal-line{
        width:100%;
    }

    .form-curve-column {
        width:100%;
        margin-bottom: 15px;
    }

    .result-score, .result-score1, .result-score2, .result-score3, .result-score4, .result-score5, .result-score6 {
        font-size: 20px;
        font-size: 15px;
        padding:5px;
        display: block;
        width: 40px;
    }

    .result-score1, .result-score3, .result-score5 {
        margin-bottom: 30px;
        
    }

    .double1_right_player, .double1_left_player, .double2_left_player, .double2_right_player {
        display: block;
        max-width: 140px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    .result{
        width: 100%;   
    }
    .result #double1, .result #double2{
        display: inline-block;
        width: 100%;
        float: left;
    }    
    .result #set1, .result #set2, .result #set3{
        width: 100%;
    }
    .result #score .matchtie {
        height: 100%;
    }
    #set3 .matchtie{
        margin-bottom: 10px    
    }
    .result #submit .button1 {
        margin: 30px auto 50px;
    }
    .result #teams table {
        width: 100%;
    }
    .result #score {
        margin: 0;
    }
    #matchdate{
        margin-top: 20px;
    }
    .standings th, .standings td {
        padding-right: 5px;
        font-size: 12px;
    }
    .standings th:first-child, .standings td:first-child {
        font-size: 16px;
    }
    .tabledesign td {
        padding: 2px;
    }
    .season-area {
        display: contents;
    }
    .event-action {
        width:200px;
        margin: 0 auto;
        padding-top: 20px;
    }
    .event-action .button {
        width:150px;
    }
    .event-box {
        display: block;
    }
    h3.event-title{
        text-align: center;
    }
    .admin-view{
        height: 115px;
    }
    .admin-view .update-event-player-status{
        margin-top: 0px;
    }
    .sponsor-image-big, .sponsor-image-small {
        max-width: 300px;
    }
    .sponsor{
        text-align: center;
    }
    .event-description .drafted {
        height: auto;
    }
    .sponsor-image-content {
        max-width: 300px;
        margin: 20px;
    }

}