/* Page-specific styles for /tracker and routing/split screens. Loaded before app.css; final mobile safeguards stay here too. */

/* ── Tracker and routing polish ────────────────────────────────────────── */
.tracker-summary,.split-summary{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(130px,1fr));
  gap:10px;
  margin-bottom:14px;
  max-width:100%;
}
.tracker-summary-item,.split-summary-item{
  min-width:0;
  background:#fff;
  border:1px solid var(--border);
  border-radius:8px;
  padding:12px 13px;
  box-shadow:var(--sh);
}
.tracker-summary-item small,.split-summary-item small{
  display:block;
  color:#667085;
  font-size:11px;
  font-weight:700;
  letter-spacing:0;
  text-transform:none;
}
.tracker-summary-item b,.split-summary-item b{
  display:block;
  margin-top:5px;
  font-size:20px;
  line-height:1.1;
  overflow-wrap:anywhere;
}
.tracker-summary-item.is-warn,.split-summary-item.is-warn{
  background:#fff9f5;
  border-color:#ffd5c2;
}
.tracker-summary-item.is-warn b,.split-summary-item.is-warn b{color:#b42318}
@media (min-width:1000px){
  .tracker-summary{
    grid-template-columns:repeat(5,minmax(0,1fr));
  }
}
.tracker-tabs{
  display:flex;
  gap:8px;
  margin:0 0 14px;
  padding:6px;
  border:1px solid var(--border);
  border-radius:14px;
  background:#fff;
  box-shadow:0 1px 2px rgba(16,24,40,.05);
  max-width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
.tracker-tabs a{
  flex:0 0 auto;
  min-height:38px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 14px;
  border-radius:10px;
  color:#667085;
  text-decoration:none;
  font-size:13px;
  font-weight:800;
}
.tracker-tabs a.is-active{
  background:#1570ef;
  color:#fff;
  box-shadow:0 8px 22px rgba(21,112,239,.22);
}
.tracker-tools{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  margin-bottom:14px;
  padding:10px;
  border:1px solid var(--border);
  border-radius:12px;
  background:#fff;
  box-shadow:0 1px 2px rgba(16,24,40,.05);
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
.tracker-search{
  width:100%;
  min-width:0;
}
.tracker-tools-meta{
  color:#667085;
  min-width:0;
  text-align:right;
  font-size:12px;
  font-weight:750;
  white-space:nowrap;
}
.tracker-card{
  min-width:0;
  overflow:hidden;
}
.tracker-filterbar{
  display:flex;
  align-items:flex-end;
  gap:10px;
  flex-wrap:wrap;
  margin:0 0 14px;
  padding:12px;
  border:1px solid var(--border);
  border-radius:12px;
  background:#fbfcfe;
}
.tracker-filterbar label{
  display:block;
  min-width:150px;
  color:#475467;
  font-size:12px;
  font-weight:800;
}
.tracker-filterbar .input{
  margin-top:4px;
  min-height:38px;
}
.tracker-conversions-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.tracker-conversions-head h3{
  margin-top:0;
}
.tracker-conversions-scroll .tbl{
  min-width:860px;
}
.tracker-clicks-scroll .tbl{
  min-width:980px;
}
.tracker-pixel-scroll .tbl{
  min-width:920px;
}
.tracker-columns{
  margin:0 0 14px;
  border:1px solid var(--border);
  border-radius:12px;
  background:#fff;
  overflow:hidden;
}
.tracker-columns>summary{
  min-height:40px;
  display:flex;
  align-items:center;
  padding:8px 12px;
  color:#475467;
  cursor:pointer;
  font-weight:850;
  list-style:none;
}
.tracker-columns>summary::-webkit-details-marker{display:none}
.tracker-columns>summary::after{
  content:"⌄";
  margin-left:auto;
  color:#98a2b3;
}
.tracker-columns form{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  padding:0 12px 12px;
}
.tracker-columns label{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:32px;
  color:#344054;
  font-size:13px;
  font-weight:760;
}
.tracker-pixel-helper{
  display:grid;
  gap:10px;
  margin:0 0 14px;
  padding:14px;
  border:1px solid rgba(21,112,239,.18);
  border-radius:14px;
  background:linear-gradient(135deg,rgba(21,112,239,.06),rgba(255,255,255,.92));
}
.tracker-pixel-helper p{
  margin:4px 0 0;
}
.tracker-pixel-helper pre{
  margin:0;
  padding:10px 12px;
  overflow:auto;
  border:1px solid #d0d5dd;
  border-radius:10px;
  background:#0f172a;
  color:#e2e8f0;
  -webkit-overflow-scrolling:touch;
}
.tracker-pixel-helper pre code{
  display:block;
  min-width:max-content;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#e2e8f0;
  white-space:pre;
}
.tracker-pixel-note code{
  color:#344054;
  white-space:normal;
}
.tracker-empty-state{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:22px;
  border:1px dashed #d0d5dd;
  border-radius:14px;
  background:#fbfcfe;
  color:#667085;
}
.tracker-empty-state b{
  color:#344054;
}
.tracker-group[hidden],.tracker-manual-row[hidden]{display:none}
.tracker-warn{
  display:inline-flex;
  align-items:center;
  margin-left:8px;
  color:#b45309;
  background:transparent;
  border:0;
  border-radius:0;
  padding:2px 8px;
  font-size:11px;
  font-weight:700;
}
.tracker-route-btn{
  padding:2px 8px;
  min-height:0;
  font-size:11px;
}
.tracker-manual-row.row-warn td:first-child,
.split-card .row-warn td:first-child,
.table-wrap .row-warn td:first-child{
  border-left:3px solid #ff9f0a;
}
.split-help{overflow:hidden}
.split-help-summary{
  cursor:pointer;
  display:flex;
  align-items:center;
  gap:8px;
  list-style:none;
  font-size:15px;
  font-weight:760;
}
.split-help-summary::-webkit-details-marker{display:none}
.split-card{overflow:hidden}
.split-card .tbl tr.is-muted{opacity:.5}
.split-card .toolbar{
  padding-top:12px;
  border-top:1px dashed var(--border);
}
.split-section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
  padding-bottom:8px;
  border-bottom:1px solid var(--border);
}
.split-section-head h3{
  display:flex;
  align-items:center;
  gap:9px;
  margin:0;
  padding:0;
  border:0;
}
.split-section-head h3 span{
  display:inline-grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:999px;
  background:#edf4ff;
  color:#1769e0;
  font-size:12px;
  font-weight:850;
}
.split-section-head>b{
  min-width:28px;
  height:24px;
  display:inline-grid;
  place-items:center;
  padding:0 8px;
  border-radius:999px;
  background:#f2f4f7;
  color:#475467;
  font-size:12px;
}
.split-rule-list{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-top:12px;
}
.split-guide{
  margin:0 0 14px;
  border:1px solid var(--border);
  border-radius:10px;
  background:#fff;
  overflow:hidden;
}
.split-guide>summary{
  min-height:40px;
  display:flex;
  align-items:center;
  padding:8px 12px;
  cursor:pointer;
  list-style:none;
  color:#344054;
  font-weight:800;
}
.split-guide>summary::-webkit-details-marker{display:none}
.split-guide>summary::after{
  content:"⌄";
  margin-left:auto;
  color:#667085;
}
.split-guide[open]>summary{
  border-bottom:1px solid var(--border);
}
.split-guide-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:8px;
  padding:10px 12px 12px;
}
.split-guide-grid>div{
  display:grid;
  grid-template-columns:28px 1fr;
  column-gap:8px;
  align-items:center;
  min-width:0;
}
.split-guide-grid b{
  grid-row:1 / span 2;
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#edf4ff;
  color:#1769e0;
  font-size:12px;
}
.split-guide-grid span{
  font-weight:760;
  font-size:13px;
}
.split-guide-grid small{
  color:#667085;
  font-size:11px;
}
.split-rule-card{
  border:1px solid #e1e7ef;
  border-radius:12px;
  background:#fff;
  overflow:hidden;
}
.split-rule-card.is-muted{
  opacity:.58;
}
.split-rule-card.is-warn{
  border-color:#ffd5c2;
}
.split-rule-new{
  margin-top:12px;
  border-style:dashed;
  background:#fbfcfe;
}
.split-rule-new .split-rule-head{
  background:#f8fbff;
}
.split-rule-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  background:#fbfcfe;
  border-bottom:1px solid #edf1f6;
}
.split-rule-title{
  min-width:0;
  display:flex;
  align-items:flex-start;
  gap:9px;
}
.split-rule-title b{
  display:block;
  min-width:0;
  overflow-wrap:anywhere;
  font-size:14px;
}
.split-rule-title small{
  display:block;
  margin-top:2px;
  color:#667085;
  font-size:12px;
}
.split-rule-actions{
  flex:0 0 auto;
  display:flex;
  gap:6px;
}
.split-rule-actions form{
  margin:0;
}
.split-rule-actions .btn{
  min-height:32px;
  padding:5px 10px;
  font-size:12px;
}
.split-rule-grid{
  display:grid;
  grid-template-columns:minmax(240px,1.8fr) minmax(90px,.45fr) minmax(220px,1.2fr);
  gap:8px;
  padding:12px 14px 14px;
}
.split-rule-grid-geo{
  grid-template-columns:minmax(130px,.55fr) minmax(240px,1.5fr) minmax(90px,.4fr) minmax(220px,1.15fr);
}
.split-rule-grid-new{
  grid-template-columns:minmax(240px,1.8fr) minmax(90px,.4fr);
}
.split-rule-field{
  min-width:0;
  border:1px solid #e7ebf2;
  border-radius:8px;
  background:#f7f9fc;
  padding:8px 9px;
}
.split-rule-field small{
  display:block;
  margin-bottom:5px;
  font-size:10px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.02em;
}
.split-rule-field .input{
  min-height:36px;
  font-size:14px;
}
.split-rule-url span{
  display:block;
  min-width:0;
  overflow-wrap:anywhere;
  font-size:12px;
  line-height:1.35;
}
.split-primary{
  padding:16px 18px;
  margin-bottom:14px;
  border-color:#cfe0ff;
  background:linear-gradient(180deg,#fff,#f8fbff);
}
.split-primary-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.split-primary-head h3{
  margin:0 0 4px;
  padding:0;
  border:0;
}
.split-primary-head p{
  margin:0;
  font-size:13px;
}
.split-primary-status{
  flex:0 0 auto;
  color:#027a48;
  background:#ecfdf3;
  border:1px solid #abefc6;
  border-radius:999px;
  padding:4px 10px;
  font-size:12px;
  font-weight:800;
}
.split-primary-status.is-warn{
  color:#b42318;
  background:#fff1f0;
  border-color:#ffd5d2;
}
.split-primary-form{
  display:flex;
  align-items:flex-end;
  gap:10px;
  margin-bottom:10px;
}
.split-primary-form label{
  display:block;
  min-width:280px;
  flex:1;
}
.split-primary-grid{
  display:grid;
  grid-template-columns:minmax(180px,1.1fr) minmax(100px,.55fr) minmax(240px,1.7fr);
  gap:8px;
}
.split-primary-grid>div{
  min-width:0;
  border:1px solid #e7ebf2;
  border-radius:8px;
  background:#fff;
  padding:9px 10px;
}
.split-primary-grid small{
  display:block;
  font-size:10px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.02em;
}
.split-primary-grid b,.split-primary-grid span{
  display:block;
  margin-top:4px;
  min-width:0;
  overflow-wrap:anywhere;
  font-size:13px;
}
.split-primary-scope{
  display:flex;
  align-items:flex-end;
  gap:10px;
  flex-wrap:wrap;
  margin-top:12px;
  padding-top:12px;
  border-top:1px dashed #d9e4f5;
}
.split-primary-scope label{
  display:block;
}
.split-primary-scope p{
  margin:0;
  max-width:620px;
  font-size:12px;
}
.offer-pick{min-width:0}
.offer-pick-in{min-width:0}
@media (max-width:860px){
  .tracker-tabs{
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    padding:5px;
  }
  .tracker-tabs a{
    flex:0 0 auto;
    min-width:132px;
  }
  .tracker-filterbar{
    align-items:stretch;
    flex-direction:column;
  }
  .tracker-filterbar label,
  .tracker-filterbar .btn{
    width:100%;
  }
  .tracker-tools{
    position:static;
    grid-template-columns:1fr;
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
  }
  .tracker-search{min-width:0}
  .tracker-tools-meta{text-align:left;min-width:auto}
  .split-primary-head,.split-primary-form,.split-primary-scope{
    align-items:stretch;
    flex-direction:column;
  }
  .split-primary-form label,.split-primary-scope label{
    min-width:0;
    width:100%;
  }
  .split-primary-grid{
    grid-template-columns:1fr;
  }
  .split-rule-head{
    flex-direction:column;
  }
  .split-rule-actions{
    width:100%;
    flex-wrap:wrap;
  }
  .split-rule-grid,.split-rule-grid-geo{
    grid-template-columns:1fr;
  }
  .tracker-pixel-helper{
    padding:12px;
  }
}

.tracker-pixel-table code{
  font-size:12px;
}

.tracker-empty-state{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:18px;
  border:1px dashed rgba(37,99,235,.28);
  border-radius:18px;
  background:linear-gradient(135deg,rgba(37,99,235,.06),rgba(255,255,255,.82));
  color:#334155;
}

.tracker-hours-scroll,
.tracker-feed-scroll{
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-x pan-y;
}

.tracker-feed-scroll .tbl{
  min-width:820px;
}

.tracker-hours-scroll .tbl{
  min-width:560px;
}

.tracker-feed-scroll::-webkit-scrollbar,
.tracker-hours-scroll::-webkit-scrollbar{
  height:6px;
}

.tracker-feed-scroll::-webkit-scrollbar-thumb,
.tracker-hours-scroll::-webkit-scrollbar-thumb{
  background:rgba(148,163,184,.55);
  border-radius:999px;
}

.tracker-feed-scroll::after{
  content:"↔";
  position:absolute;
  right:14px;
  top:10px;
  display:none;
  width:28px;
  height:28px;
  place-items:center;
  border-radius:999px;
  background:rgba(255,255,255,.86);
  color:#667085;
  box-shadow:0 6px 18px rgba(15,23,42,.12);
  pointer-events:none;
}

@media (max-width:860px){
  .tracker-feed-scroll,
  .tracker-hours-scroll{
    position:relative;
    margin-left:-2px;
    margin-right:-2px;
    padding-bottom:8px;
  }

  .tracker-feed-scroll::after{
    display:grid;
  }
}

/* Final mobile override: tracker live feed must be horizontally swipeable. */
.tracker-hours-scroll,
.tracker-feed-scroll{
  overflow-x:auto!important;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-x pan-y;
}

.tracker-feed-scroll .tbl{
  min-width:820px;
}

.tracker-hours-scroll .tbl{
  min-width:560px;
}

@media (max-width:860px){
  .tracker-feed-scroll,
  .tracker-hours-scroll{
    position:relative;
    padding-bottom:8px;
  }

  .tracker-feed-scroll::after{
    content:"↔";
    position:absolute;
    right:12px;
    top:10px;
    display:grid;
    width:28px;
    height:28px;
    place-items:center;
    border-radius:999px;
    background:rgba(255,255,255,.88);
    color:#667085;
    box-shadow:0 6px 18px rgba(15,23,42,.12);
    pointer-events:none;
  }
}
