/* Secondary work stays legible beside the conversation: paper, lists, evidence.
   Companies and Memory share the empty state below, so every "nothing here
   yet" in the window is drawn in one size, not two. */
.pal-experience :is(#view-home,#view-people,#view-goals,#view-routine) {
  background:var(--pal-paper); color:var(--pal-ink); min-width:0;
}
.pal-experience :is(#view-home,#view-people,#view-goals,#view-routine) > .head {
  padding:26px 38px 20px; min-height:90px; height:auto; gap:20px;
  border:0; flex-wrap:wrap; align-items:center;
}
.pal-experience :is(#view-home,#view-people,#view-goals,#view-routine) > .head h1 {
  font-size:25px; line-height:1.3; letter-spacing:-.04em; font-weight:650;
}
.pal-experience :is(#view-home,#view-people,#view-goals,#view-routine) > .head .controls {
  height:auto; min-height:32px; flex-wrap:wrap; gap:6px; margin-left:auto;
}
.pal-experience :is(#home-list,#goal-list,#routine-list) {
  width:100%; max-width:1240px; align-self:center; padding:4px 38px 44px;
}
.pal-experience :is(#view-home,#view-people,#view-goals,#view-routine) .card {
  background:var(--pal-paper); border:1px solid var(--pal-line); box-shadow:none;
  border-radius:12px;
}
.pal-experience :is(#view-home,#view-people,#view-goals,#view-routine,#view-profiles,#view-memory) .empty {
  margin:10vh auto 0; padding:24px; max-width:480px;
}
.pal-experience :is(#view-home,#view-people,#view-goals,#view-routine,#view-profiles,#view-memory) .empty-glyph {
  color:var(--pal-muted); background:var(--pal-soft); width:42px; height:42px; border-radius:13px;
}
.pal-experience :is(#view-home,#view-people,#view-goals,#view-routine,#view-profiles,#view-memory) .empty > p:first-of-type {
  font-size:20px; line-height:1.35; font-weight:600; letter-spacing:-.025em;
}
.pal-experience :is(#view-home,#view-people,#view-goals,#view-routine,#view-profiles,#view-memory) .empty .muted {
  color:var(--pal-muted); font-size:14px; line-height:1.6;
}
.pal-experience #home-list .section-label {text-transform:none;letter-spacing:0;font-size:14px;font-weight:600;color:var(--pal-ink)}
.pal-experience #home-list .section-label-note {font-size:12px;font-weight:400;color:var(--pal-muted)}
.pal-experience #home-list .scoreboard {border:0;border-radius:0;padding:18px 0 24px;border-bottom:1px solid var(--pal-line);margin-bottom:28px;gap:20px 0}
.pal-experience #home-list .scoreboard-tile {padding:0 18px;box-shadow:none;border-left:1px solid var(--pal-line)}
.pal-experience #home-list .scoreboard-tile:first-child {padding-left:0;border:0}
.pal-experience #home-list .scoreboard-value {font-size:30px;font-weight:580;letter-spacing:-.04em;color:var(--pal-ink)}
.pal-experience #home-list .scoreboard-label {font-size:13px;color:var(--pal-muted);font-weight:400}
.pal-experience #home-list .scoreboard-note {padding:3px 0;background:none;color:var(--pal-muted)}
.pal-experience #home-list .chart-card {padding:20px 0 12px;border:0;border-bottom:1px solid var(--pal-line);border-radius:0}
.pal-experience #home-list .chart-bar {background:var(--pal-ink)}
.pal-experience #home-list .chart-bar.is-zero {background:var(--pal-line)}
.pal-experience #home-list .funnel-bars {padding:12px 18px;margin-bottom:30px;border:0;background:var(--pal-soft)}
.pal-experience #home-list .fbar-row {padding:10px 0;min-height:40px}
.pal-experience #home-list .fbar-fill {background:var(--pal-ink)}
.pal-experience #home-list .fbar-track {background:var(--pal-line);box-shadow:none;height:8px}
.pal-experience #home-list .fbar-label {font-size:13px;color:var(--pal-muted)}
.pal-experience #home-list .fbar-row:focus-visible {outline:2px solid var(--pal-ink);outline-offset:4px;border-radius:4px}
.pal-experience #home-list .upcoming-card {border:0;border-radius:0;padding:6px 0 20px;border-bottom:1px solid var(--pal-line)}
.pal-experience #home-list .fperson {flex-wrap:wrap;row-gap:8px}
.pal-experience #home-list .heat-card {background:none;box-shadow:none;border:0;padding:12px 0 20px}
.pal-experience #home-list .heat-cell[data-level="0"] {background:var(--pal-line)}
.pal-experience #view-people .head-text {flex:1 0 auto}
.pal-experience #view-people > .filters {padding:0 38px 16px}
.pal-experience #view-people .search-wrap {max-width:460px;flex:1}
.pal-experience #view-people .search {background:var(--pal-soft);border:1px solid transparent;box-shadow:none;min-height:38px;border-radius:9px;font-size:14px}
.pal-experience #view-people .search:focus {border-color:var(--pal-focus);background:var(--pal-paper)}
.pal-experience #contact-list {padding:0 38px 16px}
.pal-experience #contact-list .dt-wrap {border-radius:0;box-shadow:none;background:var(--pal-paper);border-top:1px solid var(--pal-line)}
.pal-experience #contact-list .dt {font-size:14px;min-width:680px}
/* A window under 1240px gave a long name and a long address 240px each, and
   Status, the column that says whether someone was reached, was cut mid-pill
   ("not conta") at 1100. Tighter ceilings keep it on screen; the full text
   stays in each cell's tooltip, and the table still scrolls when it must. */
@media(max-width:1240px) {
  .pal-experience #contact-list :is(.dt-name, .dt-email .dt-link) {max-width:180px}
}
@media(max-width:1000px) {
  .pal-experience #contact-list :is(.dt-name, .dt-email .dt-link) {max-width:150px}
}
.pal-experience #contact-list .dt th {background:var(--pal-paper);color:var(--pal-muted);font-size:12px;font-weight:500;text-transform:none;letter-spacing:0;border-color:var(--pal-line)}
.pal-experience #contact-list .dt tbody td {padding-top:12px;padding-bottom:12px;border-color:var(--pal-line);color:var(--pal-ink)}
.pal-experience #contact-list .dt-avatar {background:var(--pal-soft);color:var(--pal-muted);width:28px;height:28px}
.pal-experience #contact-list .dt-tag {background:none;padding:0;color:var(--pal-muted);border-radius:0;font-size:inherit}
.pal-experience #contact-list .dt-link {color:var(--pal-muted)}
.pal-experience #contact-list .dt-link:hover {color:var(--pal-ink)}
.pal-experience #contact-list .dt tbody tr.is-selected {background:var(--pal-soft)}
.pal-experience #contact-list .dt .dt-pick input {accent-color:var(--pal-ink)}
.pal-experience #people-bulk {margin:0 38px 12px;padding:10px 14px;border:1px solid var(--pal-line);box-shadow:none;background:var(--pal-soft);border-radius:10px;flex-wrap:wrap;gap:6px}
.pal-experience #people-pager {padding:8px 38px 22px;color:var(--pal-muted);font-size:12px}
.pal-experience .pal-people-filter {width:300px;max-height:min(600px,calc(100vh - 100px));overflow-y:auto}
.pal-experience .pal-filter-section {border-bottom:1px solid var(--pal-line);padding:3px 0}
.pal-experience .pal-filter-section summary {display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px;cursor:pointer;font-size:14px;list-style:none;border-radius:6px;color:var(--pal-ink)}
.pal-experience .pal-filter-section summary::-webkit-details-marker {display:none}
.pal-experience .pal-filter-section summary::after {content:'›';font-size:18px;color:var(--pal-muted)}
.pal-experience .pal-filter-section[open] summary::after {transform:rotate(90deg)}
.pal-experience .pal-filter-section summary:hover {background:var(--pal-soft)}
.pal-experience .pal-filter-value {margin-left:auto;color:var(--pal-muted);font-size:12px}
.pal-experience .pal-filter-section .popover-item {padding-left:18px}
/* Clear filters sits under the sections: their own bottom rule already
   separates it, so the generic .popover-sep drew a second line 4px under the
   first, and its unused tick gutter pushed the words 20px right of the
   section names above. */
.pal-experience .pal-people-filter > .popover-sep {display:none}
.pal-experience .pal-people-filter > .popover-item {margin-top:3px;padding:11px 12px;font-size:14px}
.pal-experience .pal-people-filter > .popover-item .ic {display:none}
.pal-experience .pal-csv-file {border:1px dashed var(--pal-line);border-radius:10px;background:var(--pal-soft);padding:12px;margin:0 0 16px;width:100%;color:var(--pal-muted);font-size:13px}
.pal-experience .pal-csv-file::file-selector-button {border:1px solid var(--pal-line);border-radius:7px;background:var(--pal-paper);color:var(--pal-ink);padding:7px 10px;font:inherit;margin-right:12px;cursor:pointer}
.pal-experience #goal-list .pal-goal-row {padding:22px 0;gap:10px 20px;border-color:var(--pal-line)}
.pal-experience #goal-list .pal-goal-title {font-size:16px;line-height:1.4;letter-spacing:-.015em;font-weight:600}
.pal-experience #goal-list .pal-goal-row > .pal-words {font-size:14px;line-height:1.55}
.pal-experience #goal-list .pal-empty {padding:38px 0;font-size:15px;max-width:500px;line-height:1.6}
.pal-experience #routine-list .routine-row {border:0;border-bottom:1px solid var(--pal-line);border-radius:0;padding:22px 0;margin:0;opacity:1}
.pal-experience #routine-list .card-top {display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px 14px;align-items:start}
.pal-experience #routine-list .routine-mark {width:28px;height:28px;background:var(--pal-soft);border-radius:8px;color:var(--pal-muted)}
.pal-experience #routine-list .card-title {font-size:16px;line-height:1.5;color:var(--pal-ink);white-space:normal}
.pal-experience #routine-list .row-line {font-size:13px;line-height:1.5;color:var(--pal-muted);gap:7px;margin-top:7px}
.pal-experience #routine-list .row-chip {padding:0;background:none;border-radius:0;color:var(--pal-muted);font-size:12px}
.pal-experience #routine-list .row-time {background:none;padding:0;font-size:12px}
.pal-experience #routine-list .row-when {margin-left:8px;gap:12px}
.pal-experience #routine-list .card-actions {grid-column:2;justify-content:flex-start;flex-wrap:wrap;gap:4px;margin-top:7px}
.pal-experience #routine-list .card-actions .btn {padding:6px 9px;font-size:12px}
@media(max-width:1000px){
  .pal-experience :is(#view-home,#view-people,#view-goals,#view-routine) > .head {padding:22px 24px 18px;gap:12px}
  .pal-experience :is(#home-list,#goal-list,#routine-list) {padding-left:24px;padding-right:24px}
  .pal-experience #view-people > .head .controls {width:100%;margin-left:0;justify-content:flex-start}
  .pal-experience #view-people > .filters {padding-left:24px;padding-right:24px}
  .pal-experience #contact-list {padding-left:24px;padding-right:24px}
  .pal-experience #people-bulk {margin-left:24px;margin-right:24px}
  .pal-experience #people-pager {padding-left:24px;padding-right:24px}
  .pal-experience #home-list .scoreboard {grid-template-columns:repeat(3,minmax(0,1fr));row-gap:22px}
  .pal-experience #home-list .scoreboard-tile {padding:0 12px;border:0}
  .pal-experience #home-list .scoreboard-tile:nth-child(3n+1) {padding-left:0}
  .pal-experience #routine-list .row-when {width:100%;margin-left:0}
}
@media(max-width:650px){
  .pal-experience #view-people > .head .controls {gap:2px}
  .pal-experience #view-people > .head .controls .btn {padding:7px 8px;font-size:12px}
  .pal-experience #home-list .scoreboard {grid-template-columns:repeat(2,minmax(0,1fr))}
  .pal-experience #home-list .scoreboard-tile {padding-left:0}
  .pal-experience #goal-list .pal-goal-row {grid-template-columns:1fr auto}
}
.pal-experience #home-list .fperson-row {flex-wrap:wrap;row-gap:8px}
.pal-experience #home-list .fperson-detail {white-space:normal;overflow-wrap:anywhere}
@media(max-width:1000px){
  .pal-experience #home-list .fperson-when {margin-left:0}
  .pal-experience #home-list .fperson-row .fperson-who {max-width:100%}
}
