/* Base Styles */
body {
    font-family: Tahoma, sans-serif;
    margin: 10px;
}

button {
    cursor: pointer;
    border: none;
    border-radius: 3px;
    font-size: 12px;
    padding: 5px 10px;
}

button:hover {
    filter: brightness(0.9);
}

.input-row input[type="number"] {
    flex: none; /* Larghezza fissa */
    width: 80px; /* Imposta una larghezza ridotta */
}

.input-row input[type="time"] {
    flex: none; /* Larghezza fissa */
    width: 80px; /* Imposta una larghezza ridotta */
}
/* Intestazione dei campi */
.input-row.header-row {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 5px;
    background-color: #f4f4f4;
    border: 1px solid #ddd;
    border-radius: 3px;
    font-weight: bold;
    text-align: center;
    font-size: 12px;
}

.input-row.header-row span {
    flex: 1;
    text-align: center;
}

/* Larghezze personalizzate per i campi specifici */
.input-row.header-row span:nth-child(1),
.input-row span:nth-child(1) {
    flex: 2;
}

.input-row.header-row span:nth-last-child(1),
.input-row span:nth-last-child(1) {
    flex: none;
    width: 60px;
}

/* Righe di input */
.input-row {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 5px;
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 3px;
    font-size: 12px;
}

.input-row.error {
    border-color: #d9534f;
    background-color: #ffe6e6;
}

.input-row .error-message {
    color: #d9534f;
    font-size: 11px;
    flex-basis: 100%;
}

.input-row input,
.input-row select {
    flex: 1;
    height: 30px;
    padding: 0 5px;
    font-size: 12px;
    border: 1px solid #ccc;
    border-radius: 3px;
    box-sizing: border-box;
}

.input-row input[type="text"] {
    flex: 1.5;
}

.input-row button {
    flex: none;
    width: 60px;
    background-color: #d9534f;
    color: white;
    height: 30px;
    font-size: 12px;
}

.input-row button:hover {
    background-color: #c9302c;
}

#buttonRow {
    display: flex;
    margin-top: 10px;
    margin-right: 5px;
}

/* Containers */
#actorRows,
.input-container,
#professionalSettings {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 10px;
    padding: 10px;
    background-color: #f9f9f9;
    border: 1px solid #ddd;
    border-radius: 3px;
}

/* Contenitore principale della sezione */
#professionalSettings {
    display: flex;
    flex-direction: column;
    gap: 10px; /* Spaziatura tra righe */
    padding: 10px;
    background-color: #f9f9f9;
    border: 1px solid #ddd;
    border-radius: 5px;
}

/* Righe di configurazione */
.setting-row {
    display: flex;
    align-items: center;
    gap: 10px; /* Spaziatura tra i campi */
}

/* Etichette e campi di input */
.setting-row label {
    flex: 1; /* Etichette con larghezza proporzionale */
    font-size: 12px; /* Font più piccolo per compattezza */
    text-align: right; /* Allineamento a destra */
    margin-right: 5px;
}

.setting-row input {
    flex: 2; /* Input con larghezza maggiore rispetto alle etichette */
    height: 30px; /* Altezza ridotta */
    padding: 0 5px;
    font-size: 12px;
    border: 1px solid #ccc;
    border-radius: 3px;
}

/* Pulsante di configurazione */
#professionalSettings button {
    align-self: flex-start;
    background-color: #4CAF50;
    color: white;
    padding: 5px 15px;
    font-size: 12px;
    border-radius: 3px;
}

#professionalSettings button:hover {
    background-color: #45a049;
}

/* Table Styles */
table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 10px;
}

table, th, td {
    border: 1px solid #ddd;
}

th, td {
    padding: 5px;
    text-align: center;
    font-size: 12px;
}

th {
    background-color: #f4f4f4;
    font-weight: bold;
}

/* Schedule Table */
#scheduleTable {
    border-radius: 3px;
    overflow: hidden;
}

/* Task Visualization */
.trucco {
    background-color: lightskyblue;
}

.capelli {
    background-color: lightgreen;
}

.costumi {
    background-color: tan;
}

/* VIS Timeline Styles */
.vis-label > .vis-inner {
    color: #000;
    font-weight: bold;
    font-size: 10px;
}

.vis-label, .vis-group {
    filter: brightness(1.1);
}

.vis-item.vis-range.trucco > .vis-item-overflow {
    background-color: dodgerblue;
}

.vis-item.vis-range.capelli > .vis-item-overflow {
    background-color: mediumseagreen;
    color: white;
}

.vis-item.vis-range.costumi > .vis-item-overflow {
    background-color: coral;
    color: white;
}

.vis-selected > .vis-item-visible-frame {
    background-color: yellow;
    color: black;
}

.vis-item.vis-range > .vis-item-overflow {
    color: white;
    text-transform: uppercase;
    font-size: 10px;
}

/* Chart Labels */
.chart-row {
    display: flex;
    align-items: center;
    margin-bottom: 5px;
}

.chart-label {
    width: 80px;
    text-align: right;
    margin-right: 5px;
}

/* Evidenziazione task */
.highlight > .vis-item-overflow {
    background-color: yellow !important;
    color: black !important;
}

/* Evidenziazione conflitti */
.conflict > .vis-item-overflow {
    background-color: red !important;
    color: white !important;
}