/* Scoped to the marathon workflow; reuse CRM tokens and scrollbar rules. */
.marathon-activity-controls{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px;justify-content:flex-start}
.marathon-activity-controls button{white-space:nowrap}.marathon-activity-controls button:disabled{opacity:.6;cursor:default}
#crm-kanban .marathon-card,#marathon-detail{font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--text)}
#crm-kanban .marathon-card{padding:12px;background:var(--bg2);border:1px solid var(--border);border-radius:12px;cursor:pointer;text-align:left}
#crm-kanban .marathon-card:hover{border-color:var(--accent)}
#crm-kanban .marathon-card:focus-visible,#marathon-detail button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
#crm-kanban .marathon-card-top{display:flex;justify-content:space-between;gap:6px;font-size:10px;color:var(--text3)}
#crm-kanban .marathon-card-name{font-size:14px;font-weight:600;margin:8px 0;overflow-wrap:anywhere}
#crm-kanban .marathon-card-stage{font-size:11px;color:var(--accent)}
#crm-kanban .marathon-card-owner{margin-top:6px;color:var(--text2);font-size:11px}
#crm-kanban .marathon-card-task{margin-top:10px;padding-top:8px;border-top:1px solid var(--border);font-size:11px;line-height:1.5;color:var(--text2);overflow-wrap:anywhere}
#crm-kanban .marathon-card-task.overdue{color:var(--red)}
#crm-kanban .marathon-column-title{display:flex;align-items:center;justify-content:space-between;gap:8px;font:600 12px Inter,"Segoe UI",Arial,sans-serif;min-height:36px;width:100%}
#crm-kanban .marathon-column-title .crm-kanban-count{position:static;transform:none}
#marathon-detail{padding:8px 0;line-height:1.5}
#marathon-detail .marathon-detail-head,#marathon-detail .marathon-detail-links,#marathon-detail .marathon-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}
#marathon-detail .marathon-detail-head{justify-content:space-between;font-size:12px;color:var(--text2)}
#marathon-detail .marathon-stage{color:var(--accent);background:var(--bg3);border:1px solid var(--border);border-radius:8px;padding:6px 10px;font-weight:600}
#marathon-detail .marathon-milestones{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0}
#marathon-detail .marathon-milestones>div{border:1px solid var(--border);border-radius:10px;background:var(--bg2);padding:10px}
#marathon-detail .marathon-milestones strong,#marathon-detail .marathon-milestones span{display:block}
#marathon-detail .marathon-milestones span{font-size:11px;color:var(--text2);margin-top:4px}
#marathon-detail .marathon-milestones .accepted strong{color:var(--accent)}
#marathon-detail .marathon-info{border:1px solid var(--border);padding:10px;border-radius:10px;background:var(--bg2);margin-bottom:12px;font-size:12px;overflow-wrap:anywhere}
#marathon-detail h3{font:600 14px Inter,"Segoe UI",Arial,sans-serif;margin:18px 0 10px}
#marathon-detail .marathon-task{display:flex;gap:12px;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--border);font-size:12px}
#marathon-detail .marathon-task>div{min-width:0;overflow-wrap:anywhere}#marathon-detail .marathon-task>div>div{font-size:11px;color:var(--text2)}
#marathon-detail .marathon-help{font-size:11px;color:var(--text2);margin:12px 0}
#marathon-detail .marathon-form{background:var(--bg2);border:1px solid var(--border);border-radius:12px;padding:14px;margin-bottom:14px}
#marathon-detail .marathon-form label{display:flex;flex-direction:column;gap:5px;font-size:12px;margin-bottom:12px;color:var(--text2)}
#marathon-detail .marathon-form input,#marathon-detail .marathon-form select,#marathon-detail .marathon-form textarea{box-sizing:border-box;width:100%;padding:9px;border:1px solid var(--border);background:var(--bg3);border-radius:7px;color:var(--text);font:13px Inter,"Segoe UI",Arial,sans-serif;min-width:0}
#marathon-detail .marathon-form input:focus-visible,#marathon-detail .marathon-form select:focus-visible,#marathon-detail .marathon-form textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
#marathon-detail .marathon-form .marathon-check{flex-direction:row;align-items:center}#marathon-detail .marathon-check input{width:auto}
#marathon-detail .marathon-form-error{font-size:12px;color:var(--red);margin:8px 0}
#marathon-detail .btn{white-space:nowrap}
#modal.deal-mode.marathon-mode .modal{max-width:1180px}

/* Right-hand workspace: deal and chat never compete for a third column. */
#modal.deal-mode .crm-right-tabs{display:inline-flex;flex:0 0 auto;gap:2px;padding:3px;border:1px solid var(--border);border-radius:8px;background:var(--bg2);margin:0}
#modal.deal-mode .crm-right-tabs button{padding:5px 8px;border:0;border-radius:5px;background:transparent;color:var(--text2);font:600 10px/16px Inter,"Segoe UI",Arial,sans-serif;cursor:pointer;white-space:nowrap}
#modal.deal-mode .crm-right-tabs button.active{background:var(--accent);color:#fff}
#modal.deal-mode .crm-pipeline-step.active-marathon_support{background:var(--accent);color:#fff;opacity:1}
#modal.deal-mode .crm-right-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
#modal.deal-mode #crm-right-deal[hidden],#modal.deal-mode #crm-conversation-panel[hidden]{display:none}
#modal.deal-mode #crm-right-deal{display:grid;gap:10px}
#modal.deal-mode #crm-conversation-panel{min-width:0}
#modal.deal-mode #messenger-modal-root .messenger-thread{height:min(690px,calc(100dvh - 190px));min-height:380px;display:flex;flex-direction:column;background:var(--bg2);border:1px solid var(--border);border-radius:11px;overflow:hidden}
#modal.deal-mode #messenger-modal-root .messenger-messages{flex:1;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-gutter:stable;scrollbar-color:rgba(148,163,184,.42) transparent}
#modal.deal-mode #messenger-modal-root .messenger-messages::-webkit-scrollbar{width:8px;height:8px}
#modal.deal-mode #messenger-modal-root .messenger-messages::-webkit-scrollbar-thumb{background:rgba(148,163,184,.42);border-radius:999px}
#modal.deal-mode #messenger-modal-root .messenger-messages:hover::-webkit-scrollbar-thumb{background:rgba(148,163,184,.60)}
#modal.deal-mode #messenger-modal-root .messenger-messages::-webkit-scrollbar-thumb:hover{background:rgba(203,213,225,.76)}
#modal.deal-mode #messenger-modal-root .messenger-thread-header{padding:10px;flex-wrap:wrap;gap:8px;border-bottom:1px solid var(--border)}
#modal.deal-mode #messenger-modal-root .messenger-thread-main{min-width:0;flex:1 1 220px}
#modal.deal-mode #messenger-modal-root .messenger-thread-actions{width:100%;justify-content:flex-start;gap:6px}
#modal.deal-mode #messenger-modal-root .messenger-homework{margin-right:auto;display:flex;align-items:center;gap:10px;flex-wrap:wrap;font:12px Inter,"Segoe UI",Arial,sans-serif}
#modal.deal-mode #messenger-modal-root .messenger-thread-title{font-size:13px}
#modal.deal-mode #messenger-modal-root .messenger-composer{flex:none;background:var(--bg2);padding:10px}
#modal.deal-mode #messenger-modal-root .messenger-composer-field{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;padding:7px;border:1px solid var(--border);border-radius:12px;background:var(--bg3)}
#modal.deal-mode #messenger-modal-root .messenger-composer textarea{min-height:48px;height:48px;padding:7px 4px;background:transparent;border:0;border-radius:0;font:12px Inter,"Segoe UI",Arial,sans-serif}
#modal.deal-mode #messenger-modal-root .messenger-composer-toolbar{position:static;transform:none;align-self:center}
#modal.deal-mode #messenger-modal-root .messenger-message-bubble{background:var(--bg3);border-color:var(--border);color:var(--text)}
#modal.deal-mode #messenger-modal-root .messenger-message.out .messenger-message-bubble{background:color-mix(in srgb,var(--accent) 14%,var(--bg2))}
#modal.deal-mode #messenger-modal-root .messenger-icon-btn{background:var(--bg3);border-color:var(--border);color:var(--text)}
#modal.deal-mode #messenger-modal-root .messenger-icon-btn.primary{background:var(--accent);color:#fff}
#modal.deal-mode #messenger-modal-root .messenger-avatar{flex-shrink:0}
#modal.deal-mode #messenger-modal-root .messenger-client-channel-tabs{display:inline-flex;gap:4px;flex-wrap:wrap;margin:0}
#modal.deal-mode #messenger-modal-root .messenger-client-channel-tab{min-height:28px;padding:4px 8px;background:var(--bg3);border-color:var(--border);color:var(--text2);font:600 10px Inter,"Segoe UI",Arial,sans-serif}
#modal.deal-mode #messenger-modal-root .messenger-client-channel-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}
#modal.deal-mode #messenger-modal-root .messenger-day-divider span{background:var(--bg3);border-color:var(--border);color:var(--text2);box-shadow:none}
#modal.deal-mode #messenger-modal-root .messenger-homework-choice form,#modal.deal-mode #messenger-modal-root .messenger-homework-choice select{background:var(--bg3);color:var(--text);border-color:var(--border)}
#modal.deal-mode .crm-client-mobile-toggle{display:none}
@media(max-width:760px){
  #modal.deal-mode.open .modal{width:calc(100% - 12px);max-width:calc(100% - 12px);min-width:0}
  #modal.deal-mode .crm-deal-shell{grid-template-columns:minmax(0,1fr)}
  #modal.deal-mode .crm-deal-left>.crm-deal-card{display:none}
  #modal.deal-mode .crm-deal-left.crm-client-mobile-open>.crm-deal-card{display:block}
  #modal.deal-mode .crm-client-mobile-toggle{display:block;width:100%;text-align:left}
  #modal.deal-mode.open .crm-client-key{flex:0 0 auto;width:auto;min-width:0}
  #modal.deal-mode.open .crm-client-val{width:100%;min-width:0}
  #modal.deal-mode .crm-right-tabs{position:sticky;top:58px;z-index:2}
  #modal.deal-mode #messenger-modal-root .messenger-thread{height:65dvh;min-height:350px}
  #modal.deal-mode #messenger-modal-root .messenger-thread-main{flex:0 1 auto;min-width:0;width:100%}
  #modal.deal-mode #messenger-modal-root .messenger-thread-header{align-items:stretch}
}
#modal.deal-mode .crm-deal-left .crm-header-title-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px!important;align-items:start!important}
#modal.deal-mode .crm-client-heading-name{min-width:0;display:flex;flex-direction:column;gap:6px;grid-column:1;grid-row:1}
#modal.deal-mode .crm-client-heading-name .crm-client-trigger{min-width:0;max-width:100%;text-align:left}
#modal.deal-mode .crm-client-heading-name .crm-deal-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#modal.deal-mode .crm-client-heading-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
#modal.deal-mode .crm-deal-left .crm-right-tabs{grid-column:2;grid-row:1;align-self:start;position:static;white-space:nowrap}
#modal.deal-mode .crm-client-actions-inline{grid-column:1/-1}
@media(max-width:760px){#modal.deal-mode .crm-deal-left>.crm-deal-card{display:block}#modal.deal-mode .crm-deal-left:not(.crm-client-mobile-open)>.crm-deal-card>:not(.crm-card-title-row){display:none}}
#marathon-detail .btn{font:600 12px Inter,"Segoe UI",Arial,sans-serif}
@media(max-width:620px){#marathon-detail .marathon-milestones{grid-template-columns:1fr}#marathon-detail .marathon-task{align-items:flex-start;flex-direction:column}}
#page-messenger .messenger-homework, #messenger-modal .messenger-homework { display:flex;align-items:center;gap:10px;flex-wrap:wrap;font:12px Inter,"Segoe UI",Arial,sans-serif;position:relative; }
.messenger-homework label { display:flex;gap:5px;align-items:center;white-space:nowrap; }
.messenger-homework input { accent-color:#967cff; }
.messenger-homework-choice:empty { display:none; }
.messenger-homework-choice form { display:flex;flex-wrap:wrap;gap:8px;padding:10px;border:1px solid var(--border,#d7dee8);border-radius:8px;background:var(--surface,#141821); }
.messenger-homework-choice select { max-width:230px;min-height:30px;padding:4px 7px;background:var(--surface,#141821);color:var(--text,#f2f5fa);border:1px solid var(--border,#d7dee8);border-radius:6px;font:inherit; }
#page-messenger .messenger-thread-header:has(.messenger-homework), #messenger-modal .messenger-thread-header:has(.messenger-homework) { flex-wrap:wrap; }
#page-messenger .messenger-thread-header:has(.messenger-homework) .messenger-thread-main, #messenger-modal .messenger-thread-header:has(.messenger-homework) .messenger-thread-main { flex:1 1 240px;min-width:min(240px,100%); }
.messenger-homework-choice { flex-basis:100%; }
