.competition-page{

    max-width:1200px;
    margin:auto;

}

.competition-info{

    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;

    margin:30px 0;

}

.competition-info>div{

    background:var(--card-bg);
    border:1px solid var(--border-color);

    border-radius:10px;

    padding:20px;

}

.team-list{

    display:flex;
    flex-direction:column;

    gap:10px;

    margin-top:20px;

}

.team-row{

    display:grid;

    grid-template-columns:
        60px
        1fr
        90px;

    align-items:center;

    gap:20px;

    padding:18px 22px;

}

.team-row:hover{

    background:var(--card-hover);

}

.team-main{

    display:flex;

    flex-direction:column;

    gap:6px;

}

.team-name{

    font-size:1.15rem;

    font-weight:700;

}

.team-meta{

    display:flex;

    gap:18px;

    color:#9fb3c8;

    font-size:.90rem;

}

.team-average{

    text-align:right;

    font-size:1.35rem;

    font-weight:700;

}

.team-players{

    opacity:.7;

}

@media(max-width:800px){

    .competition-info{

        grid-template-columns:1fr;

    }

}




/* ==========================================================
   Action Cards
   ========================================================== */

.competition-actions{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:18px;

    margin:24px 0 30px;

}

.action-card{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:12px;

    padding:16px 20px;

    min-height:64px;

}

.action-icon{

    font-size:26px;

    line-height:1;

}

.action-title{

    font-size:1rem;

    font-weight:700;

    color:var(--text-primary);

}

/* Tablet */

@media (max-width:900px){

    .competition-actions{

        grid-template-columns:repeat(2,1fr);

    }

}

/* Mobil */

@media (max-width:600px){

    .competition-actions{

        grid-template-columns:1fr;

    }

}

/* ==========================================================
   Competition v1.3 - kompakt oversigt + holdinfo
   ========================================================== */

.competition-summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;

    margin: 24px 0 22px;
    padding: 14px 18px;

    background: var(--card-bg);
    border: 1px solid var(--border-color);
    border-radius: 12px;
}

.competition-summary-item {
    min-width: 0;
    padding: 2px 28px;
    border-right: 1px solid var(--border-color);
}

.competition-summary-item:first-child {
    padding-left: 4px;
}

.competition-summary-item:last-child {
    border-right: 0;
}

.competition-summary-label {
    display: block;
    margin-bottom: 5px;

    color: #9fb3c8;
    font-size: .75rem;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.competition-summary-item strong {
    display: block;

    color: var(--text-primary);
    font-size: 1.35rem;
    line-height: 1.2;
    font-weight: 700;
}

.team-player-summary {
    display: block;
}

.team-player-summary-name {
    margin-left: 10px;
    white-space: nowrap;
}

.team-average {
    min-width: 90px;
}

@media (max-width: 900px) {
    .competition-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .competition-summary-item {
        padding: 8px 12px;
        border-right: 0;
    }

    .team-player-summary-name {
        white-space: normal;
    }
}

@media (max-width: 560px) {
    .competition-summary {
        grid-template-columns: 1fr;
    }

    .team-player-summary-name {
        display: block;
        margin: 3px 0 0;
    }
}


.competition-registration-status {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
    padding: .9rem 1rem;
}
.competition-registration-status.ready { border-left: 4px solid rgba(70, 190, 110, .85); }
.competition-registration-status.needs-attention { border-left: 4px solid rgba(220, 80, 80, .9); }
.competition-registration-status > div { display: grid; gap: .18rem; }
.competition-registration-kicker {
    font-size: .72rem;
    font-weight: 700;
    opacity: .65;
    text-transform: uppercase;
    letter-spacing: .04em;
}
.competition-registration-status small { opacity: .72; }
.competition-action-disabled { opacity: .48; cursor: not-allowed; }
@media (max-width: 620px) {
    .competition-registration-status { align-items: stretch; flex-direction: column; }
}

.competition-conflict-panel{margin:22px 0 8px;overflow:hidden;border:1px solid rgba(245,158,11,.42);border-radius:12px;background:rgba(245,158,11,.07)}
.competition-conflict-panel-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 18px;border-bottom:1px solid rgba(245,158,11,.22)}
.competition-conflict-panel-head>div{display:flex;align-items:center;gap:12px}
.competition-conflict-panel-head strong{display:block;color:#fbbf24;font-size:1rem}
.competition-conflict-panel-head small{display:block;margin-top:3px;color:#aebed0}
.competition-conflict-icon{font-size:1.45rem;line-height:1}
.competition-conflict-list{display:flex;flex-direction:column}
.competition-conflict-row{display:grid;grid-template-columns:105px 180px 160px 1fr auto;gap:14px;align-items:center;padding:12px 18px;color:inherit;text-decoration:none}
.competition-conflict-row+.competition-conflict-row{border-top:1px solid rgba(245,158,11,.15)}
.competition-conflict-row:hover{background:rgba(255,255,255,.035)}
.competition-conflict-date,.competition-conflict-player{font-weight:800}
.competition-conflict-team,.competition-conflict-reason{color:#b9c7d6}
.competition-conflict-open{color:#70aefc;font-weight:700;white-space:nowrap}
@media(max-width:850px){.competition-conflict-panel-head{align-items:flex-start;flex-direction:column}.competition-conflict-row{grid-template-columns:1fr;gap:3px}}

.competition-conflict-panel--handled{border-color:rgba(96,165,250,.38);background:rgba(59,130,246,.07)}
.competition-conflict-panel--handled .competition-conflict-panel-head{border-bottom-color:rgba(96,165,250,.18)}
.competition-conflict-panel--handled .competition-conflict-panel-head strong{color:#7db6ff}
