/* v1.6 Employee Activity: responsibility, involvement, filters and factual trends. */

.m16-employee-kpi-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 9px;
}

.m16-section-gap { margin-top: 18px; }

.m16-kpi-awaiting {
    border-color: #d8cff5;
    background: #faf8ff;
}
.m16-kpi-awaiting > span,
.m16-kpi-awaiting > strong { color: #654c9c; }

.m16-kpi-shared {
    border-color: #d7ddec;
    background: #fafbfe;
}
.m16-kpi-shared > span,
.m16-kpi-shared > strong { color: #526486; }

.m11-employee-status-stack .is-awaiting-start { background: #8766c7; }
.m11-employee-status-legend i.is-awaiting-start { background: #8766c7; }
.m16-status-awaiting {
    border-color: #d8cff5 !important;
    background: #f4f0ff !important;
    color: #654c9c !important;
}

.m16-completion-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}
.m16-completion-grid .dashboard-widget { min-width: 0; }
.m16-completion-grid .m11-dashboard-table { min-width: 720px; }

.m16-task-filter-bar {
    display: grid;
    grid-template-columns: minmax(220px, 1.5fr) repeat(6, minmax(130px, .8fr));
    gap: 8px;
    align-items: end;
    margin-bottom: 10px;
}
.m16-task-filter-bar label {
    min-width: 0;
    display: grid;
    gap: 4px;
}
.m16-task-filter-bar label > span {
    color: #5f6b73;
    font-size: 9px;
    font-weight: 800;
}
.m16-task-filter-bar input,
.m16-task-filter-bar select {
    width: 100%;
    min-height: 36px;
    padding: 7px 9px;
    border: 1px solid var(--dq-line-strong);
    border-radius: 6px;
    background: #fff;
    color: var(--dq-text);
    font: inherit;
    font-size: 10px;
}
.m16-task-filter-bar input:focus,
.m16-task-filter-bar select:focus {
    outline: 2px solid rgba(43, 156, 141, .13);
    border-color: var(--dq-green);
}
.m16-filter-search { grid-column: span 2; }
.m16-filter-actions {
    display: flex;
    gap: 6px;
    align-items: center;
}
.m16-filter-result-count {
    margin: 4px 0 10px;
    color: var(--dq-muted);
    font-size: 10px;
}
.m16-filter-result-count strong { color: var(--dq-text); }
.m16-relationship-tag {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 4px 7px;
    border: 1px solid #dde3e7;
    border-radius: 999px;
    background: #f8fafb;
    color: #4e5b64;
    font-size: 9px;
    font-weight: 800;
}
#task-involvement .m11-dashboard-table { min-width: 1420px; }

.m16-trend-list { display: grid; gap: 6px; }
.m16-trend-row {
    display: grid;
    grid-template-columns: 120px minmax(180px, 1fr) 105px 105px 120px;
    align-items: center;
    gap: 9px;
    min-height: 42px;
    padding: 7px 9px;
    border: 1px solid #e8edef;
    border-radius: 6px;
    background: #fff;
}
.m16-trend-row > strong { font-size: 10px; }
.m16-trend-row > span { color: #59666e; font-size: 9px; }
.m16-trend-bars {
    height: 12px;
    display: flex;
    gap: 2px;
    align-items: stretch;
    overflow: hidden;
    border-radius: 999px;
    background: #eef1f3;
}
.m16-trend-bars > span {
    min-width: 0;
    max-width: 100%;
    border-radius: 999px;
}
.m16-trend-bars .is-individual { background: var(--dq-status-done); }
.m16-trend-bars .is-shared { background: #7b8da8; }
.m16-trend-bars .is-received { background: #8766c7; }
.m16-trend-bars .is-transferred { background: #b78a55; }

@media (max-width: 1500px) {
    .m16-employee-kpi-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .m16-task-filter-bar { grid-template-columns: repeat(4, minmax(150px, 1fr)); }
    .m16-filter-search { grid-column: span 2; }
}

@media (max-width: 980px) {
    .m16-completion-grid { grid-template-columns: 1fr; }
    .m16-task-filter-bar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .m16-trend-row {
        grid-template-columns: 105px minmax(150px, 1fr) 90px 90px;
    }
    .m16-trend-row > span:last-child { grid-column: 2 / -1; }
}

@media (max-width: 680px) {
    .m16-employee-kpi-grid,
    .m16-task-filter-bar { grid-template-columns: 1fr; }
    .m16-filter-search { grid-column: auto; }
    .m16-filter-actions { grid-column: auto; }
    .m16-trend-row { grid-template-columns: 1fr; }
}


/* Employee attention is an operational exception surface, not a footer. */
.m16-attention-task-link {
    color: var(--dq-blue);
    font-weight: 800;
    text-decoration: none;
}
.m16-attention-task-link:hover {
    color: var(--dq-green-dark);
    text-decoration: underline;
    text-underline-offset: 2px;
}
.m16-attention-row-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 9px;
    white-space: nowrap;
}
.m16-attention-row-actions b {
    color: #46535b;
}
.m16-attention-row-actions .secondary-link {
    font-size: 8px;
    font-weight: 800;
}


/* v1.8.3 — Employee Work Time date review */
.m183-work-time-panel {
    overflow: hidden;
}

.m183-work-time-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 14px;
}

.m183-work-time-header h2 {
    margin: 2px 0 5px;
}

.m183-work-time-context {
    max-width: 780px;
    margin: 0;
    color: #66737a;
    font-size: 9px;
    line-height: 1.55;
}

.m183-work-time-badge {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 5px 9px;
    border: 1px solid #dce5e7;
    border-radius: 999px;
    background: #f7faf9;
    color: #4d6268;
    font-size: 8px;
    font-weight: 850;
    letter-spacing: .02em;
}

.m183-work-time-toolbar {
    display: grid;
    gap: 12px;
    margin-bottom: 12px;
    padding: 12px;
    border: 1px solid #dfe6e8;
    border-radius: 10px;
    background: linear-gradient(180deg, #fbfcfc 0%, #f6f9f9 100%);
}

.m183-control-group {
    display: grid;
    gap: 6px;
}

.m183-control-label,
.m183-select-control > span,
.m183-date-control > span {
    color: #59676e;
    font-size: 8px;
    font-weight: 850;
    letter-spacing: .025em;
    text-transform: uppercase;
}

.m183-period-switcher {
    display: inline-flex;
    width: fit-content;
    max-width: 100%;
    gap: 3px;
    padding: 3px;
    border: 1px solid #dce4e7;
    border-radius: 9px;
    background: #edf2f3;
}

.m183-period-option {
    min-height: 31px;
    padding: 5px 11px;
    border: 1px solid transparent;
    border-radius: 6px;
    background: transparent;
    color: #647078;
    font: inherit;
    font-size: 9px;
    font-weight: 800;
    cursor: pointer;
    white-space: nowrap;
    transition:
        background .15s ease,
        border-color .15s ease,
        color .15s ease,
        box-shadow .15s ease;
}

.m183-period-option:hover {
    color: #2e3c43;
    background: rgba(255, 255, 255, .62);
}

.m183-period-option.is-active {
    border-color: #d6e0e2;
    background: #fff;
    color: var(--dq-green-dark);
    box-shadow: 0 1px 4px rgba(28, 50, 58, .08);
}

.m183-dashboard-employee-control,
.m183-specific-day-row {
    display: flex;
    align-items: end;
    gap: 8px;
    flex-wrap: wrap;
}

.m183-select-control,
.m183-date-control {
    display: grid;
    gap: 5px;
}

.m183-select-control {
    min-width: min(330px, 100%);
}

.m183-select-control select,
.m183-date-control input[type="date"] {
    min-height: 36px;
    padding: 7px 10px;
    border: 1px solid #cad5d9;
    border-radius: 7px;
    background: #fff;
    color: var(--dq-text);
    font: inherit;
    font-size: 9px;
    box-shadow: 0 1px 1px rgba(22, 43, 50, .02);
}

.m183-select-control select:focus,
.m183-date-control input[type="date"]:focus {
    outline: 2px solid rgba(43, 156, 141, .13);
    outline-offset: 1px;
    border-color: var(--dq-green);
}

.m183-date-control input[type="date"] {
    min-width: 180px;
}

.m183-employee-apply,
.m183-view-day-button {
    min-height: 36px;
    white-space: nowrap;
}

.m183-day-stepper {
    display: inline-grid;
    grid-template-columns: 34px minmax(170px, auto) 34px auto;
    align-items: center;
    gap: 6px;
    margin: 0 0 14px;
    padding: 5px;
    border: 1px solid #dfe6e8;
    border-radius: 9px;
    background: #fff;
}

.m183-day-step {
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #d8e1e4;
    border-radius: 7px;
    background: #f8fafb;
    color: #405159;
    font-size: 18px;
    line-height: 1;
    text-decoration: none;
    transition: border-color .15s ease, background .15s ease, color .15s ease;
}

.m183-day-step:hover {
    border-color: rgba(43, 156, 141, .4);
    background: rgba(43, 156, 141, .06);
    color: var(--dq-green-dark);
}

.m183-day-step.is-disabled {
    opacity: .35;
    cursor: default;
}

.m183-day-current {
    min-width: 0;
    display: grid;
    gap: 1px;
    padding: 0 7px;
}

.m183-day-current span {
    color: #7b878d;
    font-size: 7px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.m183-day-current strong {
    color: #26353c;
    font-size: 10px;
    white-space: nowrap;
}

.m183-today-link {
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 5px 10px;
    border-radius: 7px;
    color: var(--dq-green-dark);
    font-size: 8px;
    font-weight: 850;
    text-decoration: none;
    white-space: nowrap;
}

.m183-today-link:hover,
.m183-today-link.is-current {
    background: rgba(43, 156, 141, .08);
}

.m183-work-time-kpis {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-bottom: 12px;
}

.m183-work-time-kpis.has-three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.m183-work-time-kpi {
    min-width: 0;
    padding: 12px 13px;
    border: 1px solid #e1e7e9;
    border-radius: 9px;
    background: #fff;
}

.m183-work-time-kpi.is-primary {
    border-color: rgba(43, 156, 141, .24);
    background: linear-gradient(135deg, rgba(43, 156, 141, .07), #fff 65%);
}

.m183-work-time-kpi span,
.m183-work-time-kpi small {
    display: block;
}

.m183-work-time-kpi span {
    margin-bottom: 5px;
    color: #65727a;
    font-size: 8px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: .025em;
}

.m183-work-time-kpi strong {
    display: block;
    margin-bottom: 4px;
    color: #25343b;
    font-size: clamp(20px, 2vw, 28px);
    line-height: 1;
}

.m183-work-time-kpi small {
    color: #78848a;
    font-size: 8px;
    line-height: 1.4;
}

.m183-work-time-action-row {
    display: flex;
    justify-content: flex-end;
    margin: -2px 0 10px;
}

.m183-work-time-table {
    margin-top: 2px;
}

.m183-work-time-empty {
    display: grid;
    gap: 3px;
    min-height: 78px;
    place-content: center;
    padding: 15px;
    border: 1px dashed #d8e2e4;
    border-radius: 9px;
    background: #fafcfc;
    text-align: center;
}

.m183-work-time-empty strong {
    color: #34444b;
    font-size: 10px;
}

.m183-work-time-empty span {
    color: #7a878d;
    font-size: 9px;
}

@media (max-width: 980px) {
    .m183-work-time-header {
        align-items: stretch;
        flex-direction: column;
    }

    .m183-work-time-badge {
        align-self: flex-start;
    }

    .m183-work-time-kpis.has-three {
        grid-template-columns: 1fr 1fr;
    }

    .m183-work-time-kpis.has-three > :last-child {
        grid-column: 1 / -1;
    }
}

@media (max-width: 680px) {
    .m183-period-switcher {
        width: 100%;
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .m183-period-option {
        width: 100%;
    }

    .m183-dashboard-employee-control,
    .m183-specific-day-row {
        display: grid;
        grid-template-columns: 1fr;
    }

    .m183-select-control,
    .m183-date-control,
    .m183-date-control input[type="date"] {
        width: 100%;
        min-width: 0;
    }

    .m183-employee-apply,
    .m183-view-day-button {
        width: 100%;
    }

    .m183-day-stepper {
        width: 100%;
        grid-template-columns: 34px minmax(0, 1fr) 34px;
    }

    .m183-today-link {
        grid-column: 1 / -1;
    }

    .m183-work-time-kpis,
    .m183-work-time-kpis.has-three {
        grid-template-columns: 1fr;
    }

    .m183-work-time-kpis.has-three > :last-child {
        grid-column: auto;
    }

    .m183-work-time-action-row {
        justify-content: stretch;
    }

    .m183-work-time-action-row .secondary-button {
        width: 100%;
        text-align: center;
    }
}
