/* Mark Italia parts dashboard v2 (/markitalia-parts), NatureJAB site tokens */
:root{
  --dark-bg:#0D0E0A; --dark-2:#14150F; --card:#1A1B15; --border:#2A2B24;
  --cream:#EDE7D3; --green:#5DBA63; --orange:#FF5B1F; --muted:#A8A393;
  --display:"Archivo Black",sans-serif; --body:"Bitter",Georgia,serif; --mono:"JetBrains Mono",monospace;
  --ctl-h:36px; --gap:12px; --hair:#22231D;
}
body{ background:var(--dark-bg); }
#mip-root{ background:var(--dark-bg); color:var(--cream); font-family:var(--body); font-size:14px; line-height:1.45; min-height:70vh; --mip-bar-h:96px; }
#mip-root *{ box-sizing:border-box; }
#mip-root :focus-visible{ outline:2px solid var(--green); outline-offset:2px; }
.mip-wrap{ max-width:1240px; margin:0 auto; padding:24px 20px 56px; }
.mip-sr{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }

/* header */
.mip-eyebrow{ margin:0 0 6px; font-family:var(--mono); font-size:11px; font-weight:700; letter-spacing:2px; color:var(--orange); }
.mip-head-row{ display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:6px 16px; }
.mip-h1{ margin:0; font-family:var(--display); font-weight:400; text-transform:uppercase; font-size:32px; line-height:1.05; letter-spacing:-.5px; color:var(--cream); }
.mip-updated{ margin:0; font-family:var(--mono); font-size:11px; letter-spacing:1px; text-transform:uppercase; color:var(--muted); }
.mip-intro{ margin:8px 0 0; max-width:760px; color:var(--muted); font-size:14.5px; }
.mip-intro a, .mip-foot a{ color:var(--green); }

/* KPI strip */
.mip-kpis{ display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); margin:18px 0 0; border:1px solid var(--border); background:var(--card); }
.mip-kpi{ padding:8px 14px 9px; border-left:1px solid var(--border); min-width:0; }
.mip-kpi:first-child{ border-left:none; }
.mip-kpi dt{ font-family:var(--mono); font-size:10px; letter-spacing:1.5px; text-transform:uppercase; color:var(--muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.mip-kpi dd{ margin:2px 0 0; font-family:var(--mono); font-weight:700; font-size:22px; line-height:1.1; font-variant-numeric:tabular-nums; color:var(--cream); }
.mip-kpi-open dd{ color:var(--orange); }
.mip-kpi-cad dd{ color:var(--green); }

/* control bar */
.mip-bar{ position:sticky; top:0; z-index:30; background:rgba(13,14,10,.97); border-bottom:1px solid var(--border); margin:16px -20px 0; padding:10px 20px; }
.mip-bar-in{ max-width:1200px; margin:0 auto; display:flex; flex-wrap:wrap; align-items:flex-end; gap:var(--gap); }
.mip-f{ display:flex; flex-direction:column; gap:4px; min-width:0; }
.mip-f-search{ flex:1 1 220px; }
.mip-f-lang{ margin-left:auto; }
.mip-lab{ font-family:var(--mono); font-size:10px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; color:var(--muted); line-height:14px; }
.mip-in{ height:var(--ctl-h); width:100%; background:var(--dark-2); border:1px solid var(--border); border-radius:0; color:var(--cream); font-family:var(--body); font-size:14px; padding:0 10px; }
.mip-in:focus{ border-color:var(--green); }
.mip-in::placeholder{ color:#77735f; }
.mip-sel{ min-width:170px; max-width:240px; -webkit-appearance:none; appearance:none; padding-right:28px; cursor:pointer;
  background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);
  background-position:calc(100% - 15px) 15px,calc(100% - 10px) 15px; background-size:5px 5px; background-repeat:no-repeat; }
.mip-sel option{ background:var(--dark-2); color:var(--cream); }
.mip-checks{ display:flex; flex-wrap:wrap; gap:0 14px; height:var(--ctl-h); align-items:center; }
.mip-check{ display:inline-flex; align-items:center; gap:7px; cursor:pointer; font-size:13.5px; white-space:nowrap; }
.mip-check input{ width:16px; height:16px; margin:0; accent-color:var(--green); cursor:pointer; }
.mip-n{ font-family:var(--mono); font-size:11px; color:var(--muted); font-variant-numeric:tabular-nums; }
.mip-seg{ display:inline-flex; height:var(--ctl-h); border:1px solid var(--border); }
.mip-seg button{ min-width:44px; height:100%; border:0; background:var(--dark-2); color:var(--muted); font-family:var(--mono); font-size:12px; font-weight:700; letter-spacing:1px; cursor:pointer; }
.mip-seg button + button{ border-left:1px solid var(--border); }
.mip-seg button[aria-pressed="true"]{ background:var(--green); color:var(--dark-bg); }
.mip-btn{ height:var(--ctl-h); display:inline-flex; align-items:center; gap:8px; cursor:pointer; font-family:var(--mono); font-size:12px; font-weight:700; letter-spacing:1px; text-transform:uppercase; background:var(--green); color:var(--dark-bg); border:1px solid var(--green); padding:0 14px; white-space:nowrap; }
.mip-btn:hover{ filter:brightness(1.08); }
.mip-btn[disabled]{ opacity:.55; cursor:wait; }
.mip-caret{ font-size:10px; }
.mip-dl{ position:relative; }
.mip-menu{ position:absolute; right:0; top:calc(100% + 4px); z-index:40; min-width:250px; background:var(--card); border:1px solid var(--border); box-shadow:0 10px 30px rgba(0,0,0,.45); padding:4px 0; }
.mip-menu[hidden]{ display:none; }
.mip-mi{ display:flex; flex-direction:column; align-items:flex-start; gap:1px; width:100%; border:0; background:transparent; color:var(--cream); text-align:left; padding:8px 14px; cursor:pointer; font-family:var(--body); }
.mip-mi b{ font-size:13.5px; font-weight:600; }
.mip-mi span{ font-family:var(--mono); font-size:10.5px; color:var(--muted); letter-spacing:.5px; }
.mip-mi:hover, .mip-mi:focus{ background:var(--dark-2); outline:none; }
.mip-mi:focus-visible{ box-shadow:inset 2px 0 0 var(--green); }

/* helper line */
.mip-help{ margin:10px 0 10px; font-family:var(--mono); font-size:11.5px; color:var(--muted); letter-spacing:.3px; }
.mip-sum{ color:var(--cream); }
.mip-link{ border:0; background:none; padding:0 0 0 8px; color:var(--green); font-family:var(--mono); font-size:11.5px; text-decoration:underline; cursor:pointer; }

/* table */
.mip-table{ width:100%; border-collapse:separate; border-spacing:0; border:1px solid var(--border); background:var(--card); table-layout:fixed; }
.mip-table thead th{ position:sticky; top:var(--mip-bar-h); z-index:10; background:var(--dark-2); text-align:left; font-family:var(--mono); font-size:10px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; color:var(--muted); padding:8px 10px; border-bottom:1px solid var(--border); }
.mip-c-n{ width:44px; }
.mip-c-qty{ width:84px; }
.mip-c-dims{ width:34%; }
.mip-c-files{ width:116px; }
.mip-c-st{ width:96px; }
.mip-c-act{ width:64px; }
.mip-table thead .mip-c-qty{ text-align:right; }
.mip-table td{ padding:7px 10px; height:44px; vertical-align:middle; border-bottom:1px solid var(--hair); }
.mip-r:hover td{ background:rgba(93,186,99,.06); }
.mip-r.mip-open td{ border-bottom-color:transparent; background:rgba(93,186,99,.04); }
td.mip-c-n{ font-family:var(--mono); font-size:12px; color:var(--muted); font-variant-numeric:tabular-nums; }
td.mip-c-qty{ font-family:var(--mono); font-size:12px; text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap; }
.mip-pn{ display:flex; align-items:center; gap:7px; min-width:0; }
.mip-name{ font-size:14px; font-weight:600; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; min-width:0; }
.mip-pnote{ margin-top:1px; font-size:12px; color:var(--muted); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.mip-tag-cad{ flex:0 0 auto; font-family:var(--mono); font-size:9px; font-weight:700; letter-spacing:1px; background:var(--green); color:var(--dark-bg); padding:1px 5px; }
.mip-dims{ display:flex; flex-wrap:wrap; gap:4px; align-items:center; }
.mip-dim{ font-family:var(--mono); font-size:11.5px; color:var(--cream); background:var(--dark-2); border:1px solid var(--border); padding:1px 6px; white-space:nowrap; font-variant-numeric:tabular-nums; max-width:100%; overflow:hidden; text-overflow:ellipsis; }
.mip-alt{ color:var(--muted); }
.mip-more{ font-family:var(--mono); font-size:11px; font-weight:700; color:var(--green); background:transparent; border:1px solid var(--border); padding:1px 7px; cursor:pointer; }
.mip-more:hover{ border-color:var(--green); }
.mip-more[aria-expanded="true"]{ background:var(--green); border-color:var(--green); color:var(--dark-bg); }
.mip-files{ display:flex; flex-wrap:wrap; gap:4px; }
.mip-file{ display:inline-flex; align-items:center; gap:4px; height:22px; padding:0 6px; text-decoration:none; color:var(--green); border:1px solid var(--green); font-family:var(--mono); font-size:10.5px; font-weight:700; letter-spacing:.5px; max-width:100%; }
.mip-file:hover{ background:rgba(93,186,99,.12); }
.mip-file-cad{ background:var(--green); color:var(--dark-bg); }
.mip-file-cad:hover{ background:var(--green); filter:brightness(1.1); }
.mip-fl{ font-family:var(--body); font-weight:400; font-size:12.5px; letter-spacing:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; min-width:0; }
.mip-fx{ font-family:var(--mono); font-size:10.5px; opacity:.75; }
.mip-x .mip-file{ height:26px; }
.mip-pill{ display:inline-block; font-family:var(--mono); font-size:10px; font-weight:700; letter-spacing:1px; text-transform:uppercase; padding:2px 8px; border:1px solid var(--border); white-space:nowrap; }
.mip-pill-needed{ color:var(--orange); border-color:var(--orange); }
.mip-pill-offered{ color:var(--green); border-color:var(--green); }
.mip-pill-covered{ background:var(--green); border-color:var(--green); color:var(--dark-bg); }
.mip-offer{ font-family:var(--mono); font-size:11px; color:var(--green); text-decoration:none; border-bottom:1px solid transparent; }
.mip-offer:hover{ border-bottom-color:var(--green); }

/* group header rows */
.mip-gr th, .mip-gr td{ background:var(--dark-bg); border-bottom:1px solid var(--border); border-top:1px solid var(--border); padding:6px 10px; height:auto; text-align:left; }
.mip-gr:first-child th{ border-top:none; }
.mip-gname{ font-family:var(--mono); font-size:11px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; color:var(--cream); }
.mip-gn{ margin-left:12px; font-family:var(--mono); font-size:11px; color:var(--muted); font-weight:400; }

/* expansion */
.mip-xr td{ height:auto; padding:0 10px 12px 54px; background:rgba(93,186,99,.04); }
.mip-x{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:10px 22px; padding-top:4px; }
.mip-xb p{ margin:2px 0 0; font-size:13px; color:var(--cream); }
.mip-xl{ display:block; margin-bottom:4px; font-family:var(--mono); font-size:10px; letter-spacing:1.5px; text-transform:uppercase; color:var(--muted); }
.mip-xspec{ color:var(--muted) !important; }

.mip-empty{ padding:28px 10px !important; text-align:center !important; font-family:var(--mono); font-size:12px; color:var(--muted); }
.mip-foot{ margin-top:18px; color:var(--muted); font-size:13px; }

/* mobile: stacked compact rows */
@media (max-width:719px){
  .mip-wrap{ padding:18px 16px 44px; }
  .mip-h1{ font-size:26px; }
  .mip-kpis{ grid-template-columns:repeat(5,minmax(0,1fr)); }
  .mip-kpi{ padding:6px 6px 7px; }
  .mip-kpi dt{ font-size:8.5px; letter-spacing:.8px; }
  .mip-kpi dd{ font-size:17px; }
  .mip-bar{ margin:14px -16px 0; padding:8px 16px; position:static; }
  .mip-bar-in{ display:grid; grid-template-columns:1fr 1fr; gap:8px 10px; align-items:end; }
  .mip-f-search, .mip-f-show{ grid-column:1 / -1; }
  .mip-sel{ min-width:0; max-width:none; }
  .mip-checks{ height:auto; min-height:var(--ctl-h); gap:4px 14px; }
  .mip-f-lang{ margin-left:0; }
  .mip-dl .mip-btn{ width:100%; justify-content:center; }
  .mip-menu{ left:auto; right:0; min-width:230px; }
  .mip-table, .mip-table tbody, .mip-table tr, .mip-table td, .mip-table th{ display:block; }
  .mip-table{ table-layout:auto; }
  .mip-table thead{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }
  .mip-r{ display:grid !important; grid-template-columns:auto minmax(0,1fr) auto; grid-template-areas:"part part st" "qty dims act" "files files files"; gap:4px 8px; padding:9px 12px; border-bottom:1px solid var(--hair); }
  .mip-table td{ height:auto; padding:0; border:0; width:auto; }
  td.mip-c-n{ display:none; }
  td.mip-c-part{ grid-area:part; min-width:0; }
  td.mip-c-st{ grid-area:st; }
  td.mip-c-act{ grid-area:act; text-align:right; }
  td.mip-c-qty{ grid-area:qty; text-align:left; }
  td.mip-c-dims{ grid-area:dims; min-width:0; }
  td.mip-c-files{ grid-area:files; }
  td.mip-c-files:empty{ display:none; }
  .mip-r td.mip-c-qty, .mip-r td.mip-c-dims{ align-self:center; }
  .mip-c-dims .mip-dim:nth-child(n+3){ display:none; }
  .mip-xr td{ padding:0 12px 12px; }
  .mip-x{ grid-template-columns:1fr; }
  .mip-x .mip-dim{ display:inline-block !important; white-space:normal; }
}
@media (prefers-reduced-motion:reduce){
  #mip-root *{ transition:none !important; animation:none !important; scroll-behavior:auto !important; }
}

/* Jabaroma brand showcase from the sitewide footer is not shown on the parts page (Apollo, 2026-10-18) */
.jabaroma-section{ display:none !important; }
