/* Urbex — reguli mobile-first și tablet-first (docs/design/07-ui-ux.md). Se aplică peste tokenuri. */
@media (max-width: 767.98px) {
  input.form-control, select.form-select, textarea.form-control { font-size: 16px; } /* fără zoom automat pe iOS */
  .btn, .form-check-input { min-height: 44px; }
  .form-check-input { width: 1.35rem; height: 1.35rem; margin-top: .1rem; }
  .form-check-label { padding-left: .35rem; line-height: 1.5rem; }
  .hn-content { padding: var(--space-4, 1rem); }
  .hn-table--stack thead { display: none; }
  .hn-table--stack tr { display: block; border: 1px solid var(--border-light); border-radius: 8px; margin-bottom: .75rem; background: var(--white); padding: .5rem .75rem; }
  .hn-table--stack td { display: flex; justify-content: space-between; gap: .75rem; border: 0; padding: .3rem 0; }
  .hn-table--stack td::before { content: attr(data-label); color: var(--text-secondary); font-size: .75rem; text-transform: uppercase; letter-spacing: .04em; }
  .hn-table--stack td.hn-td-title { display: block; font-weight: 600; font-size: 1rem; }
  .hn-table--stack td.hn-td-title::before { display: none; }
  .urbex-actions-bar { position: sticky; bottom: 0; background: var(--white); border-top: 1px solid var(--border-light); padding: .75rem; margin: 0 calc(-1 * var(--space-4, 1rem)); display: flex; gap: .5rem; z-index: 5; }
  .urbex-actions-bar .btn { flex: 1; }
}
@media (min-width: 768px) {
  .urbex-actions-bar { display: flex; gap: .5rem; justify-content: flex-end; padding-top: 1rem; }
}
.hn-touch-target { min-width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
.urbex-sectiune { border: 1px solid var(--border-light); border-radius: 8px; background: var(--white); margin-bottom: 1rem; }
.urbex-sectiune > summary { list-style: none; cursor: pointer; padding: .85rem 1rem; font-weight: 600; display: flex; align-items: center; gap: .6rem; }
.urbex-sectiune > summary::-webkit-details-marker { display: none; }
.urbex-sectiune > summary .urbex-sectiune-nr { width: 26px; height: 26px; border-radius: 50%; background: var(--accent); color: #fff; font-size: .8rem; display: inline-flex; align-items: center; justify-content: center; flex: none; }
.urbex-sectiune > .urbex-sectiune-body { padding: 0 1rem 1rem; }
@media (prefers-reduced-motion: reduce) { * { transition: none !important; animation: none !important; } }
