:root{--trk-blue:#1B4F8A;--trk-sky:#2980B9;--trk-light:#EAF1FB;--trk-mid:#D0E4F7;--trk-text:#2C3E50;--trk-muted:#7f8c8d;--trk-red:#e74c3c;--trk-green:#27ae60;--trk-r:8px;--trk-sh:0 2px 8px rgba(0,0,0,.10)}
.trk-wrap{font-family:inherit;color:var(--trk-text)}
.trk-denied{background:#fff3cd;border-left:4px solid #e67e22;padding:12px 16px;border-radius:var(--trk-r);display:flex;align-items:center;gap:8px}
.trk-denied a{color:var(--trk-blue)}

/* toolbar */
.trk-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
.trk-search{padding:8px 12px;border:1px solid #ccc;border-radius:var(--trk-r);font-size:14px;min-width:200px}
.trk-search:focus{outline:none;border-color:var(--trk-sky);box-shadow:0 0 0 3px var(--trk-mid)}
.trk-btn{padding:8px 16px;background:var(--trk-blue);color:#fff;border:none;border-radius:var(--trk-r);cursor:pointer;font-size:13px;font-weight:600;transition:.2s}
.trk-btn:hover{background:var(--trk-sky)}
.trk-btn-out{background:transparent;border:2px solid var(--trk-blue);color:var(--trk-blue)}
.trk-btn-out:hover{background:var(--trk-light)}

/* table */
.trk-table-wrap{overflow-x:auto;border-radius:var(--trk-r);box-shadow:var(--trk-sh)}
table.trk-table{width:100%;border-collapse:collapse;font-size:14px}
table.trk-table th{background:var(--trk-blue);color:#fff;padding:11px 14px;text-align:left;cursor:pointer;user-select:none;white-space:nowrap}
table.trk-table th:hover{background:var(--trk-sky)}
table.trk-table td{padding:10px 14px;border-bottom:1px solid #eee}
table.trk-table tr:nth-child(even) td{background:var(--trk-light)}
table.trk-table tr:hover td{background:var(--trk-mid)}

/* pagination */
.trk-pager{display:flex;gap:6px;align-items:center;margin-top:14px;flex-wrap:wrap}
.trk-pager button{padding:6px 12px;border:1px solid #ddd;background:#fff;border-radius:var(--trk-r);cursor:pointer;font-size:13px}
.trk-pager button.active{background:var(--trk-blue);color:#fff;border-color:var(--trk-blue)}
.trk-pager button:hover:not(.active){background:var(--trk-light)}
.trk-pager-info{font-size:13px;color:var(--trk-muted)}

/* cards */
.trk-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px}
.trk-card-item{background:#fff;border-radius:var(--trk-r);box-shadow:var(--trk-sh);padding:16px;border-top:4px solid var(--trk-blue);transition:.2s}
.trk-card-item:hover{box-shadow:0 4px 16px rgba(0,0,0,.15);transform:translateY(-2px)}
.trk-card-title{font-weight:700;font-size:15px;color:var(--trk-blue);margin-bottom:10px}
.trk-card-field{display:flex;justify-content:space-between;font-size:13px;margin-bottom:5px;border-bottom:1px solid #f0f0f0;padding-bottom:4px}
.trk-card-label{color:var(--trk-muted);font-weight:600}
.trk-card-val{color:var(--trk-text);text-align:right;max-width:60%}

/* lookup */
.trk-lookup-box{background:#fff;border-radius:var(--trk-r);box-shadow:var(--trk-sh);padding:22px}
.trk-lookup-box h3{margin:0 0 14px;color:var(--trk-blue);font-size:17px}
.trk-lookup-row{display:flex;gap:10px;flex-wrap:wrap}
.trk-lookup-input{flex:1;padding:10px 13px;border:2px solid var(--trk-mid);border-radius:var(--trk-r);font-size:15px;min-width:180px}
.trk-lookup-input:focus{outline:none;border-color:var(--trk-sky)}
.trk-recent{margin-top:10px;font-size:13px;color:var(--trk-muted)}
.trk-recent span{cursor:pointer;color:var(--trk-sky);margin-right:8px;text-decoration:underline}

/* customer result */
.trk-cust-header{background:var(--trk-blue);color:#fff;padding:14px 18px;border-radius:var(--trk-r);margin-bottom:14px}
.trk-cust-header h2{margin:0 0 3px;font-size:18px}
.trk-cust-header p{margin:0;opacity:.8;font-size:12px}
.trk-risk{background:#fff3cd;border-left:5px solid var(--trk-red);padding:10px 14px;border-radius:var(--trk-r);margin-bottom:12px;font-weight:600;color:var(--trk-red)}

/* tabs */
.trk-tabs{display:flex;gap:4px;border-bottom:2px solid var(--trk-mid);margin-bottom:16px;flex-wrap:wrap}
.trk-tab{padding:8px 16px;cursor:pointer;font-size:13px;font-weight:600;color:var(--trk-muted);border-bottom:2px solid transparent;margin-bottom:-2px;transition:.15s}
.trk-tab.active{color:var(--trk-blue);border-bottom-color:var(--trk-blue)}
.trk-panel{display:none}
.trk-panel.active{display:block}

/* AI */
.trk-ai-box{background:#fff;border-radius:var(--trk-r);box-shadow:var(--trk-sh);padding:22px}
.trk-ai-box h3{margin:0 0 4px;color:var(--trk-blue)}
.trk-sub{font-size:13px;color:var(--trk-muted);margin:0 0 14px}
.trk-ai-history{max-height:380px;overflow-y:auto;margin-bottom:14px;display:flex;flex-direction:column;gap:10px}
.trk-msg{padding:11px 14px;border-radius:var(--trk-r);max-width:88%;font-size:14px;line-height:1.6;white-space:pre-wrap}
.trk-msg.user{background:var(--trk-blue);color:#fff;align-self:flex-end}
.trk-msg.bot{background:var(--trk-light);color:var(--trk-text);align-self:flex-start}
.trk-msg.err{background:#f8d7da;color:#842029}
.trk-ai-row{display:flex;gap:10px}
.trk-ai-input{flex:1;padding:10px 13px;border:2px solid var(--trk-mid);border-radius:var(--trk-r);font-size:14px;resize:vertical;min-height:46px}
.trk-ai-input:focus{outline:none;border-color:var(--trk-sky)}

/* summary */
.trk-summary{background:var(--trk-blue);color:#fff;border-radius:var(--trk-r);padding:18px 22px;display:inline-block;text-align:center;min-width:120px}
.trk-summary-num{font-size:34px;font-weight:700;line-height:1}
.trk-summary-lbl{font-size:12px;opacity:.85;margin-top:4px}

/* spinner */
.trk-loading{display:flex;align-items:center;gap:10px;padding:28px;justify-content:center;color:var(--trk-muted)}
.trk-spin{width:20px;height:20px;border:3px solid var(--trk-mid);border-top-color:var(--trk-blue);border-radius:50%;animation:trk-spin .7s linear infinite}
@keyframes trk-spin{to{transform:rotate(360deg)}}

@media(max-width:600px){
    .trk-toolbar,.trk-lookup-row,.trk-ai-row{flex-direction:column}
}

/* =========================================================
   NEW WIDGET STYLES — v1.1.0
========================================================= */

/* Widget box shell */
.trk-widget-box{border-radius:var(--trk-r);overflow:hidden;box-shadow:var(--trk-sh)}
.trk-widget-header{padding:12px 16px;font-weight:700;font-size:14px;display:flex;align-items:center;gap:10px;color:#fff}
.trk-header-red{background:#e74c3c}
.trk-header-orange{background:#e67e22}
.trk-header-green{background:#27ae60}
.trk-header-blue{background:#2980B9}
.trk-header-pink{background:#e91e8c}
.trk-header-gold{background:#f39c12}
.trk-header-grey{background:#7f8c8d}
.trk-empty{padding:20px;text-align:center;color:var(--trk-muted);background:#fff;font-size:14px}

/* Badges */
.trk-badge{background:rgba(255,255,255,.25);color:#fff;font-size:11px;font-weight:700;padding:2px 8px;border-radius:20px;margin-left:auto}
.trk-badge-red{background:rgba(231,76,60,.2);color:#e74c3c}

/* Pills */
.trk-pill{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:700}
.trk-pill-red{background:#fde8e8;color:#c0392b}
.trk-pill-orange{background:#fef0e6;color:#d35400}
.trk-pill-blue{background:var(--trk-light);color:var(--trk-blue)}
.trk-pill-green{background:#d5f5e3;color:#1e8449}
.trk-pill-grey{background:#f0f0f0;color:#666}

/* Alert list (birthdays, anniversaries, maintenance) */
.trk-alert-list{background:#fff;padding:4px 0}
.trk-alert-row{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-bottom:1px solid #f0f0f0}
.trk-alert-row:last-child{border-bottom:none}
.trk-alert-row strong{font-size:14px;color:var(--trk-text)}
.trk-muted{color:var(--trk-muted);font-size:12px}

/* KPI Bar */
.trk-kpi-bar{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}
.trk-kpi-card{background:#fff;border-radius:var(--trk-r);box-shadow:var(--trk-sh);padding:18px 16px;text-align:center;transition:.2s}
.trk-kpi-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,0,0,.12)}
.trk-kpi-icon{font-size:22px;margin-bottom:8px}
.trk-kpi-num{font-size:28px;font-weight:700;line-height:1;margin-bottom:4px}
.trk-kpi-lbl{font-size:12px;color:var(--trk-muted);font-weight:600}

/* New Customers widget */
.trk-new-customers-box{background:var(--trk-blue);color:#fff;border-radius:var(--trk-r);padding:24px;text-align:center;box-shadow:var(--trk-sh)}
.trk-nc-month{font-size:13px;opacity:.7;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}
.trk-nc-num{font-size:52px;font-weight:700;line-height:1;margin-bottom:4px}
.trk-nc-label{font-size:14px;opacity:.85;margin-bottom:10px}
.trk-nc-diff{font-size:13px;font-weight:700;background:rgba(255,255,255,.15);display:inline-block;padding:4px 12px;border-radius:20px}

/* Daily Briefing */
.trk-briefing{background:#fff;border-radius:var(--trk-r);box-shadow:var(--trk-sh);overflow:hidden}
.trk-briefing-header{background:var(--trk-blue);color:#fff;padding:16px 20px;display:flex;align-items:center;justify-content:space-between}
.trk-briefing-title{font-size:17px;font-weight:700}
.trk-briefing-date{font-size:13px;opacity:.8}
.trk-briefing-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:0}
.trk-brief-card{padding:20px 16px;border-right:1px solid #f0f0f0;border-bottom:1px solid #f0f0f0;text-align:center}
.trk-brief-icon{font-size:26px;margin-bottom:8px}
.trk-brief-label{font-size:11px;font-weight:700;color:var(--trk-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}
.trk-brief-num{font-size:32px;font-weight:700;line-height:1;margin-bottom:4px}
.trk-brief-sub{font-size:12px;color:var(--trk-muted)}
.trk-brief-list{list-style:none;margin:6px 0 0;padding:0;font-size:13px;text-align:left}
.trk-brief-list li{padding:2px 0;border-bottom:1px solid rgba(0,0,0,.05)}
.trk-brief-pink  .trk-brief-num{color:#e91e8c}
.trk-brief-orange .trk-brief-num{color:#e67e22}
.trk-brief-red   .trk-brief-num{color:#e74c3c}
.trk-brief-green .trk-brief-num{color:#27ae60}
.trk-brief-blue  .trk-brief-num{color:#2980B9}

@media(max-width:600px){
    .trk-kpi-bar{grid-template-columns:repeat(2,1fr)}
    .trk-briefing-grid{grid-template-columns:repeat(2,1fr)}
    .trk-briefing-header{flex-direction:column;gap:4px;text-align:center}
}
