/* Sales pages added after the first release (sales2-ui.js). Tokens come from app.css. */
.tasks { display: grid; gap: 4px; }
.task-row { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 8px 0; border-bottom: 1px solid var(--line); }
.task-row:last-child { border-bottom: 0; }
.task-main { display: flex; align-items: flex-start; gap: 10px; cursor: pointer; flex: 1; }
.task-main input { width: 20px; height: 20px; margin-top: 2px; flex: none; }
.attention li { padding: 6px 0; }

.cal-bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 6px 0 12px; flex-wrap: wrap; }
.cal-legend { display: flex; flex-wrap: wrap; gap: 8px 14px; margin-bottom: 10px; font-size: 13px; }
.cal-grid { border: 1px solid var(--line); border-radius: 12px; overflow: hidden; background: #fff; margin-bottom: 18px; }
.cal-head, .cal-days { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); }
.cal-head span { padding: 8px 10px; font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--muted, #5D6D7D); background: var(--soft, #F5F7FA); border-bottom: 1px solid var(--line); }
.cal-cell { display: flex; flex-direction: column; gap: 3px; min-height: 92px; padding: 6px 7px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); text-decoration: none; color: inherit; overflow: hidden; }
.cal-cell:nth-child(7n) { border-right: 0; }
.cal-cell.out { background: #FAFBFC; color: #9AA7B4; }
.cal-cell.today .n { background: var(--navy); color: #fff; border-radius: 999px; padding: 0 7px; }
.cal-cell.sel { outline: 2px solid var(--orange); outline-offset: -2px; }
.cal-cell:hover { background: var(--soft, #F5F7FA); }
.cal-cell .n { font-weight: 700; font-size: 13px; align-self: flex-start; }
.cal-cell .more { font-size: 11px; color: var(--muted, #5D6D7D); }
.cal-dot { display: block; font-size: 11.5px; line-height: 1.25; padding: 1px 6px; border-radius: 4px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.cal-legend .cal-dot { display: inline-block; }
.cal-act { background: #E6F0FB; color: #12457A; }
.cal-close { background: #E3F4E8; color: #17683A; }
.cal-next { background: #FFF1D6; color: #7A4B00; }
.cal-quote { background: #FDE8E1; color: #8A3412; }
.cal-renew { background: #EDE7F8; color: #4A2C8A; }
.cal-inv { background: #FCEDEC; color: #A3231C; }
.cal-list li { padding: 5px 0; border-left: 4px solid transparent; padding-left: 10px; margin-bottom: 4px; border-radius: 3px; }
.cal-list li.cal-act { border-left-color: #12457A; background: none; } .cal-list li.cal-close { border-left-color: #17683A; background: none; }
.cal-list li.cal-next { border-left-color: #B8791A; background: none; } .cal-list li.cal-quote { border-left-color: #C2410C; background: none; }
.cal-list li.cal-renew { border-left-color: #4A2C8A; background: none; } .cal-list li.cal-inv { border-left-color: #A3231C; background: none; }
.cal-list li.done a { text-decoration: line-through; color: var(--muted, #5D6D7D); }

.s2-funnel { display: grid; gap: 8px; }
.s2-row { display: grid; grid-template-columns: 150px minmax(80px, 1fr) 110px minmax(120px, auto); gap: 12px; align-items: center; font-size: 14px; }
.s2-bar { display: block; height: 12px; background: #E9EEF3; border-radius: 6px; overflow: hidden; }
.s2-bar i { display: block; height: 100%; background: var(--orange); border-radius: 6px; }
@media (max-width: 760px) {
  .cal-cell { min-height: 64px; padding: 4px; }
  .cal-cell .cal-dot { font-size: 0; height: 6px; padding: 0; width: 6px; border-radius: 50%; display: inline-block; }
  .s2-row { grid-template-columns: 1fr auto; }
  .s2-row .s2-bar { grid-column: 1 / -1; }
}
