/* AbildskovUndervisning - abildskovundervisning.dk */
/* =====================================================
   TOWER BUILDER
   Spilspecifik styling
===================================================== */

.tower-builder-board {

    width: min(92vw, 640px);

    margin: 8px auto;

    padding: 8px;

    box-sizing: border-box;

    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 10px;

    text-align: center;

}

.tower-builder-progress {

    font-size: 1.1rem;

    font-weight: 600;

    opacity: 0.9;

}


/* =====================================================
   TÅRNET
===================================================== */

.tower-builder-tower {

    display: flex;

    flex-direction: column-reverse;

    align-items: center;

    gap: 4px;

    width: 100%;

    box-sizing: border-box;

    flex: 0 0 auto;

    height: clamp(110px, 28vh, 200px);

    min-height: 0;

    max-height: none;

    overflow-y: auto;

    padding: 8px;

    border-radius: 12px;

    background: rgba(255, 255, 255, 0.05);

    border: 2px dashed rgba(255, 255, 255, 0.15);

}

.tower-builder-empty {

    align-self: center;

    margin: auto 0;

    opacity: 0.6;

    font-size: 0.95rem;

}

.tower-builder-segment {

    flex: 0 0 auto;

    min-width: 120px;

    padding: 6px 14px;

    border-radius: 10px;

    font-weight: 700;

    font-size: 1.05rem;

    color: #111;

    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.25);

}

.tower-builder-segment-plus {
    background: #7cd992;
    border: 2px solid #4aa866;
}

.tower-builder-segment-minus {
    background: #ff9d9d;
    border: 2px solid #d95d5d;
}

.tower-builder-segment-times {
    background: #ffd44d;
    border: 2px solid #d9a900;
}

.tower-builder-segment-divide {
    background: #9dc9ff;
    border: 2px solid #5d8fd9;
}


/* =====================================================
   BLOKKE
===================================================== */

.tower-builder-blocks {

    display: grid;

    grid-template-columns: repeat(5, 1fr);

    gap: 8px;

    width: 100%;

}

.tower-builder-block {

    min-height: 56px;

    padding: 8px 6px;

    font-size: 1.1rem;

    font-weight: 700;

    border-radius: 10px;

    border: 2px solid transparent;

    cursor: pointer;

    color: #111;

    transition: transform 0.1s ease;

}

.tower-builder-block:hover {
    transform: translateY(-2px);
}

.tower-builder-block:active {
    transform: translateY(0);
}

.tower-builder-block-plus {
    background: #7cd992;
    border-color: #4aa866;
}

.tower-builder-block-minus {
    background: #ff9d9d;
    border-color: #d95d5d;
}

.tower-builder-block-times {
    background: #ffd44d;
    border-color: #d9a900;
}

.tower-builder-block-divide {
    background: #9dc9ff;
    border-color: #5d8fd9;
}


/* =====================================================
   HANDLINGER
===================================================== */

.tower-builder-actions {
    width: 100%;
    justify-content: center;
}

.tower-builder-result-message {
    font-size: 1rem;
    opacity: 0.85;
    max-width: 480px;
}

.tower-builder-result-tower {
    height: clamp(100px, 24vh, 180px);
}


@media (max-width: 600px) {

    .tower-builder-blocks {
        grid-template-columns: repeat(3, 1fr);
    }

}
