/* RASHTRA v39.5 — Phase 31: Trade (Import & Export) styles. Uses the existing design tokens. */
.p31-pos{ color:var(--teal); }
.p31-neg{ color:var(--red); }
.p31-faint{ color:var(--text-faint); font-size:var(--fs-xs); line-height:1.5; }
.p31-kpis{ gap:10px; }
.p31-kpi{ padding:12px; min-width:0; }
.p31-kv{ font-size:var(--fs-xl); font-family:var(--mono); overflow-wrap:anywhere; }
.p31-bar{ height:4px; background:var(--line); border-radius:2px; overflow:hidden; margin-top:5px; }
.p31-bar-fill{ height:100%; background:var(--text-dim); }
.p31-fill-pos{ background:var(--teal); opacity:.75; }
.p31-fill-neg{ background:var(--red); opacity:.65; }
.p31-subtabs{ display:flex; flex-wrap:wrap; gap:6px; margin:14px 0 10px; }
.p31-subtab, .p31-chip{ background:transparent; border:1px solid var(--line); color:var(--text-dim); border-radius:4px; padding:8px 12px; min-height:44px; cursor:pointer; font:inherit; font-size:var(--fs-sm); }
.p31-subtab.active, .p31-chip.active{ border-color:var(--accent,var(--teal)); color:var(--accent-text,var(--text)); background:var(--accent-tint-strong,rgba(0,0,0,.12)); font-weight:600; }
.p31-subtab:focus-visible, .p31-chip:focus-visible, .p31-tr:focus-visible, .p31-prow:focus-visible, .p31-heat-cell:focus-visible, .p31-link:focus-visible{ outline:2px solid var(--focus-ring,var(--teal)); outline-offset:2px; }
.p31-tools{ display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-bottom:10px; }
.p31-tools select{ margin-left:6px; min-height:36px; background:var(--panel-sunken, transparent); color:var(--text); border:1px solid var(--line); border-radius:6px; padding:4px 8px; }
.p31-chips{ display:flex; flex-wrap:wrap; gap:6px; }
.p31-chip{ padding:6px 10px; min-height:36px; font-size:var(--fs-xs); }
.p31-table{ padding:0; overflow:hidden; }
.p31-tr{ display:grid; grid-template-columns:2fr 1.2fr .9fr 1.1fr; gap:10px; align-items:center; width:100%; padding:10px 12px; border:0; border-top:1px solid var(--line); background:transparent; color:var(--text); text-align:left; font:inherit; font-size:var(--fs-sm); cursor:pointer; }
.p31-tr:hover{ background:rgba(127,127,127,.06); }
.p31-th{ cursor:default; color:var(--text-dim); font-size:var(--fs-xs); text-transform:uppercase; letter-spacing:.04em; border-top:0; }
.p31-th:hover{ background:transparent; }
.p31-pill{ display:inline-block; font-size:var(--fs-2xs); padding:2px 7px; border-radius:999px; border:1px solid var(--line); color:var(--text-dim); margin-left:4px; white-space:nowrap; }
.p31-fta{ border-color:var(--teal); color:var(--teal); }
.p31-risk-high{ border-color:var(--red); color:var(--red); }
.p31-risk-medium{ border-color:var(--gold); color:var(--gold); }
.p31-risk-low{ border-color:var(--teal); color:var(--teal); }
.p31-heat{ display:grid; grid-template-columns:repeat(auto-fill, minmax(130px,1fr)); gap:8px; margin-top:8px; }
.p31-heat-cell{ display:flex; flex-direction:column; gap:2px; padding:10px; border-radius:8px; border:1px solid var(--line); background:transparent; color:var(--text); text-align:left; font:inherit; cursor:pointer; min-height:44px; }
.p31-heat-cell.p31-risk-high{ background:rgba(220,60,60,.14); }
.p31-heat-cell.p31-risk-medium{ background:rgba(212,170,60,.12); }
.p31-heat-cell.p31-risk-low{ background:rgba(40,170,150,.10); }
.p31-heat-name{ font-size:var(--fs-xs); font-weight:600; }
.p31-heat-val{ font-family:var(--mono); font-size:var(--fs-lg); }
.p31-trend{ display:flex; justify-content:space-between; align-items:center; gap:8px; padding:4px 0; font-size:var(--fs-sm); color:var(--text-dim); }
.p31-spark{ color:var(--text-dim); max-width:55%; height:auto; }
.p31-spark.p31-pos{ color:var(--teal); } .p31-spark.p31-neg{ color:var(--red); }
.p31-list{ margin:6px 0 0; padding-left:18px; font-size:var(--fs-xs); color:var(--text-dim); }
.p31-link{ background:none; border:0; padding:0; color:var(--teal); cursor:pointer; font:inherit; text-decoration:underline; }
.p31-prow{ display:grid; grid-template-columns:1.4fr 1.2fr 1.4fr; gap:10px; align-items:center; width:100%; padding:9px 4px; border:0; border-top:1px solid var(--line); background:transparent; color:var(--text); text-align:left; font:inherit; font-size:var(--fs-sm); cursor:pointer; min-height:44px; }
.p31-prow:first-child{ border-top:0; }
.p31-pnum{ font-family:var(--mono); font-size:var(--fs-xs); text-align:right; }
.p31-srow{ display:grid; grid-template-columns:2.4fr .8fr .8fr; gap:10px; padding:7px 0; border-top:1px solid var(--line); font-size:var(--fs-sm); font-family:inherit; }
.p31-srow:first-child{ border-top:0; }
.p31-kvrow{ display:flex; justify-content:space-between; gap:10px; padding:5px 0; border-top:1px solid var(--line); font-size:var(--fs-sm); }
.p31-riskcard .p31-kvrow:first-of-type{ margin-top:6px; }
.p31-actrow{ display:flex; flex-wrap:wrap; gap:6px; margin-top:10px; }
.p31-actrow .btn{ min-height:40px; }
.p31-acard p{ margin:6px 0; }
.p31-actlist{ display:flex; flex-direction:column; gap:6px; }
.p31-actlist .btn{ min-height:44px; }
.p31-drawer .grid{ margin:10px 0; }
@media (max-width: 600px){
  .p31-tr{ grid-template-columns:1.6fr 1fr; }
  .p31-tr > span:nth-child(3), .p31-tr > span:nth-child(4){ font-size:var(--fs-xs); }
  .p31-prow{ grid-template-columns:1fr 1fr; }
  .p31-pnum{ grid-column:1 / -1; text-align:left; }
  .p31-kv{ font-size:var(--fs-lg); }
}
