/* Cross-functional Today, matching the approved concept without mock data. */
.today-v2 .today-heading{align-items:center}
.today-v2 .today-heading p{font-weight:600;color:#5c708d}
.today-v2 .today-kpi{text-decoration:none;min-height:88px}
/* The dashboard cards float softly, as in the approved Today mockup. */
.today-v2 .today-kpi,.today-v2 .today-panel,.today-v2 .today-v2-stream{border:0;background:#fff;box-shadow:0 3px 14px rgba(22,42,68,.08),0 1px 3px rgba(22,42,68,.035)}
.today-v2 .today-kpi:hover,.today-v2 .today-kpi:focus-visible,.today-v2 .today-v2-stream:hover,.today-v2 .today-v2-stream:focus-visible{background:#fff;box-shadow:0 7px 22px rgba(22,42,68,.13),0 2px 5px rgba(22,42,68,.05);transform:translateY(-1px)}
.today-v2 .today-kpi,.today-v2 .today-v2-stream{transition:box-shadow .18s ease,transform .18s ease}
.today-v2 .today-kpi b.today-v2-unavailable{font-size:14px;color:var(--slate);font-weight:600}
.today-v2 .today-alert-row strong{font-size:15px}
.today-v2 .today-kpi.ready .today-kpi-icon{background:#e8f6ef;color:#0b8950}
.today-v2 .today-kpi.assigned .today-kpi-icon{background:#e9f1ff;color:#1263c9}
.today-v2 .today-kpi.waiting .today-kpi-icon{background:#edf0f4;color:#546478}
.today-v2 .today-kpi.alert .today-kpi-icon{background:#fce9eb;color:#db1426}
.today-v2 .today-main{grid-template-columns:minmax(0,1.86fr) minmax(310px,.99fr)}
.today-v2 .today-work{min-height:444px}
.today-v2 .today-panel-head>div{min-width:0}
.today-v2-headnote{display:block;margin-top:3px;color:var(--slate);font-size:10px;font-weight:400}
.today-v2 .today-work-tabs{gap:10px}
.today-v2 .today-table{min-width:620px}
.today-v2-table td{vertical-align:middle}
.today-v2-table td:nth-child(2){max-width:320px;white-space:normal}
.today-v2-table td:nth-child(2) small{display:block;margin-top:4px;color:var(--slate);font-size:10px}
.today-v2-table td:nth-child(3){max-width:175px}
.today-v2-table .today-open{display:inline-block;min-width:56px;text-align:center;text-decoration:none}
.today-v2-priority{display:inline-block;min-width:56px;padding:5px 8px;border-radius:4px;text-align:center;background:#fff1db;color:#af6600;font-size:10px;font-weight:700}
.today-v2-priority.high{background:#ffe9eb;color:#c91425}
.today-v2-priority.low{background:#e8f0ff;color:#2260b0}
.today-v2 .today-alert-row{min-height:68px}
.today-v2 .today-alert-row.overdue strong{color:#c91425}
.today-v2 .today-alert-row.overdue .today-alert-icon{background:#ffe8eb;color:#c91425}
.today-v2 .today-bottom{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
.today-v2-activity{padding:5px 16px 10px}
.today-v2-event{display:grid;grid-template-columns:24px 38px minmax(0,1fr) 72px;gap:9px;align-items:center;min-height:31px;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:11px}
.today-v2-event:last-child{border-bottom:0}
.today-v2-event:hover{background:#fafbfc}
.today-v2-event-icon{font-size:15px;color:#50647c}
.today-v2-event time,.today-v2-event small{color:var(--slate);font-size:10px}
.today-v2-event small{text-align:right}
.today-v2-streams{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px}
.today-v2-stream{position:relative;display:grid;align-content:start;gap:5px;min-height:122px;padding:13px;border:1px solid var(--line);border-radius:5px;color:var(--ink);text-decoration:none}
.today-v2-stream:hover,.today-v2-stream:focus-visible{border-color:#bac4cd;background:#fafbfc}
.today-v2-stream-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#edf2fb;color:#4c64a0;font-size:18px}
.today-v2-stream b{font-size:11px}
.today-v2-stream strong{font-size:14px}
.today-v2-stream small{color:var(--slate);font-size:10px;line-height:1.35}
.today-v2-stream-arrow{position:absolute;right:10px;top:11px;color:#778699;font-size:19px}
.today-v2-footnote{margin:11px 0 0;color:#76591c;font-size:10px}
@media(max-width:1180px){.today-v2 .today-main{grid-template-columns:minmax(0,1fr) 300px}.today-v2 .today-bottom{grid-template-columns:1fr}}
@media(max-width:950px){.today-v2 .today-main{grid-template-columns:1fr}}
@media(max-width:650px){.today-v2 .today-heading{align-items:flex-start;flex-direction:column;gap:4px}.today-v2 .today-work{min-height:0}.today-v2-streams{grid-template-columns:1fr}.today-v2-stream{min-height:80px}.today-v2-event{grid-template-columns:21px 37px minmax(0,1fr)}.today-v2-event small{display:none}}
