/* Meteolab 2027 - Jadran */
.ml-adriatic-page .ml-section { scroll-margin-top: 90px; }

.ml-adriatic-forecast-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 22px;
  align-items: stretch;
}

.ml-adriatic-forecast-card,
.ml-adriatic-table-card {
  padding: clamp(20px, 2.4vw, 28px);
}

.ml-adriatic-forecast-head,
.ml-adriatic-table-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 22px;
}

.ml-adriatic-table-head { margin-bottom: 18px; }
.ml-adriatic-table-head h2,
.ml-adriatic-forecast-card h2 { margin: 0 0 6px; }
.ml-adriatic-table-head > div:first-child > p:last-child {
  max-width: 760px;
  margin: 6px 0 0;
  color: #64748b;
  line-height: 1.55;
}

.ml-adriatic-prose {
  color: #334155;
  font-size: clamp(.96rem, 1.05vw, 1.03rem);
  line-height: 1.72;
}
.ml-adriatic-marine-copy p { margin: 0 0 12px; }
.ml-adriatic-marine-copy p:last-child { margin-bottom: 0; }

.ml-adriatic-warning {
  margin: 4px 0 16px;
  padding: 13px 15px;
  border: 1px solid rgba(220, 38, 38, .18);
  border-left: 4px solid #dc2626;
  border-radius: 12px;
  background: #fff7f7;
  color: #7f1d1d;
}
.ml-adriatic-warning p { margin: 4px 0 0; line-height: 1.55; }

.ml-adriatic-language-badge,
.ml-adriatic-source {
  display: inline-flex;
  align-items: center;
  width: max-content;
  border-radius: 999px;
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .055em;
  text-transform: uppercase;
  white-space: nowrap;
}
.ml-adriatic-language-badge { padding: 7px 10px; }
.ml-adriatic-language-badge.translated { background: #eaf5fc; color: #0d5f9c; }
.ml-adriatic-language-badge.original { background: #f1f5f9; color: #64748b; }
.ml-adriatic-source { padding: 4px 8px; }
.source-arso { background: #eaf5fc; color: #0d5f9c; }
.source-dhmz { background: #fff7dc; color: #8a5a00; }

.ml-adriatic-original {
  margin-top: 16px;
  border-top: 1px solid rgba(15, 23, 42, .08);
  padding-top: 12px;
  color: #64748b;
}
.ml-adriatic-original summary { cursor: pointer; font-weight: 800; color: #0d5f9c; }
.ml-adriatic-original p { line-height: 1.6; }

.ml-adriatic-tabs {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 6px;
}
.ml-adriatic-tabs button {
  border: 1px solid rgba(21, 130, 199, .18);
  background: #f1f7fc;
  color: #0d5f9c;
  border-radius: 999px;
  min-height: 36px;
  padding: 7px 12px;
  font: inherit;
  font-size: .8rem;
  font-weight: 800;
  cursor: pointer;
}
.ml-adriatic-tabs button:hover,
.ml-adriatic-tabs button.active {
  background: #002050;
  border-color: #002050;
  color: #fff;
}

.ml-adriatic-tools {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
}
.ml-adriatic-search input {
  width: min(290px, 100%);
  min-height: 40px;
  border: 1px solid rgba(15, 23, 42, .14);
  border-radius: 12px;
  padding: 8px 12px;
  background: #fff;
  color: #0f172a;
  font: inherit;
}
.ml-adriatic-search input:focus {
  outline: 3px solid rgba(0, 32, 80, .12);
  border-color: #002050;
}

.ml-adriatic-table-wrap {
  width: 100%;
  overflow-x: auto;
  border-top: 1px solid rgba(15,23,42,.08);
  -webkit-overflow-scrolling: touch;
}
.ml-adriatic-stations-scroll {
  max-height: 650px;
  overflow: auto;
  scrollbar-gutter: stable;
}

.ml-adriatic-table {
  width: 100%;
  min-width: 760px;
  border-collapse: separate;
  border-spacing: 0;
  color: #233143;
  font-size: .86rem;
}
.ml-adriatic-sea-table { min-width: 760px; }
.ml-adriatic-coast-table { min-width: 1040px; }
.ml-adriatic-stations-table { min-width: 1180px; }

.ml-adriatic-table th,
.ml-adriatic-table td {
  padding: 11px 10px;
  border-bottom: 1px solid rgba(15,23,42,.065);
  vertical-align: middle;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.ml-adriatic-table th {
  position: sticky;
  top: 0;
  z-index: 4;
  background: #f4f8fc;
  color: #334155;
  text-align: right;
  font-size: .76rem;
  line-height: 1.15;
  font-weight: 850;
}

.ml-adriatic-table th small {
  color: #64748b;
  font-weight: 750;
}

.ml-adriatic-table th:first-child,
.ml-adriatic-table td:first-child {
  position: sticky;
  left: 0;
  z-index: 5;
  min-width: 205px;
  background: #fff;
  text-align: left;
  box-shadow: 1px 0 0 rgba(15,23,42,.08);
}

.ml-adriatic-table th:first-child {
  z-index: 6;
  background: #f4f8fc;
}

.ml-adriatic-table th.is-text,
.ml-adriatic-table td.is-text {
  text-align: left;
}

.ml-adriatic-table td.numeric,
.ml-adriatic-table th.numeric {
  text-align: right;
}

.ml-adriatic-table tbody tr:hover td,
.ml-adriatic-table tbody tr:hover td:first-child {
  background: #f8fbfe;
}

.ml-adriatic-table tbody tr:last-child td { border-bottom: 0; }

.ml-adriatic-table td:first-child strong {
  display: block;
  color: #0f172a;
  font-size: .91rem;
  font-weight: 850;
}

.ml-adriatic-value {
  font-weight: 850;
}

.ml-adriatic-value.is-sea { color: #0d5f9c; }
.ml-adriatic-value.is-rain { color: #0d77c8; }
.ml-adriatic-value.is-wind { color: #0f766e; }
.ml-adriatic-value.is-gust { color: #c2410c; }

.ml-adriatic-cell-sub {
  display: block;
  margin-top: 3px;
  color: #64748b;
  font-size: .71rem;
  font-weight: 650;
}

.ml-adriatic-empty,
.ml-adriatic-message {
  margin-top: 14px;
  padding: 14px 16px;
  border-radius: 12px;
  background: #f8fafc;
  color: #64748b;
  text-align: center;
}
.ml-adriatic-info { width: 100%; max-width: none; }
.ml-adriatic-info p { max-width: none; }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

@media (max-width: 980px) {
  .ml-adriatic-forecast-grid { grid-template-columns: 1fr; }
  .ml-adriatic-table-head { flex-direction: column; }
  .ml-adriatic-tools { width: 100%; align-items: flex-start; }
  .ml-adriatic-search, .ml-adriatic-search input { width: 100%; }
}

@media (max-width: 640px) {
  .ml-adriatic-forecast-card,
  .ml-adriatic-table-card { padding: 18px 15px; }

  .ml-adriatic-forecast-head { flex-direction: column; gap: 10px; }

  .ml-adriatic-tabs {
    width: 100%;
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 3px;
  }

  .ml-adriatic-tabs button { flex: 0 0 auto; }

  .ml-adriatic-table th,
  .ml-adriatic-table td {
    padding: 10px 9px;
  }

  .ml-adriatic-table th:first-child,
  .ml-adriatic-table td:first-child {
    min-width: 175px;
  }
}

/* Sortiranje in centriranje glav parametrov */
.ml-adriatic-table th.numeric {
  text-align: center;
}

.ml-adriatic-table th small {
  display: block;
  width: 100%;
  margin-top: 1px;
  text-align: center;
}

.ml-adriatic-table th[data-sort] {
  cursor: pointer;
  user-select: none;
}

.ml-adriatic-table th[data-sort]::after {
  content: ' ↕';
  color: #94a3b8;
  font-size: .78em;
  font-weight: 800;
}

.ml-adriatic-table th[data-sort]:hover {
  background: #eaf1f8;
  color: #002050;
}

.ml-adriatic-table th[data-sort]:hover::after {
  color: #002050;
}

.ml-adriatic-table th[data-sort].is-sort-asc::after {
  content: ' ↑';
  color: #002050;
}

.ml-adriatic-table th[data-sort].is-sort-desc::after {
  content: ' ↓';
  color: #002050;
}

/* Prvi stolpec ostane levo poravnan. */
.ml-adriatic-table th:first-child {
  text-align: left;
}


/* Samodejno opozorilo ob zastarelih podatkih DHMZ. */
.ml-adriatic-data-status {
  margin: 0 0 18px;
  padding: 13px 15px;
  border-radius: 12px;
  line-height: 1.5;
}

.ml-adriatic-data-status strong {
  display: block;
  margin-bottom: 3px;
  font-weight: 850;
}

.ml-adriatic-data-status p {
  margin: 0;
}

.ml-adriatic-data-status-warning {
  border: 1px solid rgba(202, 138, 4, .28);
  border-left: 4px solid #ca8a04;
  background: #fffbeb;
  color: #78350f;
}

@media (max-width: 640px) {
  .ml-adriatic-data-status {
    margin-bottom: 15px;
    padding: 12px 13px;
    font-size: .9rem;
  }
}
