:root {
    --bg: #0b0c0f;
    --card: #14161b;
    --muted: #8b93a2;
    --text: #e7ecf8;
    --acc: #36a1ff;
    --ok: #2ecc71;
    --warn: #f39c12;
    --bad: #e74c3c;
    --b: #232733;
}

* {
    box-sizing: border-box
}

body {
    margin: 0;
    font-family: "Lexend Deca", sans-serif;
    background: var(--bg);
    color: var(--text)
}

header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    border-bottom: 1px solid var(--b);
    gap: 16px
}

h1 {
    margin: 0;
    font-size: 20px
}

header .live {
    display: flex;
    flex-direction: column;
    gap: 4px
}

.now-clock {
    font-size: 28px;
    font-weight: 700;
    letter-spacing: 1px
}

.live-status {
    font-size: 14px;
    color: var(--muted)
}

main.grid {
    display: grid;
    gap: 16px;
    padding: 16px
}

.grid-4 {
    grid-template-columns: 1fr 1fr 1fr 1fr
}

.span-4 {
    grid-column: 1/-1
}

/* --- Osalejate textarea stiil --- */
textarea {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid #ccc;
  border-radius: 8px;
  font-size: 15px;
  font-family: inherit;
  resize: vertical;
  min-height: 60px;
  transition: border-color 0.2s, box-shadow 0.2s;
  background: #f9f9f9;
}

textarea:focus {
  outline: none;
  border-color: #1848cc;
  box-shadow: 0 0 0 2px rgba(24, 72, 204, 0.2);
  background: #fff;
}

label {
  font-weight: 600;
  color: #333;
  margin-bottom: 4px;
  display: block;
}

button {
  margin-top: 6px;
  align-self: flex-start;
  background: #1848cc;
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 8px 14px;
  font-size: 14px;
  cursor: pointer;
  transition: background 0.2s;
}

button:hover {
  background: #163fae;
}

@media(max-width:1200px) {
    .grid-4 {
        grid-template-columns: 1fr 1fr
    }
}

@media(max-width:800px) {
    .grid-4 {
        grid-template-columns: 1fr
    }
}

.card {
    background: var(--card);
    border: 1px solid var(--b);
    border-radius: 12px;
    padding: 16px
}

.row {
    display: flex;
    gap: 8px;
    align-items: center
}

.row.wrap {
    flex-wrap: wrap
}

.row.between {
    justify-content: flex-start
}

.list {
    list-style: none;
    padding: 0;
    margin: 8px 0 0
}

.list li {
    padding: 8px 10px;
    border: 1px solid var(--b);
    border-radius: 10px;
    margin: 6px 0;
    display: flex;
    align-items: center;
    justify-content: space-between
}

input,
button {
    background: #0f1116;
    color: var(--text);
    border: 1px solid var(--b);
    border-radius: 10px;
    padding: 10px 12px;
    font-size: 16px;
}

input[type="number"] {
    width: 80px
}

button {
    cursor: pointer
}

button:hover {
    border-color: var(--acc)
}

button.is-disabled {
    opacity: .5;
    cursor: not-allowed
}

.muted {
    color: var(--muted)
}

.groups {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr))
}

.group {
    border: 1px dashed var(--b);
    border-radius: 10px;
    padding: 10px
}

.group-head h3 {
    margin: 0
}

.group-head button {
    font-size: 12px;
    padding: 6px 10px
}

.group-box {
    margin-bottom: 20px;
    border: 1px solid var(--b);
    border-radius: 12px;
    padding: 12px
}

.round {
    border-top: 1px solid var(--b);
    margin-top: 10px;
    padding-top: 10px
}

.match {
    gap: 10px;
    padding: 8px 0
}

.match.is-done {
    background: rgba(46, 204, 113, 0.08);
    border-radius: 10px
}

.teams {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 220px
}

.team {
    font-weight: 500
}

.time {
    font-size: 12px
}

.scores {
    display: flex;
    align-items: center;
    gap: 8px
}

.scores .dash {
    opacity: .6
}

table.standings {
    width: 100%;
    border-collapse: collapse;
    margin-top: 8px
}

table.standings th,
table.standings td {
    border: 1px solid var(--b);
    padding: 8px;
    text-align: left
}

footer {
    padding: 12px 16px;
    color: var(--muted);
    border-top: 1px solid var(--b)
}

.done-badge {
    display: inline-block;
    font-size: 12px;
    line-height: 1;
    padding: 2px 6px;
    margin-left: 6px;
    border-radius: 999px;
    border: 1px solid var(--ok);
    color: var(--ok)
}
/* Drag & drop kursori täpsustus nimedele (LI on draggable) */
.list li[draggable="true"]{
  cursor: grab;
  cursor: -webkit-grab; /* Safari/Chrome */
  cursor: -moz-grab;    /* Firefox */
}
.list li[draggable="true"]:active{
  cursor: grabbing;
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
}

/* (valikuline) kui lohistad elemendi üle nimekirja, näita, et siia saab kukutada */
.list{
  /* vaikimisi pole kursorit muudetud, aga kui kasutad klassi .dnd-target JS-is,
     saad aktiveerida sobiva kursori kogu tsoonile */
}
.list.dnd-target{
  cursor: copy; /* soovi korral 'move' või 'alias' */
}

