.submissions-page { max-width: 90rem; margin: 0 auto; padding: var(--ft-space-10); }
.submissions-header { display: flex; align-items: end; justify-content: space-between; gap: var(--ft-space-8); margin-bottom: var(--ft-space-8); }
.submissions-origin-filter { display: flex; align-items: center; justify-content: space-between; gap: var(--ft-space-4); margin: calc(var(--ft-space-4) * -1) 0 var(--ft-space-5); padding: var(--ft-space-3) var(--ft-space-4); border: 1px solid #dec8b2; border-radius: var(--ft-radius-sm); color: var(--ft-brown-800); background: var(--ft-gold-100); font-size: var(--ft-font-sm); }
.submissions-origin-filter a { font-weight: 600; }
.submissions-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--ft-space-4); margin-bottom: var(--ft-space-8); }
.submissions-summary > div { position: relative; display: grid; min-height: 7rem; align-content: center; padding: var(--ft-space-5) var(--ft-space-6); border: 1px solid var(--ft-border); border-radius: var(--ft-radius-md); background: var(--ft-surface); overflow: hidden; }
.submissions-summary > div::before { position: absolute; inset: 0 auto 0 0; width: 3px; background: var(--ft-blue-500); content: ""; }
.submissions-summary > div:nth-child(2)::before { background: var(--ft-warning-600); }
.submissions-summary > div:nth-child(3)::before { background: var(--ft-green-600); }
.submissions-summary span, .submissions-summary small { color: var(--ft-text-muted); font-size: var(--ft-font-xs); }
.submissions-summary strong { color: var(--ft-brown-900); font-size: var(--ft-font-xl); font-weight: 600; line-height: 1.15; }
.submissions-browser { padding: var(--ft-space-6); border: 1px solid var(--ft-border); border-radius: var(--ft-radius-lg); background: var(--ft-surface); }
.submissions-browser-heading { display: flex; align-items: end; justify-content: space-between; gap: var(--ft-space-4); margin-bottom: var(--ft-space-5); }
.submissions-browser-heading > div { display: grid; }
.submissions-browser-heading span, .submissions-browser-heading small { color: var(--ft-text-muted); font-size: var(--ft-font-xs); }
.submissions-browser-heading h2 { margin: 0; color: var(--ft-brown-900); font-size: var(--ft-font-lg); font-weight: 600; }
.submissions-filters { display: grid; grid-template-columns: minmax(13rem, 1.5fr) repeat(5, minmax(8.5rem, 1fr)); gap: var(--ft-space-3); margin-bottom: var(--ft-space-6); padding: var(--ft-space-4); border-radius: var(--ft-radius-md); background: var(--ft-surface-soft); }
.submissions-filters label { display: block; margin-bottom: var(--ft-space-1); color: var(--ft-text-muted); font-size: 0.68rem; font-weight: 600; }
.submissions-filters input, .submissions-filters select { width: 100%; min-height: 2.55rem; padding: 0.55rem 0.65rem; border: 1px solid var(--ft-border); border-radius: var(--ft-radius-sm); color: var(--ft-text); background: var(--ft-surface); font-size: var(--ft-font-xs); }
.submissions-filters input:focus, .submissions-filters select:focus { border-color: var(--ft-gold-500); box-shadow: 0 0 0 3px rgba(212,163,115,.16); outline: 0; }
.submissions-list { display: grid; gap: var(--ft-space-3); }
.submission-row { display: grid; min-height: 9.5rem; grid-template-columns: 9rem minmax(0, 1fr) auto; align-items: stretch; border: 1px solid var(--ft-border); border-radius: var(--ft-radius-md); background: var(--ft-surface); overflow: hidden; transition: border-color var(--ft-transition), box-shadow var(--ft-transition), transform var(--ft-transition); }
.submission-row:hover { border-color: #cfc5ba; box-shadow: var(--ft-shadow-soft); transform: translateY(-1px); }
.submission-cover { position: relative; min-height: 100%; background: var(--ft-brown-800); overflow: hidden; }
.submission-cover::after { position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, transparent, rgba(47, 33, 27, 0.2)); content: ""; }
.submission-cover img { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.submission-cover-fallback { display: grid; place-items: center; background: radial-gradient(circle at 75% 25%, rgba(197, 154, 74, 0.35), transparent 30%), linear-gradient(145deg, var(--ft-brown-700), var(--ft-brown-900)); }
.submission-cover-fallback > span { position: relative; z-index: 2; display: grid; width: 3.6rem; height: 3.6rem; place-items: center; border: 1px solid rgba(255, 255, 255, 0.28); border-radius: 50%; color: var(--ft-gold-500); font-weight: 600; }
.submission-row-content { display: grid; align-content: center; padding: var(--ft-space-5); }
.submission-row-heading { display: flex; align-items: center; gap: var(--ft-space-3); }
.submission-row-heading > span { color: var(--ft-text-secondary); font-size: var(--ft-font-xs); font-weight: 600; }
.submission-row-content h3 { margin: var(--ft-space-2) 0 var(--ft-space-3); color: var(--ft-brown-900); font-size: var(--ft-font-md); font-weight: 600; }
.submission-row-meta { display: flex; flex-wrap: wrap; gap: var(--ft-space-3) var(--ft-space-6); }
.submission-row-meta span { display: grid; color: var(--ft-text-secondary); font-size: var(--ft-font-xs); }
.submission-row-meta b { color: var(--ft-text-muted); font-weight: 500; }
.submission-row-meta code { max-width: 18rem; overflow: hidden; color: var(--ft-text-secondary); font-size: 0.67rem; text-overflow: ellipsis; white-space: nowrap; }
.submission-row-action { display: grid; min-width: 13rem; align-content: center; justify-items: end; gap: var(--ft-space-3); padding: var(--ft-space-5); border-left: 1px solid var(--ft-border); background: var(--ft-surface-soft); }
.submission-row-action > span { color: var(--ft-text-muted); font-size: var(--ft-font-xs); }
.submissions-no-results { margin-top: var(--ft-space-5); }

/* Seguimiento: evita que las tarjetas heredadas alteren la composición. */
.tracking-status-page .request-card {
  display: block;
  min-height: 0;
  box-sizing: border-box;
}

.tracking-status-page .tracking-detail { align-items: start; }

.tracking-status-page .tracking-status-card { padding: clamp(1.25rem, 2.5vw, 2rem); }

.tracking-status-page .tracking-status-card h1 {
  max-width: 42rem;
  margin: 0.65rem 0 0.55rem;
  font-size: clamp(1.75rem, 3vw, 2.8rem);
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.tracking-status-page .tracking-help-card { padding: 1.35rem; }
.tracking-status-page .tracking-workspace { align-items: start; }

.tracking-status-page .workflow-action-card {
  display: block;
  padding: clamp(1rem, 2vw, 1.45rem);
}

.tracking-status-page .workflow-action-card > .request-card {
  margin: 1rem 0;
  padding: 0.9rem 1rem;
  background: var(--ft-surface-soft, #f7f4ef);
}

.tracking-status-page .tracking-actions-inline { display: flex; flex-wrap: wrap; gap: 0.65rem; }

.tracking-status-page .btn-app,
.tracking-status-page .btn-app-ghost,
.tracking-status-page form > .btn {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  justify-content: center;
  padding: 0.65rem 1rem;
  border: 1px solid transparent;
  border-radius: 0.45rem;
  font-size: 0.86rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  white-space: normal;
}

.tracking-status-page form > .btn {
  width: 100%;
  color: #fff;
  background: var(--app-gold, #c99049);
  border-color: var(--app-gold, #c99049);
}

.tracking-status-page form > .btn:hover,
.tracking-status-page form > .btn:focus { color: #fff; filter: brightness(0.94); }

@media (max-width: 767.98px) {
  .tracking-status-page .tracking-actions-inline { display: grid; }
  .tracking-status-page .tracking-actions-inline .btn,
  .tracking-status-page form > .btn { width: 100%; }
}

@media (max-width: 1200px) {
  .submissions-filters { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .submissions-filter-search { grid-column: span 2; }
}

@media (max-width: 991.98px) {
  .submissions-page { padding: var(--ft-space-8) var(--ft-space-6); }
  .submission-row { grid-template-columns: 7rem minmax(0, 1fr); }
  .submission-row-action { grid-column: 2; min-width: 0; grid-template-columns: minmax(0, 1fr) auto; align-items: center; justify-items: start; padding-top: 0; border-left: 0; background: var(--ft-surface); }
}

@media (max-width: 767.98px) {
  .submissions-page { padding: var(--ft-space-5) var(--ft-space-4) var(--ft-space-8); }
  .submissions-header { align-items: start; flex-direction: column; gap: var(--ft-space-5); margin-bottom: var(--ft-space-6); }
  .submissions-summary { grid-template-columns: 1fr; gap: var(--ft-space-3); margin-bottom: var(--ft-space-6); }
  .submissions-summary > div { min-height: 6rem; }
  .submissions-browser { padding: var(--ft-space-4); }
  .submissions-filters { grid-template-columns: 1fr; }
  .submissions-filter-search { grid-column: auto; }
  .submission-row { grid-template-columns: 1fr; }
  .submission-cover { min-height: 9rem; }
  .submission-row-content { padding: var(--ft-space-4); }
  .submission-row-action { grid-column: 1; grid-template-columns: 1fr; justify-items: stretch; padding: 0 var(--ft-space-4) var(--ft-space-4); }
  .submission-row-action .ui-button { width: 100%; }
  .submission-row-meta { display: grid; gap: var(--ft-space-2); }
  .submissions-origin-filter { align-items: start; flex-direction: column; }
}

/* Bandeja compacta de Mis trámites */
.submissions-page { max-width: 96rem; }
.submissions-browser { padding: 0; border: 0; background: transparent; }
.submissions-browser-heading { margin-bottom: var(--ft-space-3); }
.submissions-filters { grid-template-columns: minmax(13rem,1.5fr) repeat(5,minmax(8.5rem,1fr)); margin-bottom: var(--ft-space-7); padding: var(--ft-space-3); border: 1px solid var(--ft-border); background: var(--ft-surface); box-shadow: var(--ft-shadow-soft); }
.submissions-board { display: grid; gap: var(--ft-space-8); }
.submission-group { --submission-group: var(--ft-warning-600); }
.submission-group-closed { --submission-group: var(--ft-green-600); }
.submission-group-heading { display: grid; width: 100%; grid-template-columns: auto auto auto 1fr; align-items: center; gap: var(--ft-space-2); margin-bottom: var(--ft-space-2); padding: .25rem .2rem; border: 0; color: var(--submission-group); background: transparent; text-align: left; cursor: pointer; }
.submission-group-heading > span { font-size: 1.2rem; transition: transform .18s ease; }
.submission-group-heading strong { font-size: var(--ft-font-lg); }
.submission-group-heading b { display: grid; min-width: 1.6rem; height: 1.6rem; place-items: center; border-radius: 999px; background: color-mix(in srgb,var(--submission-group) 12%,white); font-size: var(--ft-font-xs); }
.submission-group-heading small { color: var(--ft-text-muted); }
.submission-group.is-collapsed .submission-group-heading > span { transform: rotate(-90deg); }
.submission-group.is-collapsed .submission-table-wrap { display: none; }
.submission-table-wrap { border: 1px solid var(--ft-border); border-left: 5px solid var(--submission-group); border-radius: var(--ft-radius-md); background: var(--ft-surface); box-shadow: var(--ft-shadow-soft); overflow: hidden; }
.submission-table-header,.submissions-board .submission-row { display: grid; grid-template-columns: minmax(20rem,2fr) minmax(10rem,.8fr) minmax(12rem,1fr) minmax(10rem,.8fr) minmax(14rem,1.1fr); align-items: stretch; }
.submission-table-header { min-height: 2.75rem; border-bottom: 1px solid var(--ft-border); background: var(--ft-surface-soft); color: var(--ft-text-muted); font-size: var(--ft-font-xs); font-weight: 650; }
.submission-table-header span { display: flex; align-items: center; padding: 0 var(--ft-space-4); border-right: 1px solid var(--ft-border); }
.submissions-board .submission-row { min-height: 5.25rem; border: 0; border-bottom: 1px solid var(--ft-border); border-radius: 0; overflow: visible; transform: none; }
.submissions-board .submission-row:last-child { border-bottom: 0; }
.submissions-board .submission-row:hover { border-color: var(--ft-border); background: color-mix(in srgb,var(--ft-gold-100) 35%,white); box-shadow: inset 3px 0 var(--ft-gold-500); transform: none; }
.submissions-board .submission-row > div { display: flex; min-width: 0; align-items: center; padding: var(--ft-space-3) var(--ft-space-4); border-right: 1px solid var(--ft-border); }
.submissions-board .submission-row > div:last-child { border-right: 0; }
.submission-main-cell { gap: var(--ft-space-3); }
.submission-avatar { display: grid; flex: 0 0 auto; width: 2.5rem; height: 2.5rem; place-items: center; border-radius: .65rem; color: var(--ft-gold-500); background: linear-gradient(145deg,var(--ft-brown-700),var(--ft-brown-900)); font-size: .72rem; font-weight: 750; }
.submission-main-cell > div { min-width: 0; }
.submission-main-cell span:not(.submission-avatar) { display: block; color: var(--ft-text-muted); font-size: .68rem; font-weight: 650; text-transform: uppercase; letter-spacing: .04em; }
.submission-main-cell h3 { margin: .18rem 0 0; overflow: hidden; color: var(--ft-brown-900); font-size: var(--ft-font-sm); font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.submission-status-cell { justify-content: center; }
.submission-reference { gap: var(--ft-space-2); }
.submission-reference code { overflow: hidden; color: var(--ft-text-secondary); font-size: .7rem; text-overflow: ellipsis; white-space: nowrap; }
.submission-reference button { flex: 0 0 auto; width: 1.75rem; height: 1.75rem; border: 1px solid var(--ft-border); border-radius: .4rem; color: var(--ft-text-muted); background: var(--ft-surface); cursor: pointer; }
.submission-date { display: grid !important; align-content: center; }
.submission-date strong { color: var(--ft-text-secondary); font-size: var(--ft-font-xs); }
.submission-date small { color: var(--ft-text-muted); font-size: .68rem; }
.submissions-board .submission-row-action { display: grid; min-width: 0; align-content: center; justify-items: end; gap: .3rem; padding: var(--ft-space-3) var(--ft-space-4); border-left: 0; background: transparent; }
.submissions-board .submission-row-action > span { font-size: .68rem; }
.submissions-board .submission-row-action .ui-button { min-height: 2.35rem; padding: 0 .8rem; white-space: nowrap; }
.submission-row[hidden],.submission-group[hidden] { display: none !important; }

@media (max-width:1200px) {
  .submission-table-wrap { overflow-x: auto; }
  .submission-table-header,.submissions-board .submission-row { min-width: 67rem; }
}
@media (max-width:767.98px) {
  .submissions-browser { padding: 0; }
  .submission-group-heading { grid-template-columns: auto auto auto; }
  .submission-group-heading small,.submission-table-header { display: none; }
  .submission-table-wrap { overflow: visible; border-left-width: 4px; }
  .submissions-board .submission-row { display: grid; min-width: 0; grid-template-columns: 1fr 1fr; gap: var(--ft-space-3); padding: var(--ft-space-4); }
  .submissions-board .submission-row > div { padding: 0; border: 0; }
  .submission-main-cell { grid-column: 1/-1; }
  .submission-status-cell { justify-content: start; }
  .submission-reference { justify-content: end; }
  .submissions-board .submission-row-action { grid-column: 1/-1; justify-items: stretch; padding-top: var(--ft-space-3); border-top: 1px solid var(--ft-border); }
  .submissions-board .submission-row-action .ui-button { width: 100%; }
}
