/* GLOBAL LIGHT THEME – inverted from dark theme */

html, body {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    background-color: #f2f2f2; /* vaalea harmaa */
    color: #1a1a1a; /* tumma grafiitti */
    margin: 0;
    padding: 0;
}

/* Links – tumma harmaa */
a, .btn-link {
    color: #333333;
    text-decoration: none;
}

    a:hover, .btn-link:hover {
        color: #000000;
    }

/* Buttons – tummanharmaa, ei sinistä */
.btn-primary {
    color: #fff;
    background-color: #3a3a3a;
    border-color: #4a4a4a;
}

    .btn-primary:hover {
        background-color: #2f2f2f;
        border-color: #3d3d3d;
    }   

/* Focus – neutraali harmaa */
.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-check-input:focus {
    box-shadow: 0 0 0 0.1rem #00000020, 0 0 0 0.25rem #6a6a6a40;
    outline: none;
}

/* Inputs – vaalea, mutta ei kirkkaan valkoinen */
.form-control {
    background-color: #ffffff;
    border: 1px solid #cccccc;
    color: #1a1a1a;
}

    .form-control:focus {
        background-color: #fafafa;
        border-color: #999999;
    }

/* Content spacing */
.content {
    padding-top: 1.1rem;
}

/* Headings */
h1, h2, h3, h4, h5 {
    color: #111111;
}

    h1:focus {
        outline: none;
    }

/* Validation */
.valid.modified:not([type=checkbox]) {
    outline: 1px solid #2ecc71;
}

.invalid {
    outline: 1px solid #ff4d4d;
}

.validation-message {
    color: #ff4d4d;
}

/* Error boundary – vaalealle taustalle sopiva punainen */
.blazor-error-boundary {
    background: #ffdddd;
    padding: 1rem 1rem 1rem 3.7rem;
    color: #550000;
}

    .blazor-error-boundary::after {
        content: "An error has occurred.";
    }

/* Checkbox – vaalea harmaa */
.darker-border-checkbox.form-check-input {
    border-color: #666666;
    background-color: #ffffff;
}

/* Floating placeholders */
.form-floating > .form-control-plaintext::placeholder,
.form-floating > .form-control::placeholder {
    color: #777777;
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder,
.form-floating > .form-control:focus::placeholder {
    text-align: start;
}

.vuorot-grid-table {
    width: auto; /* Solu kutistuu minimiin */
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    user-select: none;
}

}
.vuoro-otsikko-sarake {
    white-space: nowrap; /* Ei rivinvaihtoja tekstin sisällä */
    
}

.vuoro-sarake {
    white-space: nowrap; /* Ei rivinvaihtoja tekstin sisällä */
    background-color: #100d0d00 !important;
}

    .vuoro-sarake.disabled {
        background-color: #100d0dfa !important;
        color: #777; /* halutessasi himmennetty teksti */
        cursor: not-allowed; /* visuaalinen vihje */
        opacity: 0.6; /* valinnainen */
    }

.vuorot-grid-table td {
    user-select: none;
    -webkit-touch-callout: none;
}

    .vuorot-grid-table td.selected {
        background-color: #cde8ff !important;
    }




.context-menu {
    position: fixed;
    background: white;
    border: 1px solid #ccc;
    padding: 4px;
    z-index: 1000;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

    .context-menu .menu-item {
        padding: 6px 12px;
        cursor: pointer;
    }

        .context-menu .menu-item:hover {
            background: #eee;
        }
