/* iNat TrailCam — compact desktop workspace.
   Visual-only overrides that preserve the balanced 1680×1050 proportions
   when the application is opened in a 1920×1080 desktop viewport. */

@media (min-width: 1680px) and (max-width: 2100px) and (min-height: 820px) and (max-height: 1200px) {
  :root {
    --fhd-gap: .72rem;
    --fhd-panel-pad: .82rem;
  }

  body {
    font-size: 15px;
  }

  .app-header {
    min-height: 86px;
    padding: .68rem 1rem;
  }

  .brand-logo {
    width: 66px;
    height: 66px;
  }

  .brand-minimal h1 span,
  .brand-minimal h1 {
    font-size: 2rem;
    line-height: 1;
  }

  .brand-subtitle {
    margin-top: .18rem;
    font-size: .82rem;
  }

  .header-actions-minimal {
    padding-right: 4rem;
  }

  .compatibility-card {
    width: min(calc(100% - 1.4rem), 1660px);
    margin: .7rem auto;
    padding: .72rem .9rem;
    gap: .72rem;
  }

  .compatibility-card h2 {
    margin-bottom: .18rem;
    font-size: 1.02rem;
  }

  .compatibility-card p {
    margin-top: .18rem;
    margin-bottom: .18rem;
  }

  .mode-complete-active .compatibility-card {
    padding: .58rem .85rem;
  }

  .app-grid {
    grid-template-columns: 294px minmax(760px, 950px) 392px;
    gap: var(--fhd-gap);
    width: min(calc(100% - 1.2rem), 1660px);
    padding: 0 0 .8rem;
  }

  .panel {
    padding: var(--fhd-panel-pad);
    border-radius: 15px;
  }

  .panel h2 {
    margin-bottom: .52rem;
    font-size: 1.08rem;
  }

  .panel h3 {
    margin-bottom: .48rem;
    font-size: .98rem;
  }

  .panel section + section {
    margin-top: .85rem;
    padding-top: .85rem;
  }

  .hint {
    font-size: .82rem;
    line-height: 1.28;
  }

  .player-panel {
    width: 100%;
    max-width: 950px;
  }

  .player-panel .video-stage {
    max-width: 924px;
    margin-top: .55rem;
    margin-bottom: .55rem;
    border-radius: 13px;
  }

  .player-controls-stack,
  .player-controls-layout-v14 {
    gap: .52rem;
  }

  .v14-workflow-block {
    padding: .66rem .72rem;
  }

  .v14-fine-controls,
  .v14-capture-actions,
  .v28-decision-controls {
    gap: .38rem;
  }

  .v14-capture-status,
  .v14-progress-header {
    font-size: .8rem;
  }

  .player-controls-layout-v14 button,
  .v14-workflow-block button {
    min-height: 36px;
    padding-top: .5rem;
    padding-bottom: .5rem;
  }

  .v14-phase-three {
    margin-top: .05rem;
  }

  .v14-finish-subfolder {
    min-height: 38px;
  }

  .subsection-label {
    margin-top: .78rem;
    margin-bottom: .35rem;
    font-size: .69rem;
  }

  .ocr-card {
    padding: .72rem;
    border-radius: 13px;
  }

  .ocr-card > * + * {
    margin-top: .48rem;
  }

  .ocr-status,
  .source-box {
    margin: .42rem 0;
    padding: .5rem .62rem;
    font-size: .8rem;
  }

  #ocrRawText {
    min-height: 3.1rem;
    max-height: 3.1rem;
    padding: .52rem .65rem;
  }

  .ocr-details {
    padding: .55rem .65rem;
  }

  .ocr-fields {
    margin-top: .45rem;
    gap: .45rem;
  }

  .ocr-fields select,
  .ocr-actions button {
    min-height: 36px;
    padding: .5rem .65rem;
  }

  .player-panel .screenshots-workflow-section {
    margin-top: .8rem;
    padding-top: .8rem;
  }

  .compact-hint {
    margin: -.1rem 0 .45rem;
  }

  .thumb-grid-player {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: .42rem;
  }

  .thumb-meta {
    padding: .26rem .3rem;
    font-size: .66rem;
  }

  .playlist-panel,
  .observation-panel {
    font-size: .92rem;
  }

  .folder-current,
  .status-box,
  .date-format-line,
  .ocr-details,
  .map-details {
    border-radius: 11px;
  }

  .folder-current {
    margin-top: .58rem;
    padding: .58rem .65rem;
  }

  .status-box {
    padding: .6rem .65rem;
    margin-bottom: .6rem;
  }

  .observed-fields,
  .two-cols {
    gap: .45rem;
    margin-top: .45rem;
    margin-bottom: .58rem;
  }

  label {
    gap: .24rem;
    font-size: .84rem;
  }

  input,
  select,
  textarea {
    padding: .55rem .65rem;
    border-radius: 10px;
  }

  .date-format-line {
    gap: .45rem;
    margin-bottom: .58rem;
    padding: .48rem .58rem;
  }

  .observation-label,
  .observation-label:first-of-type {
    margin-top: .68rem;
  }

  .submit-card {
    gap: .42rem;
  }

  .submit-card #btnSaveLocalPackage,
  .submit-card .main-save-button {
    min-height: 42px;
    padding: .68rem .8rem;
  }

  .app-footer {
    grid-template-columns: 170px minmax(0, 1fr) 92px;
    gap: .8rem;
    padding: .62rem 1rem .7rem;
  }

  .footer-polones-logo {
    max-width: 150px;
  }

  .footer-qr {
    width: 72px;
    height: 72px;
  }

  .footer-center {
    gap: .12rem;
    font-size: .78rem;
  }

  .footer-center strong {
    font-size: .92rem;
  }

  .footer-copyright {
    font-size: .72rem;
  }
}
