.side-link.active { background:#edeef2; color:#282a31; font-weight:700; }
.side-link.active > span:first-child { color:#5d50c3; }

/* Keep the task marker centered over both title and reference lines. */
.cu-task-row .row-title {
  display:block!important;
  position:relative;
  padding-left:27px;
  min-height:32px;
}
.cu-task-row .row-title .status-ring { position:absolute; left:0; top:50%; transform:translateY(-50%); }
.cu-task-row .row-title b,.cu-task-row .row-title small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cu-task-row .row-title b { line-height:18px; }
.cu-task-row .row-title small { line-height:13px; margin:0; }
.cu-task-row .row-title:not(:has(small)) b { line-height:32px; }
.cu-list-head > span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:10px; letter-spacing:0; }

.section-page { padding:32px 34px 60px; max-width:1500px; }
.section-heading { margin-bottom:24px; }
.section-heading h1 { margin:4px 0 8px; color:#292a31; font-size:28px; letter-spacing:-.035em; }
.section-heading p:last-child { margin:0; color:#777a84; font-size:13px; }
.section-page .eyebrow { color:#7766cc; font-size:10px; letter-spacing:.12em; font-weight:750; }
.overview-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:13px; margin-bottom:20px; }
.overview-card,.section-card,.more-card { background:#fff; border:1px solid #e7e8ed; border-radius:12px; box-shadow:0 1px 3px #2020300a; }
.overview-card { min-height:126px; padding:18px; display:flex; flex-direction:column; gap:7px; }
.overview-card:hover,.more-card:hover,.people-card:hover { border-color:#c9c0ed; box-shadow:0 5px 20px #41326a12; }
.overview-card small { font-size:12px; color:#787a83; }
.overview-card strong { font-size:31px; line-height:1; color:#313139; }
.overview-card span { font-size:11px; color:#7764c8; }
.overview-card.overdue strong { color:#d3695c; }
.home-two-col { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(240px,.8fr); gap:16px; }
.section-card { padding:18px; margin-bottom:16px; }
.section-card h2 { font-size:16px; margin:0 0 15px; }
.section-card-title { display:flex; align-items:center; justify-content:space-between; }
.section-card-title a { font-size:11px; color:#715bc8; }
.attention-row,.team-summary { display:flex; align-items:center; gap:11px; padding:10px 2px; border-top:1px solid #efeff2; }
.attention-row > span:nth-child(2) { display:grid; gap:3px; min-width:0; flex:1; }
.attention-row strong,.team-summary strong { font-size:12px; font-weight:650; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.attention-row small,.team-summary small { font-size:10px; color:#91929b; }
.attention-row .priority { font-size:10px; }
.team-summary-icon { width:29px; height:29px; border-radius:8px; background:#ede9ff; color:#6451bd; display:grid; place-items:center; font-weight:800; }
.team-summary small { margin-left:auto; }
.planner-page .calendar-panel { margin-top:18px; }
.people-page .section-card { margin-bottom:20px; }
.people-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(160px,1fr)); gap:12px; }
.people-card { min-height:155px; border:1px solid #e7e8ed; border-radius:11px; padding:14px; display:flex; flex-direction:column; gap:8px; }
.people-avatar { width:68px; height:68px; border-radius:12px; display:grid; place-items:center; background:#22242b; color:#fff; font-size:27px; font-weight:760; }
.people-avatar.team { background:#ede9ff; color:#6d57bd; }
.people-card strong { font-size:13px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.people-card small { font-size:11px; color:#8b8d96; }
.more-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.more-card { min-height:155px; padding:19px; display:grid; align-content:start; gap:9px; }
.more-card > span { font-size:23px; color:#6c56c1; }
.more-card strong { font-size:15px; }
.more-card small { font-size:11px; color:#898b94; }
.more-card b { justify-self:end; color:#7660ce; }
.settings-page .settings-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; align-items:start; }
.settings-page .panel { border:1px solid #e7e8ed; border-radius:12px; box-shadow:none; padding:22px; }
.language-options { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:17px; }
.language-option { background:#fff; border:1px solid #e4e4e9; border-radius:9px; min-height:82px; padding:12px; display:grid; grid-template-columns:28px 1fr; grid-template-rows:1fr 1fr; text-align:left; column-gap:8px; }
.language-option > span { grid-row:1/span 2; font-size:22px; }
.language-option strong { font-size:13px; }
.language-option small { font-size:10px; color:#90929b; }
.language-option[aria-pressed=true] { border-color:#8168dd; background:#f8f5ff; box-shadow:0 0 0 2px #8168dd1e; }
@media(min-width:721px) and (max-width:850px) {
  .sidebar .brand { justify-content:space-between; padding:0 16px; }
  .sidebar .brand .brand-wordmark { font-size:15px; }
  .sidebar .brand .brand-wordmark::after { content:none; }
  .sidebar .brand > span:last-child { font-size:18px; }
  .sidebar .side-link { justify-content:flex-start; font-size:12px; padding:5px 9px; }
}
@media(max-width:1000px) {
  .overview-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .home-two-col,.settings-page .settings-grid { grid-template-columns:1fr; }
  .more-grid { grid-template-columns:1fr 1fr; }
}
@media(max-width:720px) {
  .section-page { padding:20px 12px 45px; }
  .more-grid { grid-template-columns:1fr; }
  .people-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
