/* ============================================================
   HERO PRODUCT UI — polish layer (index hero tour only)
   One UI face (Geist), a 5-step type scale (11.5 / 12.5 / 13.5 / 15 / 20),
   3 weights (400/500/600), a 4px spacing grid, 32–52px rows,
   hairline borders instead of filled boxes. Loaded last on index.html.
   ============================================================ */
:is(.imm-tour,.pui,.ui-frame){--ui-font:"Geist",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--ui-ink:#0E1116;--ui-text:#2B303A;--ui-muted:#656B77;--ui-faint:#9399A5;--ui-line:#ECEDF0;--ui-line-2:#E2E4E9;--ui-fill:#F7F7F8;--ui-fill-2:#EFF0F2;--ui-accent:#0F62FE;--ui-accent-bg:#EEF3FF;--ui-green:#1E8048;--ui-green-bg:#EAF6EE;--ui-amber:#94600B;--ui-amber-bg:#FBF1DF;--ui-red:#C4302B;--ui-red-bg:#FCECEB}
.imm-tour .appwin,.imm-tour .appwin *{font-family:var(--ui-font)}
.imm-tour .appwin{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"ss01","cv11";letter-spacing:-.006em;color:var(--ui-text);border-radius:12px;border-color:var(--ui-line);height:600px}

/* ---- feature tabs ---- */
.imm-tour .pw-tab{font-family:var(--ui-font);font-weight:500;font-size:15.5px;letter-spacing:-.012em;padding:16px 16px 18px;-webkit-font-smoothing:antialiased}
.imm-tour .pw-tab .pw-tab-sub{font-family:var(--ui-font);font-weight:400;font-size:13px;letter-spacing:-.003em;margin-top:4px}

/* ---- top bar ---- */
.imm-tour .aw-topbar{height:48px;border-bottom-color:var(--ui-line)}
.imm-tour .aw-tb-bar{padding:0 16px}
.imm-tour .aw-tb-bar .aw-ws,.imm-tour .aw-tb-bar .aw-ws-name{font-size:13px;font-weight:500;color:var(--ui-ink)}
.imm-tour .aw-ws .aw-ws-name{border-bottom:0;padding-bottom:0}
.imm-tour .aw-tb-bar .aw-ws{gap:6px;padding:6px 8px;margin-left:-8px;border-radius:7px}
.imm-tour .aw-tb-bar .aw-ws:hover{background:var(--ui-fill-2)}
.imm-tour .aw-tb-acct{width:30px;height:30px;border-radius:7px}
.imm-tour .aw-tb-acct svg{width:20px;height:20px}
.imm-tour .aw-tb-badge{font-size:9.5px;font-weight:600;min-width:15px;height:15px}
.imm-tour .aw-collapse{width:28px;height:28px;color:var(--ui-faint)}
.imm-tour .aw-collapse svg{width:18px;height:18px}

/* ---- sidebar ---- */
.imm-tour .aw-side{padding:10px 10px 16px;border-right-color:var(--ui-line);background:#FCFCFD}
.imm-tour .aw-brand{padding:6px 10px 12px}
.imm-tour .aw-brand img{height:22px}
.imm-tour .aw-nav-label{font-size:11.5px;font-weight:500;letter-spacing:0;text-transform:none;color:var(--ui-faint);padding:16px 10px 6px}
.imm-tour .aw-nav a{height:32px;padding:0 10px;gap:10px;border-radius:7px;font-size:13px;font-weight:500;color:var(--ui-text)}
.imm-tour .aw-nav a .aw-ic{width:16px;height:16px;color:var(--ui-muted)}
.imm-tour .aw-nav a .aw-ic svg{width:16px;height:16px}
.imm-tour .aw-nav a:hover{background:var(--ui-fill-2)}
.imm-tour .aw-nav a.active{background:var(--ui-fill-2);color:var(--ui-ink);font-weight:500}
.imm-tour .aw-nav a.active .aw-ic,.imm-tour .aw-nav a.active .aw-ic svg{color:var(--ui-ink)!important}

/* ---- chat history rail ---- */
:is(.imm-tour,.pui) .ac-layout{grid-template-columns:216px 1fr}
:is(.imm-tour,.pui) .ac-history{background:#FCFCFD;border-right-color:var(--ui-line);padding:10px 8px;gap:2px}
:is(.imm-tour,.pui) .ac-newchat{height:32px;padding:0 10px;margin-bottom:2px;gap:9px;font-size:13px;font-weight:500;color:var(--ui-ink);border-radius:7px}
:is(.imm-tour,.pui) .ac-newchat .ac-nc-ic,:is(.imm-tour,.pui) .ac-newchat .ac-nc-ic svg{width:15px;height:15px}
:is(.imm-tour,.pui) .ac-hist-day{font-size:11.5px;font-weight:500;color:var(--ui-faint);padding:14px 10px 6px}
:is(.imm-tour,.pui) .ac-hist-item{height:30px;padding:0 10px;border-radius:7px;font-size:13px;color:var(--ui-text)}
:is(.imm-tour,.pui) .ac-hist-item.active{background:var(--ui-fill-2);color:var(--ui-ink);font-weight:500}

/* ---- chat thread ---- */
:is(.imm-tour,.pui) .ac-scroll{padding:28px 32px 12px}
:is(.imm-tour,.pui) .ac-thread{max-width:720px;margin:0 auto;gap:18px}
:is(.imm-tour,.pui) .ac-user{max-width:78%}
:is(.imm-tour,.pui) .ac-user .ac-bubble{background:var(--ui-fill-2);color:var(--ui-ink);border-radius:14px;padding:10px 14px;font-size:13.5px;line-height:1.5}
:is(.imm-tour,.pui) .ac-asst{gap:12px}
:is(.imm-tour,.pui) .ac-asst p{font-size:13.5px;line-height:1.62;color:var(--ui-text)}
:is(.imm-tour,.pui) .ac-asst p strong,:is(.imm-tour,.pui) .ac-asst li strong{font-weight:600;color:var(--ui-ink)}
:is(.imm-tour,.pui) .ac-toast{background:var(--ui-green-bg);border-color:transparent;border-radius:999px;padding:4px 11px 4px 6px;gap:7px;font-size:12px;font-weight:500;color:var(--ui-green)}
:is(.imm-tour,.pui) .ac-toast .ac-toast-ic{width:16px;height:16px;border-radius:50%}
:is(.imm-tour,.pui) .ac-toast .ac-toast-ic svg{width:10px;height:10px}
:is(.imm-tour,.pui) .ac-h{font-size:14px;font-weight:600;letter-spacing:-.012em;color:var(--ui-ink);gap:8px;margin-top:6px}
:is(.imm-tour,.pui) .ac-h .ac-h-ic{width:22px;height:22px;border-radius:6px;background:var(--ui-accent-bg);color:var(--ui-accent)}
:is(.imm-tour,.pui) .ac-h .ac-h-ic svg{width:13px;height:13px}
:is(.imm-tour,.pui) .ac-stats{gap:1px;background:var(--ui-line);border:1px solid var(--ui-line);border-radius:10px;overflow:hidden}
:is(.imm-tour,.pui) .ac-stat{border:0;border-radius:0;background:#fff;padding:14px 16px}
:is(.imm-tour,.pui) .ac-stat .ac-stat-n{font-size:20px;font-weight:600;letter-spacing:-.025em;color:var(--ui-ink);font-feature-settings:"tnum"}
:is(.imm-tour,.pui) .ac-stat .ac-stat-l{font-size:12px;color:var(--ui-muted);margin-top:6px;letter-spacing:0}
:is(.imm-tour,.pui) .ac-list{gap:8px}
:is(.imm-tour,.pui) .ac-li{font-size:13.5px;color:var(--ui-text);gap:10px}
:is(.imm-tour,.pui) .ac-li .ac-li-n{font-size:12px;font-weight:500;color:var(--ui-faint)}
:is(.imm-tour,.pui) .ac-li .ac-li-v{font-weight:600;color:var(--ui-ink)}
:is(.imm-tour,.pui) .ac-bars{gap:10px}
:is(.imm-tour,.pui) .ac-bar{grid-template-columns:172px 1fr 64px;gap:14px}
:is(.imm-tour,.pui) .ac-bar .ac-bar-name{font-size:13px;color:var(--ui-text)}
:is(.imm-tour,.pui) .ac-bar .ac-bar-track{height:6px;background:var(--ui-fill-2)}
:is(.imm-tour,.pui) .ac-bar .ac-bar-fill{background:var(--ui-accent)}
:is(.imm-tour,.pui) .ac-bar .ac-bar-v{font-size:12.5px;font-weight:500;color:var(--ui-ink)}
:is(.imm-tour,.pui) .ac-card{border-color:var(--ui-line);border-radius:12px;padding:16px 20px}
:is(.imm-tour,.pui) .ac-card-title{font-size:13px;font-weight:600;color:var(--ui-ink);text-align:left}
:is(.imm-tour,.pui) .ac-legend{justify-content:flex-start;gap:6px 16px}
:is(.imm-tour,.pui) .ac-legend span,:is(.imm-tour,.pui) .ac-pie-legend .ac-pl{font-size:12px;color:var(--ui-muted)}
:is(.imm-tour,.pui) .ac-pie-legend .ac-pl b{font-weight:500;color:var(--ui-ink)}
:is(.imm-tour,.pui) .ac-pie{box-shadow:none}
:is(.imm-tour,.pui) .ac-axis{font-family:var(--ui-font);font-size:10px;fill:var(--ui-faint)}
:is(.imm-tour,.pui) .ac-sugs{gap:6px}
:is(.imm-tour,.pui) .ac-sug{background:#fff;border-color:var(--ui-line);border-radius:9px;padding:9px 12px;font-size:13px;color:var(--ui-text)}
:is(.imm-tour,.pui) .ac-sug:hover{background:var(--ui-fill)}
:is(.imm-tour,.pui) .ac-input{margin:8px 24px 18px;padding:12px 14px 10px;border-color:var(--ui-line-2);border-radius:14px;box-shadow:0 1px 2px rgba(14,17,22,.04)}
:is(.imm-tour,.pui) .ac-input .ac-input-ph{font-size:13.5px;color:var(--ui-faint)}
:is(.imm-tour,.pui) .ac-input .ac-input-ph.ac-typed{color:var(--ui-ink)}
:is(.imm-tour,.pui) .ac-input .ac-up{width:28px;height:28px;border-radius:50%;background:var(--ui-ink)}
:is(.imm-tour,.pui) .ac-input-tip{font-size:12px;color:var(--ui-faint)}
:is(.imm-tour,.pui) .ac-input-tip .ac-model{font-size:12px;font-weight:500;color:var(--ui-text)}
:is(.imm-tour,.pui) .ac-input-tip kbd{font-size:10.5px;font-weight:500;color:var(--ui-muted);background:var(--ui-fill);border-color:var(--ui-line)}
:is(.imm-tour,.pui) .ac-replay{font-size:12px;font-weight:500}
:is(.imm-tour,.pui) .atlas-chat .ac-vpill{font-size:12.5px;font-weight:500;padding:5px 11px;border-color:var(--ui-line-2)}
:is(.imm-tour,.pui) .atlas-chat .ac-slide{border-color:var(--ui-line);box-shadow:none;border-radius:10px}
:is(.imm-tour,.pui) .atlas-chat .ac-slide-no{font-weight:600}

/* ---- shared panel header (Opportunity + Auto-cat) ---- */
.imm-tour .opp-top,.imm-tour .appwin .acat-top{padding:18px 24px 14px;gap:12px}
.imm-tour .opp-title,.imm-tour .appwin .acat-title{font-size:16px;font-weight:600;letter-spacing:-.018em;color:var(--ui-ink)}
.imm-tour .opp-views{background:var(--ui-fill-2);border-radius:8px;padding:2px;gap:2px}
.imm-tour .opp-view{font-size:12.5px;font-weight:500;color:var(--ui-muted);padding:5px 10px;border-radius:6px}
.imm-tour .opp-view svg{width:13px;height:13px}
.imm-tour .opp-view.on{background:#fff;color:var(--ui-ink);box-shadow:0 1px 2px rgba(14,17,22,.08),0 0 0 .5px rgba(14,17,22,.06)}
.imm-tour .opp-export,.imm-tour .appwin .acat-btn{height:30px;padding:0 11px;font-size:12.5px;font-weight:500;border-color:var(--ui-line-2);border-radius:7px;color:var(--ui-ink);gap:6px}
.imm-tour .opp-export svg,.imm-tour .appwin .acat-btn svg{width:14px;height:14px}
.imm-tour .appwin .acat-btn.primary{background:var(--ui-ink);border-color:var(--ui-ink);color:#fff}
.imm-tour .appwin .acat-btn.primary.running{color:#fff}

/* ---- KPI strips: one hairline-ruled strip, no filled boxes ---- */
.imm-tour .opp-kpis,.imm-tour .appwin .acat-kpis{gap:1px;background:var(--ui-line);border:1px solid var(--ui-line);border-radius:10px;overflow:hidden;margin:0 24px 16px;padding:0}
.imm-tour .opp-kpi,.imm-tour .appwin .acat-kpi{background:#fff;border-radius:0;padding:12px 16px}
.imm-tour .opp-kpi-l,.imm-tour .appwin .acat-kpi-l{font-size:12px;font-weight:500;color:var(--ui-muted)}
.imm-tour .opp-kpi-n,.imm-tour .appwin .acat-kpi-n{margin-top:4px;font-size:20px;font-weight:600;letter-spacing:-.025em;color:var(--ui-ink);font-feature-settings:"tnum"}
.imm-tour .appwin .acat-kpi.uncat .acat-kpi-n{color:var(--ui-red)}
.imm-tour .appwin .acat-kpi.uncat.clear .acat-kpi-n{color:var(--ui-green)}

/* ---- Opportunity table ---- */
.imm-tour .opp-wrap{border-top-color:var(--ui-line)}
.imm-tour .opp-listhead{padding:12px 24px 10px;align-items:center}
.imm-tour .opp-listhead b{font-size:13px;font-weight:600;color:var(--ui-ink)}
.imm-tour .opp-listhead span{font-size:12px;color:var(--ui-muted)}
.imm-tour .opp-head,.imm-tour .opp-row{grid-template-columns:minmax(0,2.2fr) minmax(0,1.2fr) 104px 84px 88px;gap:12px;padding:0 20px}
.imm-tour .opp-head>*,.imm-tour .opp-row>*{min-width:0}
@media (max-width:1180px) and (min-width:761px){.imm-tour .opp-head,.imm-tour .opp-row{grid-template-columns:minmax(0,2fr) 104px 84px 88px}.imm-tour .opp-head .h-src,.imm-tour .opp-row .opp-src{display:none}}
.imm-tour .opp-head{height:34px;background:var(--ui-fill);font-size:12px;font-weight:500;letter-spacing:0;color:var(--ui-muted);border-color:var(--ui-line)}
.imm-tour .opp-row{min-height:52px;padding-top:8px;padding-bottom:8px;border-bottom-color:var(--ui-line)}
.imm-tour .opp-oppt-t{font-size:13.5px;font-weight:500;color:var(--ui-ink);line-height:1.3;letter-spacing:-.01em}
.imm-tour .opp-oppt-d{font-size:12px;color:var(--ui-muted);margin-top:2px;line-height:1.35}
.imm-tour .opp-src{font-size:12.5px;font-weight:500;gap:6px}
.imm-tour .opp-src svg{width:14px;height:14px}
.imm-tour .opp-stage{height:22px;padding:0 9px;font-size:12px;font-weight:500}
.imm-tour .opp-stage.detected{background:var(--ui-fill-2);color:var(--ui-text)}
.imm-tour .opp-stage.accepted{background:var(--ui-accent-bg);color:#1F4FC4}
.imm-tour .opp-stage.execution{background:var(--ui-amber-bg);color:var(--ui-amber)}
.imm-tour .opp-stage.realized{background:var(--ui-green-bg);color:var(--ui-green)}
.imm-tour .opp-conf,.imm-tour .opp-owner{font-size:13px;color:var(--ui-text)}
.imm-tour .opp-conf i{width:7px;height:7px}
.imm-tour .opp-val-n{font-size:13.5px;font-weight:600;color:var(--ui-ink);font-feature-settings:"tnum"}
.imm-tour .opp-badge{font-size:10px;font-weight:600;letter-spacing:.04em;border-radius:4px;background:var(--ui-green-bg);color:var(--ui-green)}

/* ---- Auto categorization table ---- */
.imm-tour .appwin .acat-tablewrap{border-top-color:var(--ui-line)}
.imm-tour .appwin .acat-toolbar{height:40px;box-sizing:border-box;padding:0 24px;font-size:12.5px;font-weight:500;color:var(--ui-muted);border-bottom-color:var(--ui-line)}
.imm-tour .appwin .acat-toolbar .acat-grp{color:var(--ui-ink)}
.imm-tour .appwin .acat-toggle{background:var(--ui-ink)}
.imm-tour .appwin .acat-head,.imm-tour .appwin .acat-sup,.imm-tour .appwin .acat-txn{padding-left:24px;padding-right:24px;gap:14px}
.imm-tour .appwin .acat-head{top:40px;height:34px;background:var(--ui-fill);font-size:12px;font-weight:500;letter-spacing:0;color:var(--ui-muted);border-bottom-color:var(--ui-line)}
.imm-tour .appwin .acat-sup{min-height:48px;border-bottom-color:var(--ui-line)}
.imm-tour .appwin .acat-sup .acat-chev{width:16px;height:16px;color:var(--ui-faint)}
.imm-tour .appwin .acat-sup-name{font-size:13.5px;font-weight:500;color:var(--ui-ink)}
.imm-tour .appwin .acat-sup-name .acat-count{font-weight:400;color:var(--ui-faint)}
.imm-tour .appwin .acat-spend{font-size:13px;color:var(--ui-text);font-feature-settings:"tnum"}
.imm-tour .appwin .acat-score{font-size:13px;font-weight:600;color:var(--ui-green);font-feature-settings:"tnum"}
.imm-tour .appwin .acat-chip{font-size:12px;font-weight:500;padding:2px 8px;border-color:var(--ui-line-2);color:var(--ui-text);border-radius:6px}
.imm-tour .appwin .acat-sep{color:var(--ui-faint)}
.imm-tour .appwin .acat-uncat{font-size:12px;font-weight:500;padding:2px 9px;border-radius:6px;background:var(--ui-red-bg);color:var(--ui-red)}
.imm-tour .appwin .acat-txn{padding-top:12px;padding-bottom:12px;background:var(--ui-fill);border-bottom-color:var(--ui-line)}
.imm-tour .appwin .acat-txn-reason{font-size:12.5px;line-height:1.55;color:var(--ui-text)}
.imm-tour .appwin .acat-txn-reason b{font-weight:500;color:var(--ui-ink)}
.imm-tour .appwin .acat-txn-prev{font-size:12px;color:var(--ui-faint)}
.imm-tour .appwin .acat-txn-prev .acat-chip{background:#fff}

/* ---- phone ---- */
@media (max-width:760px){
  .imm-tour .pw-tab{font-size:14px;padding:12px 10px 14px}
  .imm-tour .pw-tab .pw-tab-sub{font-size:12px}
  .imm-tour .appwin{height:640px}
  :is(.imm-tour,.pui) .ac-layout{grid-template-columns:1fr}
  :is(.imm-tour,.pui) .ac-scroll{padding:20px 16px 8px}
  :is(.imm-tour,.pui) .ac-input{margin:6px 12px 12px}
  :is(.imm-tour,.pui) .ac-stats{grid-template-columns:1fr 1fr 1fr}
  :is(.imm-tour,.pui) .ac-stat{padding:12px}
  :is(.imm-tour,.pui) .ac-stat .ac-stat-n{font-size:17px}
  :is(.imm-tour,.pui) .ac-bar{grid-template-columns:104px 1fr 52px;gap:10px}
  .imm-tour .opp-top,.imm-tour .appwin .acat-top{padding:14px 16px 12px}
  .imm-tour .opp-kpis,.imm-tour .appwin .acat-kpis{margin:0 16px 12px;grid-template-columns:1fr 1fr}
  .imm-tour .appwin .acat-kpis{grid-template-columns:1fr 1fr 1fr}
  .imm-tour .opp-kpi,.imm-tour .appwin .acat-kpi{padding:10px 12px}
  .imm-tour .opp-kpi-n,.imm-tour .appwin .acat-kpi-n{font-size:17px}
  .imm-tour .opp-listhead{padding:10px 16px 8px}
  .imm-tour .opp-head,.imm-tour .opp-row{grid-template-columns:minmax(0,1fr) auto 64px;padding:0 16px;gap:12px}
  .imm-tour .opp-head>span:nth-child(4),.imm-tour .opp-row .opp-conf{display:none}
  .imm-tour .opp-listhead span{display:none}
  .imm-tour .opp-listhead b{white-space:nowrap}
  .imm-tour .opp-oppt-t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .imm-tour .opp-row{min-height:56px}
  .imm-tour .opp-row{padding-top:8px;padding-bottom:8px}
  .imm-tour .appwin .acat-toolbar,.imm-tour .appwin .acat-head,.imm-tour .appwin .acat-sup,.imm-tour .appwin .acat-txn{padding-left:16px;padding-right:16px;gap:10px}
}
