.intrastat-toolbar {
  align-items: flex-end;
  gap: 16px;
}

.intrastat-toolbar .toolbar-actions {
  flex-wrap: wrap;
}

.intrastat-filter-grid {
  display: grid;
  grid-template-columns: minmax(220px, 1.4fr) repeat(4, minmax(120px, 0.7fr));
  gap: 10px;
  margin: 18px 0;
}

.intrastat-filter-grid label,
.intrastat-export-settings label,
.intrastat-editor-form label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 700;
}

.intrastat-filter-grid select,
.intrastat-export-settings input,
.intrastat-export-settings select,
.intrastat-editor-form input,
.intrastat-editor-form select,
.intrastat-editor-form textarea {
  width: 100%;
  border: 1px solid var(--line-strong);
  border-radius: 10px;
  background: var(--surface);
  color: var(--text);
  padding: 10px 11px;
  font: inherit;
}

.intrastat-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 18px;
}

.intrastat-metrics article {
  display: grid;
  gap: 4px;
  padding: 15px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: var(--surface-raised, var(--surface));
}

.intrastat-metrics span,
.intrastat-metrics small {
  color: var(--muted);
}

.intrastat-metrics strong {
  font-size: 1.55rem;
}

.intrastat-notice {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 0 0 18px;
  padding: 13px 14px;
  border: 1px solid rgba(15, 118, 110, 0.28);
  border-radius: 12px;
  background: rgba(15, 118, 110, 0.08);
  color: var(--text);
}

.intrastat-notice span[data-icon] {
  color: var(--teal-strong);
  flex: 0 0 auto;
}

.intrastat-export-config {
  margin: 0 0 18px;
  padding: 13px 14px;
  border: 1px solid var(--line-strong);
  border-radius: 12px;
  background: var(--surface-raised, var(--surface));
}

.intrastat-export-config summary {
  cursor: pointer;
  color: var(--text);
  font-weight: 800;
}

.intrastat-export-config > small {
  display: block;
  margin-top: 10px;
  color: var(--muted);
}

.intrastat-export-settings {
  display: grid;
  grid-template-columns: repeat(5, minmax(145px, 1fr)) auto;
  gap: 10px;
  align-items: end;
  margin-top: 13px;
}

.intrastat-export-settings button {
  white-space: nowrap;
}

.intrastat-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(330px, 0.85fr);
  gap: 18px;
  align-items: start;
}

.intrastat-table-wrap {
  min-width: 0;
}

.intrastat-row td small {
  display: block;
  max-width: 280px;
  margin-top: 4px;
  color: var(--muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.intrastat-row.is-selected td {
  background: rgba(15, 118, 110, 0.07);
}

.intrastat-status {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 3px 8px;
  border-radius: 999px;
  background: var(--surface-soft, #f3f4f6);
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 800;
}

.intrastat-status.is-ready { background: rgba(15, 118, 110, 0.13); color: var(--teal-strong); }
.intrastat-status.is-exported { background: rgba(37, 99, 235, 0.12); color: #1d4ed8; }
.intrastat-status.is-missing,
.intrastat-status.is-correction { background: rgba(217, 119, 6, 0.14); color: #9a5a00; }
.intrastat-status.is-excluded { background: rgba(100, 116, 139, 0.12); color: var(--muted); }

.intrastat-editor {
  position: sticky;
  top: 18px;
  min-height: 260px;
  padding: 17px;
  border: 1px solid var(--line-strong);
  border-radius: 16px;
  background: var(--surface-raised, var(--surface));
  box-shadow: var(--shadow-soft);
}

.intrastat-editor-empty {
  min-height: 220px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 9px;
  text-align: center;
  color: var(--muted);
}

.intrastat-editor-empty span[data-icon] {
  width: 34px;
  height: 34px;
  color: var(--teal-strong);
}

.intrastat-editor-empty small {
  max-width: 260px;
}

.intrastat-editor-form {
  display: grid;
  gap: 15px;
}

.intrastat-editor-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.intrastat-editor-head h3 {
  margin: 2px 0 4px;
  font-size: 1rem;
}

.intrastat-editor-head small {
  color: var(--muted);
}

.intrastat-editor-alert {
  display: grid;
  gap: 3px;
  padding: 11px 12px;
  border-radius: 10px;
  background: rgba(217, 119, 6, 0.1);
  color: #8a4f00;
  font-size: 0.78rem;
}

.intrastat-editor-alert.is-ok {
  background: rgba(15, 118, 110, 0.1);
  color: var(--teal-strong);
}

.intrastat-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 11px;
}

.intrastat-checkline {
  display: flex !important;
  grid-template-columns: none !important;
  align-items: center;
  gap: 8px !important;
  padding: 10px 0;
  color: var(--text) !important;
  font-size: 0.78rem !important;
}

.intrastat-checkline input {
  width: auto !important;
}

.intrastat-checkline a {
  margin-left: auto;
  color: var(--teal-strong);
  font-weight: 800;
}

.intrastat-editor-section {
  display: grid;
  gap: 11px;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--surface-soft, rgba(148, 163, 184, 0.06));
}

.intrastat-editor-section[hidden],
.intrastat-form-grid[hidden] {
  display: none !important;
}

.intrastat-editor-section h4 {
  margin: 0;
  font-size: 0.87rem;
}

.intrastat-correction-check {
  padding: 11px;
  border-radius: 10px;
  background: rgba(217, 119, 6, 0.08);
}

.intrastat-editor-actions {
  display: flex;
  justify-content: flex-end;
  gap: 9px;
}

@media (max-width: 1180px) {
  .intrastat-filter-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .intrastat-export-settings { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .intrastat-workspace { grid-template-columns: 1fr; }
  .intrastat-editor { position: static; }
}

@media (max-width: 760px) {
  .intrastat-filter-grid,
  .intrastat-export-settings,
  .intrastat-metrics,
  .intrastat-form-grid { grid-template-columns: 1fr; }
  .intrastat-editor-head { flex-direction: column; }
  .intrastat-editor-actions { flex-direction: column-reverse; }
  .intrastat-editor-actions button { width: 100%; }
}
