/* v1.9 work-time visibility, client activity and communication UX */
.v19-task-time,.v19-live-total{display:inline-flex;align-items:center;gap:.4rem;font-variant-numeric:tabular-nums;font-weight:800;color:#173f4d;white-space:nowrap}
.v19-task-time.is-live::before,.v19-live-total.is-live::before{content:"";width:.48rem;height:.48rem;border-radius:999px;background:#2B9C8D;box-shadow:0 0 0 .22rem rgba(43,156,141,.13)}
.v19-live-dot{width:.52rem;height:.52rem;border-radius:999px;background:#b8c2c7;flex:0 0 auto}.v19-live-dot.is-live{background:#2B9C8D;box-shadow:0 0 0 .2rem rgba(43,156,141,.13)}
.v19-my-time-cell{min-width:132px}.v19-time-request-button,.v19-time-adjust-link{border:0;padding:.22rem 0;background:transparent;color:#134097;font:inherit;font-size:.76rem;font-weight:800;cursor:pointer;display:block}.v19-time-request-button:hover,.v19-time-adjust-link:hover{text-decoration:underline;text-underline-offset:2px}.v19-time-request-state{display:block;margin-top:.2rem;font-size:.72rem;color:#8a6516}

/* Month boards: preserve the information density without letting newer columns
   collide. Horizontal scroll is intentional on laptop widths. */
#board.m11-board,.m11-board[data-employee-month-id]{display:grid;gap:.9rem}
#board .m11-board-group,.m11-board[data-employee-month-id] .m11-board-group{border-radius:12px;overflow:hidden;box-shadow:0 3px 14px rgba(31,48,56,.035)}
#board .m11-group-header,.m11-board[data-employee-month-id] .m11-group-header{min-height:48px;padding-left:14px;padding-right:14px;background:linear-gradient(90deg,rgba(43,156,141,.055),rgba(255,255,255,0))}
#board .m11-board-table-wrap,.m11-board[data-employee-month-id] .m11-board-table-wrap{scrollbar-gutter:stable}
.m16-admin-month-board-table{min-width:1460px;table-layout:fixed}
.m16-admin-month-board-table col.m16-admin-col-task{width:300px}
.m16-admin-month-board-table col.m16-admin-col-assignee{width:165px}
.m16-admin-month-board-table col.m16-admin-col-status{width:110px}
.m16-admin-month-board-table col.m17-admin-col-attention{width:130px}
.m16-admin-month-board-table col.m16-admin-col-progress{width:120px}
.m16-admin-month-board-table col.m16-admin-col-priority{width:100px}
.m16-admin-month-board-table col.m16-admin-col-expected{width:110px}
.m16-admin-month-board-table col.v19-admin-col-work-time{width:118px}
.m16-admin-month-board-table col.m16-admin-col-notes{width:155px}
.m16-admin-month-board-table col.m16-admin-col-assessment{width:112px}
.m16-admin-month-board-table col.m16-admin-col-last-update{width:130px}
.m16-admin-month-board-table th{padding:9px 10px;line-height:1.2;white-space:normal;vertical-align:middle}
.m16-admin-month-board-table td{padding-top:8px;padding-bottom:8px;vertical-align:middle}
.m16-admin-month-board-table tbody tr:hover td{background:#fbfdfd}
.m16-admin-month-board-table .v19-admin-work-time-cell{padding-left:10px;padding-right:10px}.v19-admin-work-time-cell strong{display:block;font-variant-numeric:tabular-nums}
.m11-board-toolbar{border-radius:12px;padding:10px 14px}.m11-board-toolbar-stats{gap:0}.m11-board-toolbar-stats>span{padding:0 12px;border-right:1px solid var(--dq-line)}.m11-board-toolbar-stats>span:first-child{padding-left:0}.m11-board-toolbar-stats>span:last-child{border-right:0}.m11-board-toolbar-note{max-width:520px;line-height:1.35}

.m11-employee-board-table{min-width:1250px;table-layout:fixed}
.m11-employee-board-table col.m16-col-task{width:300px}
.m11-employee-board-table col.m16-col-owner{width:150px}
.m11-employee-board-table col.m16-col-status{width:125px}
.m11-employee-board-table col.v19-col-my-time{width:145px}
.m11-employee-board-table col.m16-col-progress{width:145px}
.m11-employee-board-table col.m16-col-notes{width:210px}
.m11-employee-board-table col.m16-col-attention{width:150px}
.m11-employee-board-table col.m16-col-priority{width:110px}
.m11-employee-board-table col.m16-col-last-update{width:135px}
.m11-employee-board-table th{white-space:nowrap;padding-left:12px;padding-right:12px;line-height:1.15}
.m11-employee-board-table td{vertical-align:middle}.m11-employee-board-table tbody tr:hover td{background:#fbfdfd}
.v19-my-time-head,.v19-progress-head,.v19-status-head{min-width:0}

/* Status editor: validation stays in context rather than refreshing the board. */
.v19-status-popover{width:min(420px,calc(100vw - 20px))}
.v19-admin-status-warning{display:grid;gap:.55rem;padding:.8rem;border-radius:12px;background:#fff8eb;border:1px solid #efd6a4;margin-top:.55rem}
.v19-admin-status-warning strong{font-size:.9rem;color:#6d4610}.v19-admin-status-warning>span{font-size:.78rem;line-height:1.45;color:#6b5b45}
.v19-admin-status-warning label{display:flex;align-items:flex-start;gap:.5rem;font-weight:600;line-height:1.35}
.v19-admin-status-warning label[hidden]{display:none}
.v19-inline-form-error{margin:.1rem 0 0;padding:.55rem .65rem;border-radius:9px;background:#fff1f1;border:1px solid #efc4c4;color:#8e2f2f;font-size:.76rem;font-weight:750;line-height:1.4}

/* Manual time adjustment */
.v19-time-popover{
    position:fixed !important;
    top:50% !important;
    left:50% !important;
    transform:translate(-50%,-50%);
    width:min(520px,calc(100vw - 24px));
    max-height:calc(100dvh - 28px);
    overflow:auto;
    overscroll-behavior:contain;
    z-index:230;
    box-shadow:0 20px 56px rgba(24,42,48,.24);
}
.v19-time-popover-intro{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding-bottom:.65rem;border-bottom:1px solid var(--dq-line)}
.v19-popover-kicker{display:block;margin-bottom:.2rem;color:#2B9C8D;font-size:.65rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.v19-time-popover .m11-cell-popover-title{font-size:.9rem;line-height:1.35}
.v19-audit-chip{padding:.25rem .45rem;border-radius:999px;background:#eef8f6;color:#246d63;font-size:.66rem;font-weight:850;white-space:nowrap}
.v19-time-popover-copy{margin:0;color:#66737c;font-size:.76rem;line-height:1.45}
.v19-time-entry-grid{display:grid;grid-template-columns:1.25fr .75fr .75fr;gap:.6rem;margin:.15rem 0}.v19-time-entry-grid label{display:grid;gap:.3rem;font-size:.72rem;font-weight:800}.v19-time-entry-grid input,.v19-time-entry-grid select{width:100%;min-height:38px;border:1px solid var(--dq-line-strong);border-radius:7px;padding:.45rem .55rem;background:#fff;font:inherit}
.v19-time-popover input[type="date"]{width:100%;min-height:38px;border:1px solid var(--dq-line-strong);border-radius:7px;padding:.45rem .55rem;font:inherit}
.v19-time-safety-note{margin:.15rem 0 0;padding:.65rem .7rem;border-radius:9px;background:#f5f8fb;color:#5d6c75;font-size:.72rem;line-height:1.45}.v19-time-safety-note strong{color:#2d414a}
.v19-time-attention-badge{background:rgba(19,64,151,.1);color:#134097}.v19-review-form{min-width:260px}.v19-adjustment-table td{vertical-align:top}.v19-adjustment-table .v19-review-form textarea{border-radius:8px}.v19-adjustment-table tbody tr:hover{background:#fbfcfd}

/* My Work: a compact day summary rather than a second active-work queue. */
.v19-work-summary-card{margin-top:1rem;padding:1rem 1.05rem}
.v19-work-summary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
.v19-work-summary-head h2{margin:.1rem 0 .1rem;font-size:1.05rem}.v19-work-summary-head small{color:#6b777d}
.v19-work-summary-head .v19-live-total{font-size:1.2rem}
.v19-work-summary-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;margin:.8rem 0}
.v19-work-summary-stats span{display:flex;align-items:baseline;gap:.38rem;padding:.5rem .6rem;border:1px solid rgba(19,64,151,.08);border-radius:9px;background:#f8fafb}.v19-work-summary-stats b{font-size:.95rem;color:#243a43}.v19-work-summary-stats small{color:#6d7a80;font-size:.68rem}
.v19-today-work-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem}.v19-today-work-list a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.55rem;align-items:center;padding:.55rem .62rem;border:1px solid rgba(19,64,151,.09);border-radius:10px;color:inherit;text-decoration:none;background:#fff}.v19-today-work-list a:hover{border-color:#b7cfcb;background:#f8fbfa}
.v19-today-work-list p{margin:0;min-width:0}.v19-today-work-list strong,.v19-today-work-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v19-today-work-list strong{font-size:.79rem}.v19-today-work-list small{font-size:.67rem;color:#6a777e}.v19-today-work-list>a>b{font-size:.76rem}.v19-summary-more{margin:.55rem 0 0;color:#6d7a80;font-size:.7rem}

/* Client activity */
.v19-client-activity-heading{margin-bottom:.75rem}.v19-client-period-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.85rem}.v19-client-period-bar>span{color:#718087;font-size:.72rem;white-space:nowrap}
.v19-period-tabs{display:flex;gap:.4rem;flex-wrap:wrap;margin:0}.v19-period-tabs a{padding:.55rem .8rem;border-radius:999px;border:1px solid rgba(19,64,151,.14);text-decoration:none;color:#314b56;font-weight:800;font-size:.78rem;background:#fff}.v19-period-tabs a:hover{border-color:#8aa9c6}.v19-period-tabs a.is-active{background:#134097;color:#fff;border-color:#134097;box-shadow:0 6px 16px rgba(19,64,151,.14)}
.v19-client-kpis{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:.9rem}.v19-client-kpis .m11-kpi{min-height:112px}
.v19-client-insight-strip{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:0;border:1px solid var(--dq-line);border-radius:13px;background:#fff;margin:0 0 1.25rem;overflow:hidden}.v19-client-insight-strip>div{display:grid;gap:.18rem;padding:.85rem 1rem;border-right:1px solid var(--dq-line)}.v19-client-insight-strip>div:last-child{border-right:0}.v19-client-insight-strip span{color:#2B9C8D;font-size:.65rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.v19-client-insight-strip strong{font-size:.9rem}.v19-client-insight-strip small{color:#6c797f;font-size:.7rem;line-height:1.4}
.v19-client-contributor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.v19-contributor-card{padding:1rem}.v19-contributor-card header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.7rem}.v19-contributor-card header div strong,.v19-contributor-card header div small{display:block}.v19-contributor-card header b{font-size:1.08rem;font-variant-numeric:tabular-nums}.v19-contribution-bar{height:7px;border-radius:999px;background:rgba(19,64,151,.08);overflow:hidden;margin:.75rem 0 .25rem}.v19-contribution-bar span{display:block;height:100%;background:#2B9C8D;border-radius:inherit}.v19-contribution-caption{margin:0 0 .7rem;color:#65737a;font-size:.72rem}.v19-contributor-tasks{display:grid;gap:.3rem}.v19-contributor-tasks a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.65rem;align-items:center;padding:.55rem .62rem;border-radius:9px;background:#f8f6f2;text-decoration:none;color:inherit;border:1px solid transparent}.v19-contributor-tasks a:hover{border-color:#d8e1df;background:#fff}.v19-contributor-tasks p{margin:0;min-width:0}.v19-contributor-tasks strong,.v19-contributor-tasks small{display:block}.v19-contributor-tasks strong{font-size:.77rem}.v19-contributor-tasks small{font-size:.65rem;color:#6d797e}.v19-contributor-tasks>a>span{display:flex;align-items:center;gap:.35rem;font-weight:700;font-variant-numeric:tabular-nums}.v19-mini-status{font-style:normal;padding:.2rem .36rem;border-radius:999px;background:#edf1f3;color:#58676e;font-size:.58rem;font-weight:850;white-space:nowrap}.v19-mini-status-completed{background:#e7f5f1;color:#246d63}.v19-mini-status-in_progress{background:#fff2cc;color:#785b0d}.v19-mini-status-paused{background:#f4eaf8;color:#745185}

/* Notification Center */
.v19-notification-heading{margin-bottom:.85rem}.v19-notification-center-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.v19-notification-compose{margin:0;overflow:hidden}.v19-compose-heading{padding:.85rem 1rem;border-bottom:1px solid var(--dq-line);background:#f8fafb}.v19-compose-heading>div{display:flex;align-items:center;gap:.65rem}.v19-compose-heading strong,.v19-compose-heading small{display:block}.v19-compose-heading small{margin-top:.1rem;color:#718087;font-size:.69rem}.v19-compose-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#e9f4f2;color:#287c70;font-size:.72rem;font-weight:900}.v19-notification-compose .management-form{display:grid;gap:.78rem;padding:1rem}.v19-check-row{display:flex;align-items:flex-start;gap:.55rem;font-size:.8rem;font-weight:650}.v19-check-row input{margin-top:.2rem}.v19-recipient-picker{display:grid;gap:.5rem}.v19-send-all-row{display:flex;align-items:flex-start;gap:.55rem;padding:.65rem .7rem;border:1px solid #c9dfdb;border-radius:9px;background:#f4faf8;cursor:pointer}.v19-send-all-row input{margin-top:.2rem}.v19-send-all-row strong,.v19-send-all-row small{display:block}.v19-send-all-row small{color:#6d7a80;font-size:.67rem;font-weight:500}.v19-recipient-checklist{max-height:190px;overflow:auto;border:1px solid var(--dq-line);border-radius:9px;padding:.25rem .65rem;background:#fff}.v19-recipient-checklist ul{list-style:none;margin:0;padding:0}.v19-recipient-checklist li{border-bottom:1px solid #eef1f2}.v19-recipient-checklist li:last-child{border-bottom:0}.v19-recipient-checklist label{display:flex;align-items:center;gap:.5rem;padding:.46rem .1rem;font-weight:650;cursor:pointer}.v19-reminder-options{display:grid;gap:.5rem;padding:.65rem .7rem;border-radius:9px;background:#f7f9fa}.v19-reminder-rules-card{margin-top:.25rem}

/* Task edit page */
.v19-task-edit-heading{margin-bottom:.85rem}.v19-task-edit-heading h1{max-width:900px}.v19-task-context-card{border-top:3px solid #2B9C8D}.v19-task-context-card .m11-kpi-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem}.v19-task-context-card .m11-kpi{min-height:112px}.v19-task-config-card{max-width:1180px}.v19-task-config-card .m11-form-intro{padding-bottom:.8rem;border-bottom:1px solid var(--dq-line);margin-bottom:.2rem}.v19-task-config-card .management-form{padding-top:.4rem}.v19-task-config-card .m11-form-grid{gap:1rem 1.15rem}.v19-task-config-card .management-field{padding:.1rem 0}.v19-task-config-card .management-field label{margin-bottom:.3rem}.v19-task-config-card input,.v19-task-config-card select,.v19-task-config-card textarea{border-radius:8px}.v19-task-config-card .management-form-actions{margin-top:.35rem;padding-top:1rem;border-top:1px solid var(--dq-line)}

@media(max-width:1100px){.v19-client-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.v19-task-context-card .m11-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.v19-today-work-list{grid-template-columns:1fr}}
@media(max-width:900px){.v19-time-entry-grid{grid-template-columns:1fr}.v19-client-contributor-grid{grid-template-columns:1fr}.v19-client-insight-strip{grid-template-columns:1fr}.v19-client-insight-strip>div{border-right:0;border-bottom:1px solid var(--dq-line)}.v19-client-insight-strip>div:last-child{border-bottom:0}.v19-notification-center-grid{grid-template-columns:1fr}.v19-client-period-bar{align-items:flex-start;flex-direction:column}.v19-work-summary-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.v19-client-kpis{grid-template-columns:1fr 1fr}.v19-task-context-card .m11-kpi-grid{grid-template-columns:1fr 1fr}.v19-work-summary-head{align-items:flex-start}.v19-live-total{font-size:1rem}.v19-recipient-checklist{max-height:150px}.m11-board-toolbar-stats>span{padding:4px 8px;border:0}}


/* Keep server-side feedback visible after anchored redirects on long boards. */
body.authenticated-app .message-stack{
    position:fixed;
    top:76px;
    right:22px;
    z-index:180;
    width:min(620px,calc(100vw - 44px));
    display:grid;
    gap:8px;
    pointer-events:none;
}
body.authenticated-app .message-stack .app-message{
    margin:0;
    padding:12px 14px;
    pointer-events:auto;
    box-shadow:0 12px 34px rgba(24,42,48,.16);
    border-width:1px;
    backdrop-filter:blur(8px);
}
body.authenticated-app .message-stack .app-message.error,
body.authenticated-app .message-stack .app-message.warning{
    font-weight:700;
}
@media(max-width:820px){
    body.authenticated-app .message-stack{
        top:12px;
        left:12px;
        right:12px;
        width:auto;
    }
}


/* Work Summary uses status color as a quick visual scan while preserving the
   live teal indicator as a separate "timer is moving" signal. */
.v19-work-summary-stats .is-worked{
    border-color:#cbd7dc;
    background:#f7fafb;
}
.v19-work-summary-stats .is-in-progress{
    border-color:#efd18a;
    background:#fff8e7;
}
.v19-work-summary-stats .is-in-progress b{color:#8a6410}
.v19-work-summary-stats .is-completed{
    border-color:#b9ddd3;
    background:#eef9f5;
}
.v19-work-summary-stats .is-completed b{color:#267467}
.v19-work-summary-stats .is-paused{
    border-color:#d8c4e5;
    background:#f8f2fb;
}
.v19-work-summary-stats .is-paused b{color:#71508a}
.v19-today-work-list a.v19-today-status-in_progress{
    border-color:#efd18a;
    background:#fffaf0;
    box-shadow:inset 3px 0 0 #e3ad29;
}
.v19-today-work-list a.v19-today-status-completed{
    border-color:#b9ddd3;
    background:#f3faf7;
    box-shadow:inset 3px 0 0 #2b9c8d;
}
.v19-today-work-list a.v19-today-status-paused{
    border-color:#d8c4e5;
    background:#faf6fc;
    box-shadow:inset 3px 0 0 #8d69aa;
}
.v19-today-work-list a.v19-today-status-not_started{
    border-color:#d5dde1;
    background:#f8fafb;
    box-shadow:inset 3px 0 0 #98a6ad;
}
.v19-today-work-list a.v19-today-status-in_progress:hover{background:#fff6df}
.v19-today-work-list a.v19-today-status-completed:hover{background:#edf8f4}
.v19-today-work-list a.v19-today-status-paused:hover{background:#f5eef9}
.v19-today-work-list a.v19-today-status-not_started:hover{background:#f2f6f7}

/* Client Activity service-health metrics */
.v19-client-kpi-attention{border-top-color:#e6a72c !important}
.v19-client-kpi-open{border-top-color:#df5b65 !important}
.v19-client-kpi-resolution{border-top-color:#2b9c8d !important}
.v19-client-kpi-resolution-time{border-top-color:#7455a7 !important}
.v19-client-kpi-attention strong{color:#86600d}
.v19-client-kpi-open strong{color:#a43f47}
.v19-client-kpi-resolution strong{color:#246f65}
.v19-client-kpi-resolution-time strong{color:#65478f}


/* Attention-blocked work is a derived UI state. The stored task status remains
   In Progress / Not Started while open Support or Escalation prevents active work. */
.v20-task-actions{
    grid-template-columns:repeat(4,minmax(0,1fr));
}
.v20-attention-card{
    --v18-state:#d8842d;
    --v18-state-bg:#fff6ea;
    --v18-state-text:#8c4f13;
    border-top:3px solid var(--v18-state);
}
.v20-attention-card .v18-task-row{
    box-shadow:inset 3px 0 0 var(--v18-state);
}
.v20-attention-card .v18-task-row:hover,
.v20-attention-card .v18-task-row:has(.v18-task-row-link:focus-visible){
    background:var(--v18-state-bg);
    border-color:#e8c69f;
}
.v20-attention-card .v18-task-row.has-escalation{
    --v18-state:#d94f5c;
    --v18-state-bg:#fff2f3;
    --v18-state-text:#9c3039;
}
.v20-attention-row{
    grid-template-columns:minmax(0,1fr) auto auto;
}
.v20-attention-row .v18-task-copy,
.v20-attention-row>.v19-task-time,
.v20-attention-row>.v18-progress-value{
    position:relative;
    z-index:2;
}
.v20-attention-chips{
    display:flex;
    flex-wrap:wrap;
    gap:4px;
    margin-bottom:3px;
}
.v20-attention-chips .v18-status-chip{
    margin:0;
}
.v20-attention-chips .is-support{
    background:#fff0dc;
    color:#8a5319;
    border-color:#edc48e;
}
.v20-attention-chips .is-escalation{
    background:#ffe9eb;
    color:#a13a44;
    border-color:#efb2b8;
}
.v20-attention-request-copy,
.v20-work-paused-note{
    display:block;
    margin-top:4px;
    white-space:normal;
    overflow:visible;
    text-overflow:clip;
    line-height:1.35;
}
.v20-attention-request-copy{
    color:#4f626c;
    font-size:8px;
}
.v20-work-paused-note{
    color:#8a5d2b;
    font-size:8px;
    font-weight:750;
}
.v20-attention-row.has-escalation .v20-work-paused-note{
    color:#9c3d46;
}
.v20-attention-actions{
    position:relative;
    z-index:3;
    grid-column:1/-1;
    display:flex;
    flex-wrap:wrap;
    gap:5px;
    padding-top:2px;
}
.v20-attention-actions form{
    margin:0;
}
.v20-attention-actions .secondary-button{
    min-height:28px;
    padding:4px 8px;
    font-size:8px;
}
.v20-escalation-withdraw{
    border-color:#e6aeb3;
    color:#9c3039;
    background:#fff8f8;
}
.v20-kpi-waiting{
    border-top-color:#d8842d;
    background:#fffaf4;
}
.v20-kpi-waiting>span,
.v20-kpi-waiting>strong{
    color:#7d4c18;
}

/* Admin keeps the canonical Status visible, with attention shown as a derived
   substate underneath rather than inventing a second lifecycle status. */
.v20-admin-status-stack{
    display:grid;
    justify-items:start;
    gap:4px;
}
.v20-task-substate{
    display:inline-flex;
    align-items:center;
    max-width:120px;
    padding:3px 5px;
    border-radius:5px;
    font-size:7px;
    font-weight:800;
    line-height:1.25;
    white-space:normal;
}
.v20-task-substate.is-support{
    background:#fff0dc;
    color:#875016;
    border:1px solid #edc48e;
}
.v20-task-substate.is-escalation{
    background:#ffe9eb;
    color:#9b3540;
    border:1px solid #efb2b8;
}

@media(max-width:1400px){
    .v20-task-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
    .v20-task-actions{grid-template-columns:1fr}
}


/* Admin assignment/access chooser: this control can grow after an Employee
   without existing access is selected. Keep it inside the viewport instead of
   anchoring an oversized panel to a table cell. */
.m20-assignee-popover{
    position:fixed !important;
    top:50% !important;
    left:50% !important;
    transform:translate(-50%,-50%);
    width:min(440px,calc(100vw - 24px));
    max-height:calc(100dvh - 24px);
    overflow-y:auto;
    overscroll-behavior:contain;
    z-index:220;
    padding-bottom:0;
    box-shadow:0 18px 52px rgba(24,42,48,.22);
}
.m20-assignee-popover form{
    display:grid;
    gap:.65rem;
}
.m20-assignee-popover .m11-cell-popover-actions{
    position:sticky;
    bottom:0;
    z-index:2;
    margin:0 -.8rem;
    padding:.7rem .8rem .8rem;
    background:linear-gradient(to bottom,rgba(255,255,255,.92),#fff 26%);
    border-top:1px solid var(--dq-line);
}
.m20-assignee-popover [data-assignment-access-warning]{
    margin-bottom:.15rem;
}
@media(max-width:640px){
    .m20-assignee-popover{
        width:calc(100vw - 16px);
        max-height:calc(100dvh - 16px);
    }
}

.v19-status-popover #v19-admin-status-submit:disabled{
    opacity:.48;
    cursor:not-allowed;
    box-shadow:none;
}


/* My Work lane refinement: keep the board to three clear operational lanes.
   Attention-blocked work lives inside Paused & Awaiting instead of becoming a
   fourth top-level status column. */
.v20-task-actions{
    grid-template-columns:repeat(3,minmax(0,1fr));
    align-items:start;
    gap:12px;
}
.v20-task-actions .v18-task-card{
    min-width:0;
    height:520px;
    min-height:520px;
    max-height:520px;
    display:flex;
    flex-direction:column;
    align-self:start;
    overflow:hidden;
}
.v20-lane-heading{
    flex:0 0 auto;
    min-height:38px;
    padding-bottom:9px;
    margin-bottom:9px;
    border-bottom:1px solid var(--dq-line);
}
.v20-lane-body{
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    overflow-x:hidden;
    overscroll-behavior:contain;
    scrollbar-gutter:stable;
    padding-right:4px;
}
.v20-lane-body::-webkit-scrollbar{
    width:8px;
}
.v20-lane-body::-webkit-scrollbar-track{
    background:transparent;
}
.v20-lane-body::-webkit-scrollbar-thumb{
    background:#c7d1d5;
    border:2px solid transparent;
    border-radius:999px;
    background-clip:padding-box;
}
.v20-lane-body::-webkit-scrollbar-thumb:hover{
    background:#9eacb2;
    border:2px solid transparent;
    background-clip:padding-box;
}
.v20-lane-heading h2{
    margin:0;
    font-size:15px;
    line-height:1.2;
}
.v20-lane-heading .widget-caption{
    margin-left:auto;
}
.v20-paused-awaiting-card .v18-task-subsection{
    padding-top:0;
}
.v20-paused-awaiting-card .v18-task-subsection.has-separator{
    margin-top:12px;
    padding-top:12px;
    border-top:1px solid var(--dq-line);
}
.v20-paused-awaiting-card .v18-task-subheading{
    margin-bottom:7px;
}
.v20-paused-awaiting-card .v18-task-subheading strong{
    font-size:9px;
    letter-spacing:.035em;
}
.v20-attention-subsection .v18-task-row{
    box-shadow:inset 3px 0 0 #d8842d;
    background:#fffaf3;
}
.v20-attention-subsection .v18-task-row.has-escalation{
    box-shadow:inset 3px 0 0 #d94f5c;
    background:#fff5f6;
}
.v20-paused-awaiting-card .v20-attention-row{
    grid-template-columns:minmax(0,1fr) auto auto;
}
.v20-paused-awaiting-card .v20-attention-actions{
    grid-column:1/-1;
}
.v20-task-actions .v18-task-list{
    gap:6px;
}
.v20-task-actions .v18-task-row{
    min-height:0;
}
.v20-task-actions .v18-task-copy strong{
    line-height:1.25;
}

@media(max-width:1180px){
    .v20-task-actions{grid-template-columns:1fr 1fr}
    .v20-paused-awaiting-card{grid-column:1/-1}
    .v20-task-actions .v18-task-card{
        height:470px;
        min-height:470px;
        max-height:470px;
    }
}
@media(max-width:760px){
    .v20-task-actions{grid-template-columns:1fr}
    .v20-paused-awaiting-card{grid-column:auto}
    .v20-task-actions .v18-task-card{
        height:auto;
        min-height:0;
        max-height:none;
        overflow:visible;
    }
    .v20-lane-body{
        overflow:visible;
        padding-right:0;
        scrollbar-gutter:auto;
    }
}
