/* Customer-first number explorer. Scoped to avoid changing other portal routes. */
.ip-explorer { min-width:0; background:var(--panel); }
.ip-explorer [hidden] { display:none!important; }
.ip-explorer h2,.ip-explorer h3,.ip-explorer h4,.ip-explorer p { overflow-wrap:anywhere; }
.ip-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:20px; }
.ip-heading h2 { margin:5px 0 7px; font-size:27px; }
.ip-heading p { margin:0; max-width:720px; line-height:1.65; }
.ip-eyebrow { font-size:11px; text-transform:uppercase; letter-spacing:.1em; font-weight:700; color:var(--muted); }
.ip-inventory-total { display:grid; gap:4px; text-align:right; flex-shrink:0; }
.ip-inventory-total>strong { font-size:34px; color:var(--primary-2); line-height:1; }
.ip-inventory-total>span { font-size:12px; color:var(--muted); }
.ip-overview { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:22px; }
.ip-overview-item { padding:13px 16px; border:1px solid var(--line); border-radius:13px; background:var(--panel-2); display:flex; align-items:center; justify-content:space-between; gap:8px; }
.ip-overview-item>span { font-size:13px; color:var(--muted); }
.ip-overview-item>strong { font-size:24px; }
.ip-overview-item.active>strong { color:var(--success); }
.ip-overview-item.attention>strong { color:var(--warning); }
.ip-filters { display:flex; align-items:flex-start; flex-wrap:wrap; gap:14px; }
.ip-filters>label { font-size:12px; font-weight:600; min-width:150px; }
.ip-filters .ip-search { flex:1; min-width:min(280px,100%); }
.ip-filters input,.ip-filters select { width:100%; min-height:44px; }
.ip-advanced-filters { flex:1 1 100%; border:1px solid var(--line); border-radius:12px; padding:12px 14px; }
.ip-advanced-filters>summary { cursor:pointer; font-size:13px; font-weight:600; }
.ip-advanced-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-top:14px; }
.ip-advanced-grid label { min-width:0; font-size:12px; }
.ip-list-help { line-height:1.6; margin:12px 0 18px; }
.ip-customer-list { display:grid; gap:14px; }
.ip-customer { min-width:0; border:1px solid var(--line); border-radius:16px; background:var(--panel); }
.ip-customer[open] { border-color:color-mix(in srgb,var(--primary) 45%,var(--line)); }
.ip-customer-summary { list-style:none; display:flex; align-items:center; gap:13px; padding:18px; cursor:pointer; border-radius:15px; background:var(--panel-2); }
.ip-customer-summary::-webkit-details-marker,.ip-number-details>summary::-webkit-details-marker { display:none; }
.ip-customer-summary:hover { background:color-mix(in srgb,var(--primary) 7%,var(--panel-2)); }
.ip-customer-summary:focus-visible,.ip-number-details>summary:focus-visible,.ip-tab:focus-visible,.ip-number-list:focus-visible { outline:3px solid var(--primary); outline-offset:3px; }
.ip-customer[open]>.ip-customer-summary { border-radius:15px 15px 0 0; border-bottom:1px solid var(--line); }
.ip-customer-avatar { width:40px; height:40px; flex:0 0 40px; display:grid; place-items:center; border-radius:12px; background:color-mix(in srgb,var(--primary) 13%,var(--panel)); color:var(--primary-2); font-weight:800; }
.ip-customer-title { display:grid; gap:5px; flex:1; min-width:0; overflow-wrap:anywhere; }
.ip-customer-title>strong { font-size:16px; line-height:1.4; }
.ip-customer-totals { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:12px; font-size:13px; }
.ip-customer-toggle { color:var(--primary-2); font-size:12px; font-weight:700; white-space:nowrap; }
.ip-customer[open]>.ip-customer-summary .ip-customer-toggle>span { display:inline-block; transform:rotate(180deg); }
.ip-customer-body { padding:18px; min-width:0; }
.ip-customer-search { display:flex; align-items:flex-end; flex-wrap:wrap; gap:10px; }
.ip-customer-search>label { display:grid; gap:7px; flex:1 1 240px; min-width:0; font-size:12px; font-weight:600; }
.ip-customer-search input { width:100%; min-height:44px; }
.ip-customer-search>.btn { min-height:44px; font-size:12px; }
.ip-customer-search-help { margin:9px 0 16px; line-height:1.6; }
.ip-tabs { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:7px; padding:7px; border:1px solid var(--line); border-radius:14px; background:var(--panel-2); }
.ip-tab { display:flex; align-items:center; justify-content:space-between; gap:8px; min-width:0; padding:11px 10px; min-height:45px; border:1px solid transparent; border-radius:9px; color:var(--muted); background:transparent; cursor:pointer; font-size:12px; font-weight:600; }
.ip-tab>strong { min-width:24px; text-align:center; padding:3px 5px; border-radius:8px; font-size:12px; background:var(--panel); color:var(--text); }
.ip-tab:hover { color:var(--text); background:var(--panel); }
.ip-tab[aria-selected="true"] { color:var(--primary-2); background:var(--panel); border-color:color-mix(in srgb,var(--primary) 50%,var(--line)); box-shadow:0 2px 5px #0001; }
.ip-tab-help { line-height:1.6; margin:12px 0 16px; }
.ip-number-list { display:grid; gap:16px; outline:none; min-width:0; }
.ip-number-card { padding:20px; border:1px solid var(--line); border-radius:15px; background:var(--panel); min-width:0; }
.ip-number-header { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; margin-bottom:17px; }
.ip-number-title { min-width:0; }
.ip-number-title h3 { font-size:20px; margin:5px 0; line-height:1.3; }
.ip-number-title p { margin:5px 0 0; }
.ip-number-title .ip-phone { font-size:15px; font-weight:600; color:var(--primary-2); }
.ip-number-header>.badge { flex-shrink:0; max-width:40%; white-space:normal; text-align:center; }
.ip-number-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:0 0 16px; }
.ip-number-facts>div { min-width:0; padding:12px; background:var(--panel-2); border-radius:10px; }
.ip-number-facts dt,.ip-detail-grid dt { font-size:12px; color:var(--muted); margin-bottom:6px; line-height:1.4; }
.ip-number-facts dd,.ip-detail-grid dd { font-size:13px; font-weight:600; margin:0; line-height:1.55; overflow-wrap:anywhere; white-space:normal; }
.ip-note { margin:0 0 14px; padding:12px 14px; border:1px solid color-mix(in srgb,var(--primary) 25%,var(--line)); border-radius:10px; background:color-mix(in srgb,var(--primary) 5%,var(--panel)); font-size:13px; line-height:1.65; overflow-wrap:anywhere; }
.ip-note-danger { border-color:color-mix(in srgb,var(--danger) 40%,var(--line)); background:color-mix(in srgb,var(--danger) 5%,var(--panel)); }
.ip-note p { margin:5px 0 0; }
.ip-number-details { border:1px solid var(--line); border-radius:11px; margin-bottom:14px; }
.ip-number-details>summary { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:13px; cursor:pointer; font-size:13px; font-weight:600; list-style:none; }
.ip-number-details[open]>summary { border-bottom:1px solid var(--line); background:var(--panel-2); border-radius:10px 10px 0 0; }
.ip-number-details[open]>summary>span { transform:rotate(180deg); }
.ip-detail-content { padding:16px; display:grid; gap:24px; }
.ip-detail-content h4 { margin:0 0 8px; font-size:14px; }
.ip-detail-content p { line-height:1.65; }
.ip-detail-content>section { min-width:0; }
.ip-detail-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 22px; margin:0; }
.ip-detail-grid>div { min-width:0; padding:11px 0; border-bottom:1px solid var(--line); }
.ip-detail-grid dd { font-weight:400; }
.ip-detail-content .instance-health { min-width:0; max-width:none; width:100%; }
.ip-detail-content .instance-health dl { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.ip-detail-content .instance-health dl>div { min-width:0; display:block; padding:12px; background:var(--panel-2); border-radius:9px; }
.ip-detail-content .instance-health dt { color:var(--muted); font-size:12px; }
.ip-detail-content .instance-health dd { margin:5px 0 0; overflow-wrap:anywhere; text-align:left; line-height:1.5; }
.ip-detail-content .instance-health a,.ip-detail-content .instance-health small { display:block; margin:10px 0; overflow-wrap:anywhere; }
.ip-detail-content .instance-health p { white-space:normal; overflow-wrap:anywhere; }
.ip-number-actions { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.ip-number-actions .btn { font-size:12px; min-height:40px; padding:10px 12px; white-space:normal; text-align:center; }
.ip-customer-warning { line-height:1.6; margin-bottom:0; }
.ip-number-pagination { display:flex; align-items:center; flex-wrap:wrap; justify-content:space-between; gap:12px; padding-top:18px; font-size:12px; color:var(--muted); }
.ip-number-pagination>label { display:flex; align-items:center; gap:7px; }
.ip-number-pagination select { min-width:65px; min-height:38px; padding:6px; }
.ip-number-pagination>div { display:flex; gap:7px; }
.ip-number-pagination .btn { padding:9px 11px; font-size:12px; }
.ip-empty { margin:0; padding:24px; border:1px dashed var(--line); border-radius:12px; line-height:1.6; color:var(--muted); text-align:center; }
.ip-customer-pagination { flex-wrap:wrap; }

/* Keep privileged actions in their existing dialog, but use a single scroll
   container so the appended health section can never be clipped by flex sizing. */
#instanceDetailModal { width:min(1180px,calc(100vw - 24px)); max-width:calc(100vw - 24px); padding:0; }
#instanceDetailModal .instance-detail-card { display:block; width:100%; max-height:calc(100dvh - 32px); overflow-y:auto; overflow-x:hidden; }
#instanceDetailModal .instance-detail-body { overflow:visible; padding:18px; }
#instanceDetailModal .instance-detail-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
#instanceDetailModal .kv { display:grid; grid-template-columns:minmax(0,1fr); gap:6px; padding:11px 0; }
#instanceDetailModal .kv>div { min-width:0; max-width:100%; white-space:normal; word-break:normal; overflow-wrap:anywhere; }
#instanceDetailModal .instance-detail-actions { overflow:visible; max-height:none; padding:16px 18px; }
#instanceDetailModal .instance-detail-actions .btn { white-space:normal; }
#instanceDetailModal #detailInstanceHealth { padding:18px; }
#instanceDetailModal .instance-health { min-width:0; overflow-wrap:anywhere; }
#instanceDetailModal .instance-health dd { margin-left:0; }
#instanceDetailModal .instance-health small,#instanceDetailModal .instance-health>a { display:block; margin-top:12px; }
@media(max-width:1000px) {
  .ip-tabs { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .ip-number-facts,.ip-detail-content .instance-health dl { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ip-advanced-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:640px) {
  .ip-explorer { padding:13px; }
  .ip-heading { align-items:flex-start; gap:12px; }
  .ip-heading h2 { font-size:24px; }
  .ip-heading p { font-size:13px; }
  .ip-inventory-total { display:none; }
  .ip-overview { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .ip-overview-item { padding:11px; }
  .ip-overview-item>span { font-size:12px; }
  .ip-customer-summary { padding:13px; flex-wrap:wrap; gap:10px; }
  .ip-customer-totals { width:100%; justify-content:flex-start; padding-left:50px; }
  .ip-customer-toggle { margin-left:auto; }
  .ip-customer-body { padding:10px; }
  .ip-tabs { display:flex; overflow-x:auto; padding:6px; scroll-snap-type:x proximity; }
  .ip-tab { flex:0 0 auto; min-width:126px; scroll-snap-align:start; }
  .ip-number-card { padding:13px; }
  .ip-number-title h3 { font-size:18px; }
  .ip-number-header { gap:8px; }
  .ip-number-facts { gap:8px; }
  .ip-number-facts>div { padding:10px; }
  .ip-detail-content { padding:12px; }
  .ip-detail-grid { grid-template-columns:1fr; }
  .ip-number-actions .btn { flex:1 1 130px; }
  .ip-number-pagination { justify-content:center; }
  #instanceDetailModal .instance-detail-grid { grid-template-columns:1fr; }
  #instanceDetailModal .instance-detail-body { padding:12px; }
}
@media(prefers-reduced-motion:reduce) { .ip-explorer * { scroll-behavior:auto; transition:none; } }

/* Number disclosure mirrors the Flow information hierarchy; all actions remain
   in the same card, without a second advanced-actions dialog. */
.ip-number-card { padding:0; overflow:hidden; }
.ip-number-card>.ip-number-details { border:0; margin:0; }
.ip-number-details>.ip-number-summary { display:flex; align-items:center; gap:20px; padding:18px; }
.ip-number-details[open]>.ip-number-summary>span { transform:none; }
.ip-number-summary .ip-number-title { display:grid; gap:6px; flex:1; min-width:0; }
.ip-number-heading { font-size:20px; line-height:1.4; overflow-wrap:anywhere; color:var(--text); }
.ip-number-name { font-size:14px; font-weight:500; overflow-wrap:anywhere; }
.ip-number-dates { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 20px; flex:0 1 300px; min-width:0; }
.ip-number-sync { display:grid; gap:5px; font-size:11px; font-weight:400; color:var(--muted); max-width:190px; }
.ip-number-sync strong { font-size:12px; font-weight:600; color:var(--text); }
.ip-number-status { display:grid; gap:7px; justify-items:end; min-width:90px; }
.ip-copy-value { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; }
.ip-copy-value code { white-space:normal; overflow-wrap:anywhere; min-width:0; }
.ip-copy-value .btn { flex-shrink:0; padding:5px 8px; font-size:11px; }
.ip-risk-notice { padding:14px; border:1px solid var(--line); border-radius:11px; background:var(--panel-2); font-size:13px; }
.ip-risk-notice p { margin:7px 0 0; }
.ip-risk-blocked { border-color:var(--warning); background:color-mix(in srgb,var(--warning) 7%,var(--panel)); }
.ip-credentials { border:1px solid var(--line); border-radius:10px; padding:14px; }
.ip-credentials>summary { font-weight:600; font-size:13px; cursor:pointer; }
.ip-token { display:block; overflow-wrap:anywhere; white-space:normal; background:var(--panel-2); padding:12px; margin:12px 0; user-select:all; }
/* Flow-style visual feedback: the same highlight is available to keyboard
   users; hover motion is restricted to precise pointers and respects settings. */
.ip-explorer{--ip-hover-line:color-mix(in srgb,var(--primary) 42%,var(--line));--ip-hover-wash:color-mix(in srgb,var(--primary) 8%,var(--panel));--ip-hover-shadow:0 7px 18px color-mix(in srgb,var(--primary) 10%,transparent)}
.ip-customer,.ip-number-card{transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.ip-customer-summary,.ip-number-summary,.ip-number-heading,.ip-customer-title>strong{transition:background-color .2s ease,color .2s ease}
.ip-number-facts>div,.ip-detail-grid>div{transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease;position:relative}
.ip-number-facts>div{border:1px solid transparent}
.ip-detail-grid>div{border-radius:8px;padding-inline:9px}
.ip-customer:has(>.ip-customer-summary:focus-visible),.ip-number-card:has(>.ip-number-details>.ip-number-summary:focus-visible){border-color:var(--ip-hover-line);box-shadow:var(--ip-hover-shadow)}
.ip-customer-summary:focus-visible,.ip-number-details>.ip-number-summary:focus-visible{background:var(--ip-hover-wash);outline:3px solid var(--primary);outline-offset:-3px}
.ip-customer-summary:focus-visible .ip-customer-title>strong,.ip-number-summary:focus-visible .ip-number-heading{color:var(--primary-2)}
.ip-number-facts>div:focus-within,.ip-detail-grid>div:focus-within{background:var(--ip-hover-wash);border-color:var(--ip-hover-line);box-shadow:var(--ip-hover-shadow)}
@media(hover:hover) and (pointer:fine){
 .ip-customer-summary:hover,.ip-number-details>.ip-number-summary:hover{background:var(--ip-hover-wash)}
 .ip-customer-summary:hover .ip-customer-title>strong,.ip-number-summary:hover .ip-number-heading{color:var(--primary-2)}
 .ip-customer:has(>.ip-customer-summary:hover),.ip-number-card:has(>.ip-number-details>.ip-number-summary:hover){border-color:var(--ip-hover-line);box-shadow:var(--ip-hover-shadow)}
 .ip-customer:not([open]):has(>.ip-customer-summary:hover),.ip-number-card:has(>.ip-number-details:not([open])>.ip-number-summary:hover){transform:translateY(-2px)}
 .ip-number-facts>div:hover,.ip-detail-grid>div:hover{background:var(--ip-hover-wash);border-color:var(--ip-hover-line);box-shadow:var(--ip-hover-shadow)}
}
@media(prefers-reduced-motion:reduce){.ip-customer,.ip-number-card,.ip-customer-summary,.ip-number-summary,.ip-number-heading,.ip-customer-title>strong,.ip-number-facts>div,.ip-detail-grid>div{transition:none!important;transform:none!important}}
@media(max-width:640px) {
 .ip-number-details>.ip-number-summary { flex-wrap:wrap; gap:12px; padding:14px; }
 .ip-number-summary .ip-number-title { flex:1 1 calc(100% - 120px); }
 .ip-number-heading { font-size:17px; }
 .ip-number-dates { order:3; flex:1 1 100%; gap:12px; }
 .ip-number-sync { max-width:none; overflow-wrap:anywhere; }
 .ip-number-status { max-width:110px; }
 .ip-number-status .badge { white-space:normal; text-align:center; }
 .ip-copy-value { align-items:center; }
}

/* Number health and identity stay visible without opening a second dialog. */
.ip-whatsapp-icon{width:46px;height:46px;flex:0 0 46px;display:grid;place-items:center;border-radius:13px;background:color-mix(in srgb,var(--success) 8%,var(--panel));border:1px solid color-mix(in srgb,var(--success) 18%,var(--line))}
.ip-whatsapp-icon img{width:36px;height:36px;object-fit:contain}
.ip-field-note{display:block;margin-top:6px;font-size:11px;font-weight:400;line-height:1.55;color:var(--muted)}
.ip-number-facts>[data-health-tone="success"]{border-color:color-mix(in srgb,var(--success) 25%,var(--line));background:color-mix(in srgb,var(--success) 5%,var(--panel))}
.ip-number-facts>[data-health-tone="warning"]{border-color:color-mix(in srgb,var(--warning) 40%,var(--line));background:color-mix(in srgb,var(--warning) 6%,var(--panel))}
.ip-number-facts>[data-health-tone="danger"]{border-color:color-mix(in srgb,var(--danger) 35%,var(--line));background:color-mix(in srgb,var(--danger) 6%,var(--panel))}
.ip-detail-content .instance-health dl>.hc-health-fact{display:block;padding:12px}
.ip-detail-content .instance-health dl>[data-health-tone="success"]{background:color-mix(in srgb,var(--success) 5%,var(--panel))}
.ip-detail-content .instance-health dl>[data-health-tone="warning"]{background:color-mix(in srgb,var(--warning) 7%,var(--panel))}
.ip-detail-content .instance-health dl>[data-health-tone="danger"]{background:color-mix(in srgb,var(--danger) 6%,var(--panel))}
.ip-detail-content .instance-health .hc-state{font-weight:600}
.ip-number-actions .btn-warning{color:var(--warning);border-color:color-mix(in srgb,var(--warning) 45%,var(--line));background:color-mix(in srgb,var(--warning) 8%,var(--panel))}
@media(max-width:640px){
 .ip-number-summary .ip-number-title{flex:1 1 calc(100% - 60px)}
 .ip-whatsapp-icon{width:40px;height:40px;flex-basis:40px}.ip-whatsapp-icon img{width:30px;height:30px}
 .ip-number-status{max-width:none;display:flex;flex-wrap:wrap;align-items:center;flex:1 1 100%;justify-content:flex-start;padding-left:52px}
 .ip-number-dates{padding-left:52px}
 .ip-number-facts,.ip-detail-content .instance-health dl{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:420px){.ip-number-facts,.ip-detail-content .instance-health dl{grid-template-columns:1fr}}

/* Categories keep Meta alerts distinct from the technical lifecycle. */
.ip-overview{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.ip-overview-item.banned>strong{color:var(--danger)}
.ip-overview-item.restricted>strong,.ip-overview-item.verification_pending>strong{color:var(--warning)}
.ip-overview-item.processing>strong{color:var(--primary-2)}
.ip-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}
.ip-tab[data-tab-tone="success"]{--ip-tab-color:var(--success)}
.ip-tab[data-tab-tone="warning"]{--ip-tab-color:var(--warning)}
.ip-tab[data-tab-tone="danger"]{--ip-tab-color:var(--danger)}
.ip-tab[data-tab-tone="info"]{--ip-tab-color:var(--primary-2)}
.ip-tab[data-tab-tone="purple"]{--ip-tab-color:#b5a0ff}
.ip-tab[data-tab-tone="neutral"]{--ip-tab-color:var(--muted)}
.ip-tab{display:grid;grid-template-columns:25px minmax(0,1fr) auto;gap:8px;text-align:left;color:var(--ip-tab-color,var(--muted));border-color:color-mix(in srgb,var(--ip-tab-color,var(--muted)) 30%,var(--line));background:color-mix(in srgb,var(--ip-tab-color,var(--muted)) 7%,var(--panel))}
.ip-tab>.hc-category-icon{width:23px;height:23px;padding:3px;border-radius:7px;background:color-mix(in srgb,var(--ip-tab-color,var(--muted)) 12%,var(--panel));box-sizing:border-box}
.ip-tab>span{min-width:0;line-height:1.4;overflow-wrap:anywhere}
.ip-tab>strong{color:var(--ip-tab-color,var(--text));background:color-mix(in srgb,var(--ip-tab-color,var(--muted)) 9%,var(--panel))}
.ip-tab:hover{color:var(--ip-tab-color,var(--text));background:color-mix(in srgb,var(--ip-tab-color,var(--muted)) 12%,var(--panel))}
.ip-tab[aria-selected="true"]{color:var(--ip-tab-color,var(--primary-2));border-color:var(--ip-tab-color,var(--primary));background:color-mix(in srgb,var(--ip-tab-color,var(--primary)) 14%,var(--panel));box-shadow:inset 0 -3px 0 var(--ip-tab-color,var(--primary)),0 2px 5px #0001}
.ip-overview-item{--ip-overview-color:var(--muted);border-color:color-mix(in srgb,var(--ip-overview-color) 30%,var(--line));background:color-mix(in srgb,var(--ip-overview-color) 6%,var(--panel))}
.ip-overview-item[data-tab-tone="success"]{--ip-overview-color:var(--success)}
.ip-overview-item[data-tab-tone="info"]{--ip-overview-color:var(--primary-2)}
.ip-overview-item[data-tab-tone="warning"]{--ip-overview-color:var(--warning)}
.ip-overview-item[data-tab-tone="danger"]{--ip-overview-color:var(--danger)}
.ip-overview-item>span{display:flex;align-items:center;gap:7px;min-width:0;color:var(--ip-overview-color)}
.ip-overview-item>span>.hc-category-icon{flex:0 0 20px}
.ip-overview-item{font:inherit;text-align:left;min-width:0;min-height:66px;cursor:pointer}
.ip-overview-item>span{line-height:1.45;overflow-wrap:anywhere}
.ip-overview-item>strong{color:var(--ip-overview-color);flex-shrink:0}
.ip-overview-item:hover{background:color-mix(in srgb,var(--ip-overview-color) 12%,var(--panel))}
.ip-overview-item[aria-pressed="true"]{border-color:var(--ip-overview-color);box-shadow:inset 0 -3px 0 var(--ip-overview-color)}
.ip-overview-item:focus-visible{outline:3px solid var(--primary);outline-offset:3px}
.ip-tab:disabled{cursor:not-allowed;opacity:.55}
.ip-history-icon{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:12px;color:var(--primary-2);background:color-mix(in srgb,var(--primary-2) 10%,var(--panel))}
.ip-history-count,.ip-history-subtype{color:var(--primary-2);font-size:11px;line-height:1.5;overflow-wrap:anywhere}
.ip-history-subtype{padding:4px 7px;border:1px solid color-mix(in srgb,var(--primary-2) 25%,var(--line));border-radius:7px;background:color-mix(in srgb,var(--primary-2) 6%,var(--panel))}
.ip-number-card{--ip-state-color:var(--muted);border-inline-start:3px solid var(--ip-state-color)}
.ip-number-card[data-lifecycle-tone="success"]{--ip-state-color:var(--success)}
.ip-number-card[data-lifecycle-tone="warning"]{--ip-state-color:var(--warning)}
.ip-number-card[data-lifecycle-tone="danger"]{--ip-state-color:var(--danger)}
.ip-number-card[data-lifecycle-tone="info"]{--ip-state-color:var(--primary-2)}
.ip-number-card[data-lifecycle-tone="purple"]{--ip-state-color:#b5a0ff}
.ip-number-card:has(>.ip-number-details>.ip-number-summary:hover){border-inline-start-color:var(--ip-state-color)}
.ip-number-card>[data-instance-disconnect-progress]:not([hidden]){margin:12px;border-radius:10px;line-height:1.6}
.ip-number-card>[data-instance-disconnect-progress] p{margin:6px 0 0}
html[data-theme="light"] .ip-tab[data-tab-tone="purple"]{--ip-tab-color:#6941c6}
html[data-theme="light"] .ip-number-card[data-lifecycle-tone="purple"]{--ip-state-color:#6941c6}
html[data-theme="light"] .ip-tab[data-tab-tone="success"],html[data-theme="light"] .ip-overview-item[data-tab-tone="success"]{--ip-tab-color:#087f5b;--ip-overview-color:#087f5b}
html[data-theme="light"] .ip-tab[data-tab-tone="warning"],html[data-theme="light"] .ip-overview-item[data-tab-tone="warning"]{--ip-tab-color:#995800;--ip-overview-color:#995800}
html[data-theme="light"] .ip-tab[data-tab-tone="danger"],html[data-theme="light"] .ip-overview-item[data-tab-tone="danger"]{--ip-tab-color:#b42335;--ip-overview-color:#b42335}
@media(max-width:1100px){.ip-overview{grid-template-columns:repeat(3,minmax(0,1fr))}.ip-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.ip-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.ip-tabs{display:flex}}
@media(max-width:640px){.ip-tab{min-width:175px;max-width:230px}.ip-history-card .ip-number-summary{align-items:flex-start}}
