.crm-analytics{--ca-indigo:#7281c7;--ca-indigo-soft:#f0f2fb;--ca-green:#32a582;--ca-rose:#d68391;font-size:13px;color:var(--text)}.ca-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:21px}.ca-eyebrow{font-size:11px;font-weight:650;letter-spacing:1.5px;color:#7b85b5;display:block;margin-bottom:6px}.ca-heading h1{font-size:27px;font-weight:750;letter-spacing:-.7px}.ca-heading p{font-size:12px;color:var(--muted);margin-top:7px}.ca-controls{display:flex;align-items:center;gap:8px}.ca-controls>label{border:1px solid var(--line);background:var(--surface);border-radius:8px;display:flex;align-items:center;gap:7px;padding:0 10px;color:#8a96ac;white-space:nowrap;font-size:11px}.ca-controls select{border:0;font-size:12px;max-width:145px;padding:10px 4px;box-shadow:none!important;background:transparent}.ca-context{gap:23px;padding:14px 2px 20px;font-size:11px;color:var(--muted)}.ca-context,.ca-context>span{display:flex;align-items:center}.ca-context>span{gap:6px}.ca-context b{font-size:12px;color:var(--text);font-weight:600}.ca-live-dot{width:6px;height:6px;border-radius:50%;background:#9dadc9;display:inline-block;margin-left:3px}.ca-context>button{margin-right:auto;display:flex;align-items:center;gap:6px;font-size:11px;color:#8590ac;padding:0}.ca-method{background:var(--surface);border:1px solid var(--line);padding:17px 20px;font-size:12px;line-height:2.1;color:var(--muted);border-radius:10px;margin-bottom:20px}.ca-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}.ca-panel{border:1px solid var(--line);border-radius:12px;background:var(--surface);overflow:hidden;min-width:0;display:flex;flex-direction:column;height:100%;box-shadow:0 4px 18px #29334b03}.ca-panel>header{padding:22px 23px 18px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.ca-panel>header>div:first-child{min-width:0}.ca-panel-icon{width:30px;height:30px;display:grid;place-items:center;float:right;margin-left:10px;border-radius:8px;background:#eef1fa;color:#8592c4}.ca-panel-icon.ca-violet{background:#f3eff9;color:#a190bc}.ca-panel-icon.ca-emerald{background:#edf7f2;color:#75aa95}.ca-panel-icon.ca-amber{background:#fbf5e9;color:#c1a06d}.ca-panel h2{font-size:14px;line-height:1.9;font-weight:650}.ca-panel header p{font-size:11px;color:var(--muted);margin-top:9px;clear:both}.ca-toggle{border:1px solid var(--line);padding:3px;border-radius:7px;display:flex;flex-shrink:0}.ca-toggle button{font-size:11px;padding:4px 10px;color:#8f9ab0;border-radius:4px;white-space:nowrap}.ca-toggle button.active{color:#6b78b2;background:var(--ca-indigo-soft)}.ca-panel>footer{padding:14px 23px;border-top:1px solid var(--line);font-size:11px;color:var(--muted);display:flex;align-items:center;gap:6px;line-height:1.9;margin-top:auto;min-height:49px}.ca-stage-chart{padding:7px 20px 20px;display:flex;flex-direction:column;gap:6px}.ca-stage-row{display:flex;align-items:center;gap:11px;width:100%;text-align:right;padding:8px 4px;border-radius:6px;min-height:31px}.ca-stage-row:hover{background:var(--hover)}.ca-stage-label{width:108px;display:flex;align-items:center;gap:6px;flex-shrink:0;font-size:11px;color:#8c96a9;white-space:nowrap}.ca-stage-label i{display:block;width:6px;height:6px;border-radius:2px;opacity:.8}.ca-stage-track{flex:1;display:block;height:10px;background:var(--bg);border-radius:3px;overflow:hidden;min-width:10px}.ca-stage-track i{display:block;height:100%;border-radius:3px;opacity:.8;transition:width .24s}.ca-stage-value{width:85px;font-size:11px;color:#7f8ca3;flex-shrink:0;text-align:left;white-space:nowrap}.ca-stage-value small{font-size:11px;color:#a6aebb;margin-right:4px}.ca-stage-row>svg{color:#b1b8ca;width:12px}.ca-legend{gap:9px;flex-shrink:0;padding-top:8px}.ca-legend,.ca-legend>span{display:flex;align-items:center}.ca-legend>span{font-size:11px;gap:4px;color:#95a0b2}.ca-legend i{width:7px;height:7px;border-radius:2px;background:#9aa5d5}.ca-legend i.ca-green{background:#78b9a4}.ca-team-chart{padding:0 24px 21px;display:flex;flex-direction:column;gap:18px;max-height:490px;overflow-y:auto}.ca-person-name{display:flex;align-items:center;justify-content:space-between;font-size:12px;margin-bottom:6px;color:#7b8aa0}.ca-person-name small{font-size:11px;color:#a5afbe}.ca-person-bar{display:flex;align-items:center;gap:9px;width:100%;padding:3px 0;text-align:right;border-radius:3px}.ca-team-track{flex:1;background:var(--bg);height:7px;border-radius:3px;display:block;overflow:hidden}.ca-team-track i{display:block;height:100%;background:#9aa5d5;border-radius:3px}.ca-person-bar.ca-won-bar i{background:#7ebba7}.ca-person-bar b{font-size:11px;min-width:75px;text-align:left;font-weight:500;color:#9ca8bc}.ca-person-bar small{font-size:11px;color:#a9b2c1;width:31px;text-align:left}.ca-person-bar:hover{background:var(--hover)}.ca-person-bar:hover b{color:var(--text)}.ca-more{padding:0;display:flex;align-items:center;gap:6px;font-size:11px;color:#8796b7}.ca-more:hover{color:var(--text)}.ca-panel-count,.ca-unit{font-size:11px;white-space:nowrap;color:#9aa6b9;background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:4px 8px;flex-shrink:0}.ca-outcomes{display:flex;align-items:center;justify-content:center;gap:20px;padding:0 24px 17px}.ca-donut-wrap{position:relative;flex-shrink:0;width:158px;height:158px}.ca-donut{display:block;width:158px;height:158px;overflow:visible}.ca-donut circle[role=button]{cursor:pointer;transition:opacity .14s,stroke-width .14s}.ca-donut circle[role=button]:focus,.ca-donut circle[role=button]:hover{stroke-width:17;outline:none;opacity:.8}.ca-donut-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;pointer-events:none}.ca-donut-label b{font-size:27px;font-weight:700;color:#819292;line-height:1.8}.ca-donut-label span{font-size:11px;color:var(--muted)}.ca-outcome-legend{min-width:0;flex:1;max-width:240px}.ca-outcome-legend button{display:flex;align-items:center;gap:8px;width:100%;text-align:right;padding:10px 0}.ca-outcome-legend button>i{width:7px;height:7px;border-radius:2px;background:#7ebba7;flex-shrink:0}.ca-outcome-legend button>i.ca-rose{background:#d698a3}.ca-outcome-legend button>span{font-size:12px;color:#8898a9;flex:1}.ca-outcome-legend button small{display:block;font-size:11px;color:#a3afbf;margin-top:4px}.ca-outcome-legend button b{font-size:15px;font-weight:600;color:#8f9bae}.ca-outcome-legend button svg{color:#b1bace}.ca-outcome-legend button:hover>span{color:var(--text)}.ca-outcome-legend p{font-size:11px;color:#a4adba;margin-top:8px;line-height:1.9}.ca-reasons{padding:17px 23px 20px;border-top:1px solid var(--line)}.ca-subtitle{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:10px}.ca-subtitle h3{font-size:12px;color:#8b96ac;font-weight:500}.ca-subtitle>span{font-size:11px;color:#a6afbf}.ca-reason-row{display:flex;align-items:center;gap:10px;width:100%;padding:7px 0;text-align:right}.ca-reason-name{max-width:48%;width:150px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:11px;color:#a1a8ba}.ca-reason-track{height:5px;background:var(--bg);flex:1;border-radius:3px;overflow:hidden}.ca-reason-track>i{height:100%;display:block;background:#d6a2ac;border-radius:3px}.ca-reason-row>b{font-size:11px;color:#a6aebe;width:19px;text-align:left;font-weight:500}.ca-reason-row>svg{color:#b1b8c7}.ca-reason-row:hover .ca-reason-name{color:var(--text)}.ca-reasons .ca-more{margin-top:10px}.ca-inline-empty{font-size:11px;color:#a6adbb;line-height:1.9;padding:7px 0}.ca-source-chart{padding:0 24px 18px;max-height:520px;overflow-y:auto}.ca-source-row{display:flex;align-items:center;gap:12px;width:100%;text-align:right;padding:15px 0;border-bottom:1px solid var(--line)}.ca-source-row:last-child{border-bottom:0}.ca-source-rank{display:grid;place-items:center;min-width:29px;height:29px;border-radius:7px;background:#f5f6fa;border:1px solid #eceff6;color:#a9b2c4;font-size:11px}.ca-source-row>div{flex:1;min-width:0}.ca-source-name{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;color:#8c97ab}.ca-source-name b{font-size:13px;font-weight:550;color:#8e9cb4}.ca-source-name b small{font-size:11px;color:#b1b9c5;font-weight:400}.ca-source-track{display:block;background:var(--bg);height:6px;border-radius:3px;margin:9px 0 7px;overflow:hidden}.ca-source-track>i{display:block;height:100%;border-radius:3px;background:#9ca8d6}.ca-source-row>div>small{font-size:11px;color:#a4aec1}.ca-source-row em{font-style:normal;margin:0 7px;color:#c6cbd5}.ca-source-row>svg{color:#b0bbcb}.ca-source-row:hover .ca-source-name{color:var(--text)}.ca-month-chart{height:216px;display:flex;align-items:stretch;gap:12px;padding:30px 25px 0;position:relative;direction:rtl}.ca-month-guides{position:absolute;top:29px;bottom:49px;left:25px;right:25px;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none}.ca-month-guides i{border-top:1px dashed var(--line);width:100%}.ca-month-column{flex:1;min-width:0;padding:0;z-index:1}.ca-month-bar-area,.ca-month-column{display:flex;align-items:center;flex-direction:column;position:relative}.ca-month-bar-area{height:135px;width:100%;justify-content:flex-end;padding:0 9px}.ca-month-bar-area>i{display:block;width:100%;max-width:42px;background:linear-gradient(0deg,#8e9dd5,#aeb9e0);border-radius:5px 5px 0 0;flex-shrink:0;transition:filter .2s}.ca-month-bar-area>b{font-size:11px;font-weight:500;color:#93a0b9;white-space:nowrap;padding-bottom:5px}.ca-month-column:hover i{filter:brightness(.9)}.ca-month-column:hover b{color:var(--text)}.ca-month-label{font-size:11px;color:#8f9db5;padding-top:11px;line-height:1.8}.ca-month-label small{display:block;font-size:11px;color:#acb5c5}.ca-date-integrity{display:flex;align-items:flex-start;gap:7px;flex-wrap:wrap;padding:16px 23px 20px;font-size:11px;line-height:1.9;color:#a0abc0}.ca-date-integrity svg{margin-top:3px}.ca-date-integrity>span{flex:1;min-width:180px}.ca-ticket-chart{padding:2px 23px 21px}.ca-ticket-row{display:flex;align-items:center;gap:18px;text-align:right;width:100%;padding:16px 0;border-bottom:1px solid var(--line)}.ca-ticket-row:last-child{border:0}.ca-ticket-number{font-size:27px;width:42px;flex-shrink:0;text-align:center;font-weight:650}.ca-ticket-row>div{flex:1}.ca-ticket-name{font-size:13px;color:#8997af;display:flex;align-items:center;justify-content:space-between}.ca-ticket-name>svg{color:#b0bbce}.ca-ticket-row small{font-size:11px;color:#a3aec1;display:flex;gap:8px;align-items:center;margin-top:4px}.ca-ticket-row small>b{font-weight:500;color:#c58992;background:#fbf0f1;border-radius:4px;padding:1px 5px}.ca-ticket-track{display:block;overflow:hidden;background:var(--bg);height:6px;border-radius:3px;margin-top:10px}.ca-ticket-track>i{display:block;height:100%;border-radius:3px;opacity:.7}.ca-ticket-row:hover .ca-ticket-name{color:var(--text)}.ca-empty{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:13px;min-height:240px;flex:1;padding:30px;color:#b5bfd0;text-align:center}.ca-empty p{font-size:12px;color:#a3aec0}.ca-detail-backdrop{position:fixed;inset:0;z-index:100;background:#1b254555;backdrop-filter:blur(3px);display:flex;justify-content:center;align-items:center;padding:22px}.ca-detail{width:650px;max-width:100%;max-height:85dvh;background:var(--surface);border:1px solid var(--line);border-radius:15px;box-shadow:0 20px 90px #17233e30;display:flex;flex-direction:column;overflow:hidden}.ca-detail>header{display:flex;align-items:flex-start;gap:20px;justify-content:space-between;padding:25px;border-bottom:1px solid var(--line)}.ca-detail>header>div{min-width:0}.ca-detail header>div>span{font-size:11px;color:#97a4c0;display:block;margin-bottom:7px}.ca-detail header h2{font-size:17px;color:var(--text);line-height:1.8}.ca-detail header p{font-size:11px;color:var(--muted);margin-top:6px}.ca-detail header>button{color:var(--muted);padding:4px}.ca-detail-summary{display:flex;align-items:center;justify-content:space-between;padding:14px 25px;background:var(--bg);font-size:12px;color:#9aa6ba}.ca-detail-summary b{color:#8795b1;font-size:13px;font-weight:550}.ca-detail-list{overflow-y:auto;flex:1;min-height:100px}.ca-detail-list>button{width:100%;display:flex;align-items:center;gap:15px;padding:20px 25px;border-bottom:1px solid var(--line);text-align:right}.ca-detail-list>button:hover{background:var(--hover)}.ca-detail-list>button>span{flex:1;min-width:0}.ca-detail-list b{font-size:13px;color:var(--text);font-weight:550}.ca-detail-list small{font-size:11px;color:var(--muted);display:block;margin-top:6px;line-height:1.8}.ca-detail-list strong{font-size:12px;font-weight:500;color:#8d9ab3;text-align:left;white-space:nowrap}.ca-detail-list>button>svg{color:#a0aec4}.ca-detail>footer{padding:16px 25px;text-align:left}.ca-detail footer>button{font-size:12px;border:1px solid var(--line);padding:8px 16px;border-radius:7px;color:#8a98b0}[data-theme=dark] .crm-analytics{--ca-indigo-soft:#2e3953}[data-theme=dark] .ca-panel-icon{background:#303c58}[data-theme=dark] .ca-panel-icon.ca-emerald{background:#2c423d}[data-theme=dark] .ca-panel-icon.ca-violet{background:#3b344d}[data-theme=dark] .ca-panel-icon.ca-amber{background:#443c2f}[data-theme=dark] .ca-source-rank{background:#30394d;border-color:#424c61}[data-theme=dark] .ca-ticket-row small>b{background:#453440}.ca-month-column:focus-visible,.ca-person-bar:focus-visible,.ca-reason-row:focus-visible,.ca-source-row:focus-visible,.ca-stage-row:focus-visible,.ca-ticket-row:focus-visible{outline:2px solid #8d9bca;outline-offset:2px}@media(max-width:1250px){.ca-heading{align-items:flex-start}.ca-controls{flex-wrap:wrap;justify-content:flex-end}.ca-heading h1{font-size:24px}.ca-panel>header{padding:19px 19px 16px;gap:10px}.ca-panel h2{font-size:13px}.ca-stage-chart{padding:4px 15px 19px}.ca-stage-row{gap:7px}.ca-stage-label{width:100px}.ca-stage-value{width:78px}.ca-stage-row>svg{display:none}.ca-outcomes{gap:12px;padding-left:18px;padding-right:18px}.ca-donut,.ca-donut-wrap{width:140px;height:140px}.ca-source-chart,.ca-team-chart{padding-left:19px;padding-right:19px}.ca-legend{gap:6px}.ca-person-bar b{min-width:66px}.ca-person-bar{gap:5px}.ca-month-chart{gap:6px;padding-left:15px;padding-right:15px}.ca-month-bar-area{padding:0 6px}.ca-month-bar-area>b{font-size:11px}}@media(max-width:1000px){.ca-grid{grid-template-columns:minmax(0,1fr)}.ca-controls{max-width:330px}.ca-stage-track{height:11px}.ca-stage-label{width:135px}.ca-stage-value{width:100px}.ca-stage-row>svg{display:block}.ca-stage-chart{padding-left:23px;padding-right:23px}.ca-team-chart{max-height:none}.ca-panel h2{font-size:14px}.ca-outcomes{justify-content:flex-start;padding-left:30px;padding-right:30px;gap:35px}.ca-outcome-legend{max-width:350px}.ca-month-chart{padding-left:25px;padding-right:25px}.ca-month-bar-area{padding:0 12px}.ca-month-bar-area>i{max-width:56px}}@media(max-width:650px){.ca-heading{display:block;margin-bottom:10px}.ca-heading h1{font-size:24px}.ca-heading p{font-size:11px}.ca-controls{margin-top:20px;justify-content:flex-start;max-width:none;gap:7px}.ca-controls>label{padding:0 8px;gap:5px}.ca-controls>label>span{display:none}.ca-controls select{font-size:11px;max-width:145px}.ca-context{gap:12px;flex-wrap:wrap;padding-top:12px;font-size:11px}.ca-context>button{margin-right:0}.ca-context>span:nth-child(2){font-size:11px}.ca-grid{gap:17px}.ca-panel>header{padding:20px 16px 16px;gap:10px}.ca-panel h2{font-size:13px}.ca-panel header p{font-size:11px}.ca-panel-icon{width:27px;height:27px;margin-left:7px}.ca-toggle{padding:2px}.ca-toggle button{padding:4px 6px;font-size:11px}.ca-stage-chart{padding:3px 14px 17px}.ca-stage-row{gap:7px;padding:9px 0}.ca-stage-label{width:101px;font-size:11px}.ca-stage-value{width:88px;font-size:11px}.ca-stage-value small{font-size:11px}.ca-stage-row>svg{display:none}.ca-panel>footer{padding-left:16px;padding-right:16px}.ca-panel-count{font-size:11px;padding:3px 5px}.ca-legend{gap:5px}.ca-team-chart{padding:0 17px 18px}.ca-outcomes{gap:15px;padding:0 16px 15px}.ca-donut,.ca-donut-wrap{width:135px;height:135px}.ca-outcome-legend button{gap:6px}.ca-outcome-legend button svg{display:none}.ca-outcome-legend button>span,.ca-outcome-legend p{font-size:11px}.ca-reasons{padding:15px 17px}.ca-subtitle{gap:7px}.ca-subtitle h3{font-size:11px}.ca-reason-name{width:140px}.ca-source-chart{padding:0 17px 18px}.ca-source-row{gap:9px}.ca-source-row>div>small{font-size:11px}.ca-source-row em{margin:0 4px}.ca-month-chart{padding:28px 16px 0;gap:7px}.ca-month-bar-area{padding:0 3px}.ca-month-bar-area>b{font-size:11px;max-width:55px;white-space:normal;line-height:1.5;min-height:24px}.ca-month-label{font-size:11px;white-space:nowrap}.ca-month-label small{font-size:11px}.ca-date-integrity{padding:16px;font-size:11px}.ca-ticket-chart{padding-left:17px;padding-right:17px}.ca-detail-backdrop{padding:14px}.ca-detail>header{padding:20px;gap:12px}.ca-detail header h2{font-size:15px}.ca-detail-summary{padding:13px 20px}.ca-detail-list>button{padding:17px 20px;gap:12px}.ca-detail-list b{font-size:12px}.ca-detail-list strong{font-size:11px}.ca-detail-list>button>svg{display:none}}