/* Chapters beyond the inbox: same glass, 18–24 px rhythm. */
.page .grid { gap: 18px; }
.page .stack { gap: 18px; }
.panel { padding: 22px 24px; }
.panel.flush { padding: 0; }
.ph-pad { padding: 22px 24px 4px; }
.ph-pad .panel-h { margin-bottom: 10px; }
.panel.flush .tbl-wrap { padding: 0 12px 10px; }
.panel.flush .tbl td:first-child, .panel.flush .tbl th:first-child { padding-left: 12px; }
.tag.req { background: #00000040; color: #e6e1dc; backdrop-filter: blur(10px); }
svg.ic-ok { width: 14px; height: 14px; stroke: var(--up); fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; flex: none; }

/* metric tiles */
.metric { display: flex; flex-direction: column; gap: 10px; min-height: 142px; }
.m-h { font-size: 12.5px; color: var(--t2); }
.m-row { display: flex; align-items: flex-end; gap: 14px; margin-top: auto; }
.mv { font-size: 38px; font-weight: 300; letter-spacing: -0.05em; line-height: 1; font-variant-numeric: tabular-nums; }
.m-chart { flex: 1; min-width: 60px; max-width: 140px; margin-left: auto; }
.m-sub { display: flex; gap: 8px; align-items: center; font-size: 12px; color: var(--t3); flex-wrap: wrap; }

/* follow-up tasks */
.tasks { display: flex; flex-direction: column; gap: 0; }
.task { display: flex; gap: 14px; padding: 20px 4px; border-top: 1px solid #ffffff0a; animation: tiIn 0.5s var(--ease) both; animation-delay: calc(var(--i, 0) * 40ms); transition: opacity 0.3s; }
.task:first-child { border-top: 0; padding-top: 6px; }
.task.done { opacity: 0.62; }
.task-tick { width: 24px; height: 24px; border-radius: 50%; flex: none; display: grid; place-items: center; border: 0; background: #ffffff0d; box-shadow: inset 0 0 0 1px #ffffff26; cursor: pointer; margin-top: 1px; }
.task-tick svg { width: 12px; height: 12px; stroke: transparent; fill: none; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.task-tick:hover svg { stroke: var(--t3); }
.task-tick.on { background: var(--up); box-shadow: none; }
.task-tick.on svg { stroke: #0d1a10; }
.task-b { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.task-r1 { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 13.5px; }
.task-r1 b { font-weight: 500; }
.task-pet { display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; color: var(--t2); }
.due { font-size: 12px; color: var(--t3); font-variant-numeric: tabular-nums; }
.due.now { color: #ffb0b3; }
.task-d { font-size: 13px; line-height: 1.55; color: #dcd6d1; padding: 10px 12px; border-radius: 12px; background: #0000002b; margin-top: 4px; }
.task-a { display: flex; justify-content: flex-end; gap: 8px; margin-top: 4px; }
.task-st { display: flex; align-items: center; gap: 6px; font-size: 12px; color: #a6dcb1; }
.task-st svg { width: 13px; height: 13px; stroke: currentColor; fill: none; stroke-width: 2; }
.ivals { display: flex; flex-direction: column; gap: 18px; }
.ival { display: flex; flex-direction: column; gap: 9px; }
.li .input.sm { width: auto; max-width: 140px; }

/* automatic */
.peak-t { display: inline-flex; align-items: center; gap: 10px; font-size: 13.5px; padding: 8px 14px 8px 10px; border-radius: 999px; background: #00000059; backdrop-filter: blur(14px); box-shadow: inset 0 0 0 1px #ffffff1c; cursor: pointer; }
.peak { display: flex; flex-direction: column; gap: 10px; padding: 16px; border-radius: 16px; background: #ffffff06; box-shadow: inset 0 0 0 1px #ffffff0f; transition: background 0.4s, box-shadow 0.4s; }
.peak b { font-weight: 500; }
.peak.on { background: linear-gradient(180deg, #dd061122, #dd061108); box-shadow: inset 0 0 0 1px #ff4d523a; }
.peak-l { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 4px; }
.pmsg { margin: 4px 24px 22px; padding: 12px 14px; border-radius: 14px; background: #9cc3e810; box-shadow: inset 0 0 0 1px #9cc3e826; display: flex; flex-direction: column; gap: 5px; }
.modes { display: flex; flex-direction: column; }
.mrow { display: grid; grid-template-columns: minmax(0, 1fr) 170px auto; align-items: center; gap: 18px; padding: 13px 0; border-bottom: 1px solid #ffffff0a; }
.mrow .seg button { padding: 5px 11px; font-size: 12px; }
.m-l { min-width: 0; }
.mq { display: flex; align-items: center; gap: 10px; }
.mq .meter { flex: 1; }
.mq .up { color: var(--up); }
.tone { display: flex; flex-wrap: wrap; gap: 8px; }
.tone .chip { cursor: default; }

/* team */
.foot-notes { display: flex; flex-wrap: wrap; gap: 8px 22px; margin-top: 16px; font-size: 12.5px; color: var(--t3); }
.foot-notes b { color: var(--t1); font-weight: 500; }
.q-top { display: flex; align-items: center; gap: 20px; }
.split { display: flex; align-items: center; gap: 26px; }
.split-l { display: flex; flex-direction: column; gap: 12px; flex: 1; }
.tbl td.spk { width: 120px; min-width: 100px; }

/* knowledge */
.srcflow { display: grid; grid-template-columns: minmax(0, 1.25fr) 70px minmax(0, 0.9fr); align-items: center; }
.sf-col { display: flex; flex-direction: column; gap: 10px; }
.sf-n { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 14px; background: #ffffff07; box-shadow: inset 0 0 0 1px #ffffff0f; font-size: 13px; }
.sf-n b { font-weight: 500; }
.sf-n > svg, .sf-hub > svg, .ef-n > svg { width: 17px; height: 17px; stroke: var(--t2); fill: none; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; flex: none; }
.sf-mid, .ef-w { position: relative; height: 2px; margin: 0 8px; background: #ffffff14; border-radius: 2px; overflow: hidden; }
.sf-mid i, .ef-w i { position: absolute; top: 0; width: 22px; height: 2px; border-radius: 2px; background: var(--ai); box-shadow: 0 0 10px var(--ai); animation: flow 2.4s linear infinite; }
.sf-mid i:nth-child(2), .ef-w i:nth-child(2) { animation-delay: 0.8s; } .sf-mid i:nth-child(3), .ef-w i:nth-child(3) { animation-delay: 1.6s; }
@keyframes flow { from { left: -24px; } to { left: 100%; } }
.sf-hub { display: flex; flex-direction: column; gap: 5px; align-items: flex-start; padding: 20px; border-radius: 18px; background: linear-gradient(180deg, #9cc3e814, #9cc3e806); box-shadow: inset 0 0 0 1px #9cc3e830; }
.sf-hub b { font-size: 16px; font-weight: 500; }
.sf-hub > svg { stroke: var(--info); width: 20px; height: 20px; }
.retired { display: flex; align-items: center; gap: 10px; margin-top: 12px; font-size: 12.5px; }
.retired .grow { text-decoration: line-through; color: var(--t3); }
.miss-i svg { width: 16px; height: 16px; stroke: var(--warn); fill: none; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; display: block; }
.stages { display: flex; flex-direction: column; gap: 14px; }
.stage { display: grid; grid-template-columns: 90px minmax(0, 1fr) 110px; align-items: center; gap: 12px; }
.stage-b { height: 6px; border-radius: 999px; background: #ffffff0d; overflow: hidden; }
.stage-b i { display: block; height: 100%; width: var(--w); border-radius: 999px; background: linear-gradient(90deg, var(--ai), #f3c7a255); transform-origin: left; animation: grow 1.2s var(--ease) both; animation-delay: calc(400ms + var(--i) * 120ms); }

/* engage */
.eflow { display: grid; grid-template-columns: minmax(0, 1fr) minmax(30px, 80px) minmax(0, 1fr) minmax(30px, 80px) minmax(0, 1fr); align-items: center; padding: 8px 0; }
.ef-n { display: flex; flex-direction: column; gap: 6px; padding: 18px; border-radius: 18px; background: #ffffff07; box-shadow: inset 0 0 0 1px #ffffff12; min-width: 0; }
.ef-n b { font-size: 15px; font-weight: 500; }
.ef-n.eng { background: linear-gradient(180deg, #dd061126, #dd06110a); box-shadow: inset 0 0 0 1px #ff4d523d; }
.ef-n.eng > svg { stroke: #ffb0b3; }
.ekpis { display: flex; flex-wrap: wrap; gap: 18px 34px; margin-top: 22px; padding-top: 18px; border-top: 1px solid #ffffff0d; }
.kpi .v.sm { font-size: 24px; }
.checks, .deals, .roles { display: flex; flex-direction: column; gap: 13px; }

/* settings */
.signin { display: flex; align-items: center; gap: 12px; padding: 14px; border-radius: 14px; background: #ffffff08; box-shadow: inset 0 0 0 1px #ffffff12; }
.signin b { font-weight: 500; font-size: 13.5px; }
.signin > svg { width: 22px; height: 22px; fill: #f3efeb; stroke: none; flex: none; }
.vsplit { display: flex; gap: 4px; margin-top: 22px; }
.vsplit > div { display: flex; flex-direction: column; gap: 7px; min-width: 0; }
.vsplit i { display: block; height: 8px; border-radius: 999px; }
.vsplit span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.wrapcell { white-space: normal; min-width: 220px; }

/* ===================================================================== Telefoon */
.call { display: grid; grid-template-columns: minmax(270px, 320px) minmax(0, 1fr) minmax(300px, 360px); gap: 18px; height: calc(100% - 110px); min-height: 560px; }
.call-head { margin-bottom: 18px; }
.call .pane { overflow: auto; scrollbar-width: thin; }
.fresh-in { animation: freshIn 1.4s var(--ease) both; }
.ring { margin: auto; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 10px; padding: 40px 30px; max-width: 460px; }
.ring-orb { position: relative; width: 104px; height: 104px; border-radius: 50%; display: grid; place-items: center; background: radial-gradient(circle at 50% 35%, #ff4d52, #a8040c); box-shadow: 0 20px 60px -10px #dd0611aa; margin-bottom: 14px; }
.ring-orb svg { width: 34px; height: 34px; stroke: #fff; fill: none; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; position: relative; animation: wiggle 1.4s ease-in-out infinite; }
.ring-orb i { position: absolute; inset: 0; border-radius: 50%; border: 1px solid #ff4d52; animation: ringOut 2.4s var(--ease) infinite; }
.ring-orb i:nth-child(2) { animation-delay: 0.8s; } .ring-orb i:nth-child(3) { animation-delay: 1.6s; }
@keyframes ringOut { from { transform: scale(1); opacity: 0.8; } to { transform: scale(2.1); opacity: 0; } }
@keyframes wiggle { 0%, 60%, 100% { transform: rotate(0); } 10%, 30%, 50% { transform: rotate(-12deg); } 20%, 40% { transform: rotate(12deg); } }
.ring-t { font-size: 13px; color: var(--t2); }
.ring-n { font-size: 30px; font-weight: 300; letter-spacing: -0.03em; }
.call-bar { display: flex; align-items: center; gap: 12px; padding: 18px 20px 14px; flex-wrap: wrap; }
.rec { display: inline-flex; align-items: center; gap: 7px; font-size: 12.5px; color: #ffb0b3; }
.rec i { width: 8px; height: 8px; border-radius: 2px; background: var(--brand-hi); animation: blink 1.4s steps(1) infinite; }
.call-time { font-size: 20px; font-weight: 400; letter-spacing: -0.02em; }
.wave { display: flex; align-items: center; gap: 3px; height: 56px; padding: 0 20px; flex: none; }
.wave i { flex: 1; height: 100%; border-radius: 3px; background: #ffffff38; transform: scaleY(0.08); transition: transform 0.09s linear, background 0.3s; }
.wave i.k { background: var(--ai); }
.tr { flex: 1; overflow-y: auto; padding: 14px 20px; display: flex; flex-direction: column; gap: 12px; scrollbar-width: thin; min-height: 0; }
.tl { display: grid; grid-template-columns: 70px minmax(0, 1fr); gap: 12px; font-size: 14px; line-height: 1.55; animation: tiIn 0.35s var(--ease) both; }
.tl-w { font-size: 12px; color: var(--t3); padding-top: 2px; }
.tl-klant .tl-w { color: var(--ai); }
.tl-klant .tl-t { color: #f5efe9; }
.tl-medewerker .tl-t { color: #cfc9c4; }
.tl-systeem .tl-t { color: var(--t3); font-size: 12.5px; }
.call-foot { display: flex; align-items: center; gap: 8px; padding: 12px 20px 16px; border-top: 1px solid #ffffff0a; }
.call-foot svg { width: 13px; height: 13px; stroke: currentColor; fill: none; stroke-width: 1.8; flex: none; }
.flags { display: flex; gap: 5px; flex-wrap: wrap; }
.flag { display: inline-flex; align-items: center; gap: 5px; height: 22px; padding: 0 8px; border-radius: 999px; font-size: 11px; color: var(--t3); background: #ffffff08; transition: all 0.4s var(--ease); }
.flag svg { width: 11px; height: 11px; stroke: currentColor; fill: none; stroke-width: 2; }
.flag.on.gezondheid { background: #dd06112e; color: #ffb0b3; }
.flag.on.emotie { background: #e9b87224; color: #efc78e; }
.flag.on.collega { background: #9cc3e824; color: #b4d3ef; }
.call-r .pane-h { flex-wrap: wrap; }
.acards { display: flex; flex-direction: column; gap: 12px; padding: 0 18px 20px; }
.acard { padding: 14px 16px; border-radius: 16px; background: #ffffff07; box-shadow: inset 0 0 0 1px #ffffff10; display: flex; flex-direction: column; gap: 8px; animation: pcIn 0.6s var(--ease) both; }
.ac-h { display: flex; align-items: center; gap: 8px; font-size: 12.5px; }
.ac-h b { font-weight: 500; flex: 1; min-width: 0; }
.ac-h > svg { width: 14px; height: 14px; stroke: var(--t2); fill: none; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; flex: none; }
.ac-say { font-size: 13px; line-height: 1.55; color: #ece6e1; padding: 9px 11px; border-radius: 10px; background: #0000002e; }
.acard.order { box-shadow: inset 0 0 0 1px #8fd19e2e; }
.acard.order .row b { font-weight: 500; font-size: 13px; }
.acard.sug { background: linear-gradient(180deg, #f3c7a214, #f3c7a206); box-shadow: inset 0 0 0 1px #f3c7a22e; }
.acard.fl-gezondheid { background: linear-gradient(180deg, #dd06111c, #dd061108); box-shadow: inset 0 0 0 1px #ff4d5233; }
.acard.fl-gezondheid .ac-h > svg { stroke: #ffb0b3; }
.acard.fl-emotie .ac-h > svg { stroke: var(--warn); }
.acard.fl-collega .ac-h > svg { stroke: var(--info); }
.oi { display: inline-flex; align-items: center; gap: 8px; font-size: 12px; color: var(--t2); }
.after { display: flex; flex-direction: column; gap: 16px; padding: 4px 20px 20px; }
.wsteps { display: flex; flex-direction: column; gap: 10px; }
.wst { display: flex; gap: 12px; align-items: flex-start; font-size: 13px; opacity: 0.35; transition: opacity 0.5s; }
.wst b { font-weight: 500; }
.wst > i { width: 22px; height: 22px; border-radius: 50%; display: grid; place-items: center; background: #ffffff10; flex: none; transition: background 0.4s; }
.wst > i svg { width: 11px; height: 11px; stroke: var(--t3); fill: none; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.wst.on { opacity: 1; }
.wst.on > i { background: #8fd19e33; } .wst.on > i svg { stroke: var(--up); }
.call-r .cp .draft { padding: 16px; }

/* ===================================================================== responsive */
@media (max-width: 1360px) {
  .call { grid-template-columns: minmax(250px, 290px) minmax(0, 1fr) minmax(280px, 320px); }
}
@media (max-width: 1100px) {
  .call { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); height: auto; }
  .call .call-l { grid-column: 1 / -1; }
  .srcflow { grid-template-columns: 1fr; gap: 14px; } .sf-mid { display: none; }
}
@media (max-width: 860px) {
  .call { grid-template-columns: 1fr; }
  .call .pane { overflow: visible; }
  .call .call-m { min-height: 440px; }
  .tr { max-height: 380px; }
  .panel { padding: 18px; }
  .ph-pad { padding: 18px 18px 4px; }
  .mv { font-size: 32px; }
  .mrow { grid-template-columns: minmax(0, 1fr) auto; }
  .mrow .mq { grid-column: 1 / -1; grid-row: 2; }
  .peak-l { grid-template-columns: 1fr; }
  .eflow { grid-template-columns: 1fr; gap: 10px; } .ef-w { display: none; }
  .split { flex-direction: column; align-items: stretch; } .split .ring-wrap { align-self: center; }
  .stage { grid-template-columns: 76px minmax(0, 1fr); } .stage > .xs { grid-column: 2; }
  .pmsg { margin: 4px 18px 18px; }
  .task { padding: 14px; }
}

/* fixes after first Aside pass */
.tbl td.mono, .tbl td.num, .tbl td:first-child { white-space: nowrap; }
select.input.sm { padding-right: 30px; text-overflow: ellipsis; }
.grid.g-top { align-items: start; }
.call-r .draft-a { justify-content: flex-end; }
.call-r .draft-a > .grow { flex-basis: 100%; }
@media (max-width: 860px) {
  .page-head .actions { max-width: 100%; }
  .page-head .actions .seg { max-width: 100%; overflow-x: auto; scrollbar-width: none; }
}
@media (max-width: 860px) { .metric { min-height: 0; } }

/* Teamoverzicht: the eight dashboards */
.dash .panel-h h3 { display: flex; align-items: center; gap: 10px; }
.dash-n { width: 22px; height: 22px; border-radius: 7px; display: grid; place-items: center; font-size: 11.5px; background: #ffffff10; color: var(--t2); flex: none; }
.kv { display: flex; flex-direction: column; gap: 8px; margin-top: 14px; }
.fill { display: flex; flex-direction: column; gap: 10px; }
.fill-r { display: grid; grid-template-columns: 1fr 90px 40px; gap: 10px; align-items: center; }
.fill-r b { text-align: right; }
.vsplit { margin-top: 12px; }
.tbl tr.click { cursor: pointer; }
.ask-p { margin-bottom: 18px; }
.ask { display: flex; align-items: center; gap: 10px; }
.ask .input { flex: 1; height: 40px; }
.ask-a:empty { display: none; }
.ask-a { margin-top: 12px; padding: 12px 14px; border-radius: 14px; background: #0000002b; }
/* Engage: section 07 flow */
.e7 { display: grid; grid-template-columns: 1fr 120px 1.2fr 140px 1fr; align-items: center; gap: 8px; padding: 6px 0 4px; }
.e7-col { display: flex; flex-direction: column; gap: 8px; }
.e7-n { display: flex; flex-direction: column; gap: 2px; padding: 11px 13px; border-radius: 14px; background: #ffffff08; }
.e7-n b { font-weight: 500; font-size: 13px; }
.e7-n.bq { background: #9cc3e812; box-shadow: inset 0 0 0 1px #9cc3e82a; }
.e7-w { display: flex; flex-direction: column; align-items: center; gap: 6px; text-align: center; }
.e7-w i { width: 100%; height: 1px; background: linear-gradient(90deg, transparent, #ffffff40, transparent); position: relative; }
.e7-w i::after { content: ''; position: absolute; right: 8px; top: -3px; border: 3.5px solid transparent; border-left-color: #ffffff66; }
.pd { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.pd-o { display: flex; flex-direction: column; gap: 3px; text-align: left; border: 0; padding: 12px 14px; border-radius: 14px; background: #ffffff08; color: var(--t1); }
.pd-o b { font-weight: 500; }
.pd-o.on { box-shadow: inset 0 0 0 1px #ffffff40; background: #ffffff10; }
/* Kennis: three ways */
.ways { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.way { padding: 14px 16px; border-radius: 16px; background: #ffffff07; display: flex; flex-direction: column; gap: 4px; }
.way-i { display: flex; flex-direction: column; gap: 9px; margin-top: 10px; }
.testset { display: flex; align-items: center; gap: 10px; padding: 12px 0 0; margin-top: 10px; border-top: 1px solid #ffffff0a; }
.muted-row td { color: var(--t3); }
@media (max-width: 1100px) { .e7 { grid-template-columns: 1fr; } .e7-w i { width: 1px; height: 18px; } .pd, .ways { grid-template-columns: 1fr; } }
