.industry-panel {
  max-width: 820px;
  margin: 0 auto;
}

.industry-chat__thread {
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
  margin-bottom: 1.25rem;
  max-height: 420px;
  overflow-y: auto;
  padding: 0.25rem 0;
}

.industry-msg {
  display: flex;
  gap: 0.65rem;
  align-items: flex-start;
}

.industry-msg--user {
  flex-direction: row-reverse;
}

.industry-msg__avatar {
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: linear-gradient(135deg, #004d4d, #0a7a72);
  color: #fff;
  font-size: 0.62rem;
  font-weight: 800;
  display: grid;
  place-items: center;
  letter-spacing: -0.02em;
}

.industry-msg--user .industry-msg__avatar {
  background: linear-gradient(135deg, #f59d23, #d97f0a);
}

.industry-msg__bubble {
  flex: 1;
  background: #fff;
  border: 1px solid #d8e4e4;
  border-radius: 14px;
  padding: 0.75rem 1rem;
  font-size: 0.92rem;
  line-height: 1.7;
  box-shadow: 0 2px 8px rgba(0, 77, 77, 0.05);
}

.industry-msg--user .industry-msg__bubble {
  background: #f0faf9;
  border-color: #b8e0dc;
}

.industry-msg__bubble p {
  margin: 0;
}

.industry-msg__bubble.typing::after {
  content: "▋";
  animation: industry-blink 0.9s step-end infinite;
  margin-right: 2px;
  color: #0a7a72;
}

@keyframes industry-blink {
  50% { opacity: 0; }
}

.industry-result {
  margin-top: 1rem;
  padding: 1.25rem;
  background: #fff;
  border: 1px solid #d8e4e4;
  border-radius: var(--radius, 18px);
}

.industry-result__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 1rem;
  margin-bottom: 0.35rem;
}

.industry-result__head h2 {
  margin: 0;
  font-size: 1.1rem;
  color: #004d4d;
}

.industry-result__badge {
  font-size: 0.78rem;
  font-weight: 700;
  padding: 0.2rem 0.55rem;
  border-radius: 999px;
  background: #e6f7f5;
  color: #0f766e;
  direction: ltr;
}

.industry-result__sector {
  margin: 0 0 0.85rem;
  font-size: 0.88rem;
  color: #5a6e6e;
}

.industry-facts {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 0.65rem 1rem;
  margin: 0 0 1rem;
}

.industry-facts div {
  padding: 0.55rem 0.75rem;
  background: #f8fbfb;
  border-radius: 10px;
  border: 1px solid #e8f0f0;
}

.industry-facts dt {
  margin: 0;
  font-size: 0.72rem;
  color: #64748b;
  font-weight: 600;
}

.industry-facts dd {
  margin: 0.15rem 0 0;
  font-size: 0.88rem;
  font-weight: 700;
  color: #142424;
}

.industry-insights {
  margin: 0 0 1rem;
  padding: 0 1.1rem 0 0;
  font-size: 0.86rem;
  color: #334155;
  line-height: 1.75;
}

.industry-disclaimer {
  margin: 0;
  font-size: 0.78rem;
  color: #94a3b8;
  padding-top: 0.75rem;
  border-top: 1px dashed #cbd5e1;
}

.industry-result__actions {
  margin-top: 0.85rem;
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}

.industry-codes {
  margin: 0 0 1rem;
  padding: 1rem;
  background: linear-gradient(135deg, #f0fdfa, #fffbeb);
  border: 1px solid #b8e0dc;
  border-radius: 14px;
}

.industry-codes__title {
  margin: 0 0 0.75rem;
  font-size: 0.92rem;
  color: #004d4d;
}

.industry-codes__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.65rem;
}

@media (max-width: 520px) {
  .industry-codes__grid { grid-template-columns: 1fr; }
}

.industry-code-card {
  padding: 0.65rem 0.75rem;
  background: #fff;
  border-radius: 10px;
  border: 1px solid #e2e8f0;
}

.industry-code-card--locked {
  border-color: #fcd34d;
  background: #fffdf5;
}

.industry-code-card__label {
  display: block;
  font-size: 0.7rem;
  color: #64748b;
  font-weight: 600;
}

.industry-code-card strong {
  display: block;
  font-size: 1rem;
  color: #0f766e;
  margin: 0.15rem 0;
}

.industry-code-card p {
  margin: 0;
  font-size: 0.78rem;
  color: #475569;
}

.industry-code-card__lock {
  display: block;
  margin-top: 0.35rem;
  font-size: 0.72rem;
  color: #b45309;
  font-weight: 600;
}

.industry-codes__imports {
  margin: 0.65rem 0 0;
  padding: 0 1rem 0 0;
  font-size: 0.8rem;
  color: #334155;
}

.industry-codes__more {
  margin: 0.35rem 0 0;
  font-size: 0.75rem;
  color: #b45309;
}

.industry-roadmap {
  list-style: none;
  margin: 0 0 1rem;
  padding: 0;
  display: grid;
  gap: 0.5rem;
}

.industry-roadmap__item {
  display: flex;
  gap: 0.65rem;
  padding: 0.65rem 0.75rem;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
}

.industry-roadmap__item.is-current {
  background: #ecfdf5;
  border-color: #6ee7b7;
}

.industry-roadmap__item.is-next {
  border-color: #fcd34d;
}

.industry-roadmap__num {
  flex: 0 0 28px;
  height: 28px;
  border-radius: 50%;
  background: #004d4d;
  color: #fff;
  font-size: 0.78rem;
  font-weight: 800;
  display: grid;
  place-items: center;
}

.industry-roadmap__item strong {
  display: block;
  font-size: 0.88rem;
  color: #0f172a;
}

.industry-roadmap__item p {
  margin: 0.15rem 0 0.35rem;
  font-size: 0.78rem;
  color: #64748b;
  line-height: 1.55;
}

.industry-upgrade {
  margin-bottom: 1rem;
}

.industry-upgrade__inner {
  padding: 1rem 1.1rem;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(245, 157, 35, 0.12), rgba(0, 77, 77, 0.06));
  border: 1px solid rgba(245, 157, 35, 0.35);
}

.industry-upgrade__inner h3 {
  margin: 0 0 0.35rem;
  font-size: 0.95rem;
  color: #9a3412;
}

.industry-upgrade__eyebrow {
  display: inline-block;
  margin-bottom: 0.35rem;
  padding: 0.15rem 0.55rem;
  border-radius: 999px;
  background: rgba(0, 77, 77, 0.08);
  color: #0f766e;
  font-size: 0.72rem;
  font-weight: 700;
}

.industry-tools-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 0.65rem;
}

.industry-tool-card {
  padding: 0.85rem 0.9rem;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
  min-height: 100%;
}

.industry-tool-card--featured {
  border-color: #6ee7b7;
  background: linear-gradient(180deg, #ecfdf5, #fff);
  box-shadow: 0 6px 20px rgba(13, 148, 136, 0.12);
}

.industry-tool-card h4 {
  margin: 0;
  font-size: 0.88rem;
  color: #0f172a;
}

.industry-tool-card p {
  margin: 0;
  flex: 1;
  font-size: 0.78rem;
  color: #64748b;
  line-height: 1.55;
}

.industry-tool-card .btn {
  align-self: flex-start;
  margin-top: auto;
}

.industry-code-card--hs {
  border-color: #99f6e4;
}

.industry-code-card__link,
.industry-code-link {
  display: inline-block;
  margin-top: 0.35rem;
  font-size: 0.75rem;
  font-weight: 700;
  color: #0f766e;
  text-decoration: none;
}

.industry-code-card__link:hover,
.industry-code-link:hover {
  color: #004d4d;
  text-decoration: underline;
}

.industry-related__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin-top: 0.45rem;
}

.industry-related-chip {
  border: 1px solid #cbd5e1;
  background: #f8fafc;
  border-radius: 999px;
  padding: 0.3rem 0.65rem;
  font-size: 0.78rem;
  cursor: pointer;
  color: #334155;
}

.industry-related-chip:hover {
  border-color: #0d9488;
  background: #ecfdf5;
}

.industry-related-chip span {
  opacity: 0.75;
  margin-right: 0.25rem;
}

@media (max-width: 520px) {
  .industry-tools-grid {
    grid-template-columns: 1fr;
  }
}

.industry-upgrade__inner p {
  margin: 0 0 0.75rem;
  font-size: 0.82rem;
  color: #475569;
  line-height: 1.65;
}

.industry-upgrade__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.industry-clarify {
  margin-top: 1rem;
  padding: 1.25rem;
  background: #f8fffe;
  border: 1px solid #b8e0dc;
  border-radius: var(--radius, 18px);
}
.industry-clarify__head h3 { margin: 0.35rem 0; font-size: 1.05rem; color: #0f3d3a; }
.industry-clarify__head p { margin: 0; color: #5a7370; font-size: 0.85rem; }
.industry-clarify__badge {
  display: inline-block;
  padding: 0.2rem 0.65rem;
  font-size: 0.72rem;
  font-weight: 700;
  color: #0a7a72;
  background: rgba(10, 122, 114, 0.1);
  border-radius: 999px;
}
.industry-clarify__form { display: grid; gap: 0.9rem; margin-top: 1rem; }
.industry-field label { display: block; font-weight: 700; font-size: 0.88rem; color: #0f3d3a; margin-bottom: 0.25rem; }
.industry-field__hint { margin: 0 0 0.45rem; font-size: 0.78rem; color: #6b8582; }
.industry-choices { display: flex; flex-wrap: wrap; gap: 0.45rem; }
.industry-choice {
  border: 1px solid #c5ddd9;
  background: #fff;
  border-radius: 999px;
  padding: 0.4rem 0.85rem;
  font-size: 0.82rem;
  cursor: pointer;
  color: #0f3d3a;
}
.industry-choice.is-active,
.industry-choice:hover {
  border-color: #0a7a72;
  background: #e7f7f5;
  color: #065f5a;
}
.industry-clarify__actions { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 0.35rem; }
.industry-preview { margin-top: 1.1rem; padding-top: 0.9rem; border-top: 1px dashed #c5ddd9; }
.industry-preview h4 { margin: 0 0 0.5rem; font-size: 0.88rem; color: #0f3d3a; }
.industry-preview ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 0.45rem; }
.industry-preview li { font-size: 0.82rem; color: #425e5b; line-height: 1.55; }
.industry-preview li strong { display: block; color: #0f3d3a; }

.industry-options { margin: 1.1rem 0; }
.industry-options__eyebrow,
.industry-trade__eyebrow {
  display: inline-block;
  font-size: 0.72rem;
  font-weight: 700;
  color: #c2410c;
  letter-spacing: 0.02em;
}
.industry-options__head h3,
.industry-trade__head h3 { margin: 0.3rem 0; font-size: 1.05rem; color: #0f3d3a; }
.industry-options__head p,
.industry-trade__head p { margin: 0 0 0.75rem; font-size: 0.84rem; color: #5a7370; }
.industry-options__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 0.75rem;
}
.industry-option-card {
  padding: 0.9rem;
  border: 1px solid #e2e8e7;
  border-radius: 14px;
  background: linear-gradient(180deg, #fff, #f7fbfb);
}
.industry-option-card__cat {
  display: inline-block;
  font-size: 0.68rem;
  font-weight: 700;
  color: #0a7a72;
  margin-bottom: 0.35rem;
}
.industry-option-card h4 { margin: 0 0 0.35rem; font-size: 0.92rem; color: #0f3d3a; }
.industry-option-card p { margin: 0; font-size: 0.8rem; color: #4b6562; line-height: 1.6; }

.industry-trade, .industry-commerce {
  margin: 1.1rem 0;
  padding: 1rem;
  border: 1px solid #f0d9c2;
  border-radius: 14px;
  background: #fffaf5;
}
.industry-trade__table-wrap { overflow-x: auto; }
.industry-trade__table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.78rem;
  min-width: 640px;
}
.industry-trade__table th,
.industry-trade__table td {
  border-bottom: 1px solid #f0e0d0;
  padding: 0.55rem 0.45rem;
  text-align: right;
  vertical-align: top;
}
.industry-trade__table th { color: #7c4a1e; font-weight: 700; background: #fff3e6; }
.industry-trade__checks { margin: 0.75rem 0 0; padding-right: 1.1rem; color: #5c4636; font-size: 0.82rem; line-height: 1.65; }
.industry-trade__empty { margin: 0.5rem 0; color: #8a6548; font-size: 0.85rem; }
.industry-commerce h3 { margin: 0 0 0.65rem; font-size: 1rem; color: #0f3d3a; }

@media (max-width: 520px) {
  .industry-options__grid { grid-template-columns: 1fr; }
}
.industry-trade__direct {
  margin-bottom: 1rem;
  padding: 0.95rem 1rem;
  background: #ecfdf5;
  border: 1px solid #a7f3d0;
  border-radius: 12px;
}
.industry-trade__direct p { margin: 0.35rem 0 0; font-size: 0.92rem; line-height: 1.75; color: #064e3b; }
.industry-trade__pain { margin-top: 0.55rem !important; font-size: 0.85rem !important; color: #0f766e !important; }
.industry-trade__meta { margin: 0.35rem 0 0.75rem; font-size: 0.8rem; color: #6b7280; }
.industry-trade__help { margin: 0.85rem 0; font-size: 0.82rem; color: #374151; }
.industry-trade__help summary { cursor: pointer; font-weight: 700; color: #0f3d3a; }
.industry-trade__help ul { margin: 0.5rem 0 0; padding-right: 1.1rem; line-height: 1.65; }
.industry-trade__src-fields { color: #6b7280; font-size: 0.78rem; }
.industry-trade__products {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 0.65rem;
  margin: 0.75rem 0 1rem;
}
.industry-trade__product-card {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding: 0.75rem 0.85rem;
  background: #f0fdfa;
  border: 1px solid #99f6e4;
  border-radius: 12px;
  font-size: 0.82rem;
  color: #115e59;
}
.industry-trade__product-card strong { color: #0f3d3a; font-size: 0.95rem; }
.industry-trade__cost, .industry-trade__checklist {
  margin: 1rem 0;
  padding: 0.9rem 1rem;
  background: #fffbeb;
  border: 1px solid #fde68a;
  border-radius: 12px;
}
.industry-trade__cost h4, .industry-trade__checklist h4 {
  margin: 0 0 0.45rem;
  color: #92400e;
  font-size: 0.92rem;
}
.industry-trade__formula {
  margin: 0.35rem 0 0.65rem;
  font-size: 0.84rem;
  line-height: 1.7;
  color: #78350f;
}
.industry-trade__cost ul, .industry-trade__checklist ul {
  margin: 0.35rem 0 0;
  padding-right: 1.1rem;
  line-height: 1.65;
  font-size: 0.84rem;
}
.industry-export-hint {
  margin: 0.45rem 0 0;
  font-size: 0.78rem;
  color: #6b7280;
}
.industry-result__actions { display: flex; flex-direction: column; align-items: flex-start; gap: 0.25rem; }

.industry-margin {
  margin: 0 0 1rem;
  padding: 0.95rem 1rem;
  border-radius: 12px;
  border: 1px solid #c4b5fd;
  background: #f5f3ff;
}
.industry-margin--ok {
  border-color: #6ee7b7;
  background: #ecfdf5;
}
.industry-margin h4 { margin: 0.2rem 0 0.45rem; font-size: 1rem; color: #0f3d3a; }
.industry-margin p { margin: 0.35rem 0; font-size: 0.9rem; line-height: 1.75; color: #134e4a; }
.industry-margin__rows {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 0.35rem 1rem;
  margin: 0.65rem 0 0;
}
.industry-margin__rows dt { margin: 0; font-size: 0.8rem; color: #6b7280; }
.industry-margin__rows dd { margin: 0; font-weight: 700; color: #0f3d3a; text-align: left; }
.industry-margin ul { margin: 0.25rem 0 0; padding-right: 1.1rem; font-size: 0.84rem; }

.industry-upload {
  margin-top: 0.75rem;
}
.industry-upload__zone {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 0.85rem;
  padding: 0.85rem 1rem;
  background: #f6fbfa;
  border: 1.5px dashed #97c9c4;
  border-radius: 14px;
  cursor: pointer;
  text-align: right;
  color: inherit;
  font: inherit;
  transition: border-color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
}
.industry-upload__zone:hover,
.industry-upload.is-drag .industry-upload__zone {
  border-color: #004d4d;
  background: #eef8f7;
  box-shadow: 0 0 0 4px rgba(0, 77, 77, 0.08);
}
.industry-upload__zone:focus-visible {
  outline: 2px solid #55c9c3;
  outline-offset: 2px;
}
.industry-upload.is-busy .industry-upload__zone,
.industry-upload.is-busy .industry-upload__file {
  opacity: 0.72;
  pointer-events: none;
}
.industry-upload.is-filled .industry-upload__zone {
  display: none;
}
.industry-upload__icon {
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: #fff;
  border: 1px solid #cfe8e6;
  color: #004d4d;
}
.industry-upload__icon svg {
  width: 22px;
  height: 22px;
}
.industry-upload__copy {
  display: flex;
  flex-direction: column;
  gap: 0.18rem;
  min-width: 0;
}
.industry-upload__copy strong {
  font-size: 0.88rem;
  font-weight: 800;
  color: #004d4d;
  line-height: 1.45;
}
.industry-upload__copy span {
  font-size: 0.75rem;
  color: #6b7280;
  line-height: 1.55;
}
.industry-upload__file {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.7rem 0.85rem;
  background: #fff;
  border: 1px solid #cfe8e6;
  border-radius: 14px;
  box-shadow: 0 2px 8px rgba(0, 77, 77, 0.05);
}
.industry-upload__file[hidden] {
  display: none;
}
.industry-upload__thumb {
  width: 48px;
  height: 48px;
  object-fit: cover;
  border-radius: 10px;
  background: #eef4f4;
  border: 1px solid #d8e4e4;
  flex: 0 0 48px;
}
.industry-upload__meta {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
}
.industry-upload__meta strong {
  font-size: 0.86rem;
  color: #0f3d3a;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.industry-upload__meta span {
  font-size: 0.74rem;
  color: #6b7280;
}
.industry-upload__remove {
  flex: 0 0 auto;
  border: 1px solid #d8e4e4;
  background: #fff;
  color: #004d4d;
  font: inherit;
  font-size: 0.78rem;
  font-weight: 700;
  padding: 0.4rem 0.75rem;
  border-radius: 999px;
  cursor: pointer;
}
.industry-upload__remove:hover {
  border-color: #c97a08;
  color: #c97a08;
  background: #fff8ee;
}
.industry-trade__ocr,
.industry-trade__feasibility {
  margin: 0 0 1rem;
  padding: 0.9rem 1rem;
  border-radius: 12px;
  border: 1px solid #99f6e4;
  background: #f0fdfa;
}
.industry-trade__feasibility {
  border-color: #67e8f9;
  background: #ecfeff;
}
.industry-trade__ocr h4,
.industry-trade__feasibility h4 {
  margin: 0 0 0.4rem;
  font-size: 0.95rem;
  color: #0f3d3a;
}
.industry-trade__ocr ul {
  margin: 0.25rem 0 0;
  padding-right: 1.1rem;
  font-size: 0.84rem;
  line-height: 1.65;
}
.industry-trade__warn {
  margin: 0.5rem 0 0;
  color: #b45309;
  font-size: 0.82rem;
}
.industry-trade__kpis {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  margin-top: 0.65rem;
}
.industry-trade__kpis span {
  flex: 1 1 140px;
  padding: 0.55rem 0.7rem;
  border-radius: 10px;
  background: #fff;
  border: 1px solid #cffafe;
  font-size: 0.78rem;
  color: #0f766e;
}
.industry-trade__kpis b {
  display: block;
  font-size: 1.05rem;
  color: #0f3d3a;
  margin-bottom: 0.15rem;
}
@media (max-width: 640px) {
  .tariff-search__row {
    flex-wrap: wrap;
  }
  .industry-upload__zone {
    align-items: flex-start;
    padding: 0.8rem 0.85rem;
  }
  .industry-upload__copy span {
    font-size: 0.72rem;
  }
  .industry-chat__thread {
    max-height: min(46dvh, 22rem);
  }
  .industry-msg__bubble {
    font-size: 0.95rem;
    padding: 0.7rem 0.8rem;
    overflow-wrap: anywhere;
  }
  .industry-search {
    position: sticky;
    bottom: 0;
    z-index: 6;
    margin-inline: -0.35rem;
    padding: 0.7rem 0.35rem calc(0.7rem + env(safe-area-inset-bottom));
    background: #fff;
    border-top: 1px solid #e8f0f0;
  }
  .tariff-search__input,
  .page-tariff .tariff-search__input,
  #industry-query {
    font-size: 16px;
    min-height: 48px;
  }
  .tariff-search__btn {
    min-height: 48px;
    width: 100%;
    font-size: 1rem;
  }
  .industry-result {
    padding: 0.9rem;
  }
  .industry-result__head h2 {
    font-size: 1rem;
  }
  .industry-facts {
    grid-template-columns: 1fr;
  }
  .industry-result__actions .btn {
    width: 100%;
    min-height: 48px;
  }
  .industry-trade__table,
  .industry-trade__kpis b {
    font-size: 0.92rem;
  }
  .industry-trade__kpis span {
    flex: 1 1 100%;
  }
  .decl-chips,
  .tariff-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
  }
}
