/* Shared catalog proportions for application screens; label printing is separate. */
@media screen {
 #main-content > .workspace-page{box-sizing:border-box;width:88%!important;max-width:1480px!important;margin:0 auto!important;padding:32px 0!important;background:#fff}
 #main-content .workspace-page>.page-heading,#main-content .workspace-page>.insights-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px!important}
 #main-content .workspace-page h1{font-size:29px!important;line-height:1.25;letter-spacing:-.6px;color:#172d50;font-weight:700}
 #main-content .workspace-page .eyebrow{font-size:12px;letter-spacing:1.4px;color:#7b8ba6;font-weight:700}
 #main-content .workspace-page:not(.inventory-page) :is(.card,.quality-panel,.insights-panel,.form-section){border:1px solid #e1e8f3;border-radius:9px;background:#fff;box-shadow:0 5px 18px #24467805}
 #main-content .workspace-page:not(.inventory-page) .btn{border-radius:7px;font-size:13px;min-height:36px}
 #main-content .workspace-page:not(.inventory-page) :is(input.form-control,select.form-control,textarea.form-control,.company-select-trigger){border-color:#d3def0;border-radius:7px}
 #main-content .workspace-page:not(.inventory-page) .table thead th{background:#f6f8fc;color:#607596;border-bottom:1px solid #e1e8f3;font-size:12px;letter-spacing:.2px}
 #main-content .workspace-page:not(.inventory-page) .table td{border-color:#edf1f7;color:#233a60}
 .macrodent-message{text-align:center!important;white-space:pre-line;font-size:15px!important;line-height:1.6!important;color:#526681!important}
 @media(max-width:900px){#main-content > .workspace-page{width:94%!important;padding:24px 0!important}}
 @media(max-width:600px){#main-content > .workspace-page{width:calc(100% - 28px)!important}#main-content .workspace-page h1{font-size:25px!important}#main-content .workspace-page>.page-heading,#main-content .workspace-page>.insights-heading{flex-wrap:wrap;gap:12px}}
}

/* Consistent alignment for application alerts and confirmations. */
.swal2-container{z-index:2000!important}.swal2-popup{box-sizing:border-box;max-width:calc(100vw - 32px);padding:24px 24px 22px!important}.swal2-popup .swal2-title{text-align:center!important;font-size:25px!important;line-height:1.3!important;padding:0!important;margin:12px 0 0!important;overflow-wrap:anywhere}.swal2-popup .swal2-html-container{text-align:center!important;margin:16px 0 0!important;padding:0!important;line-height:1.6!important;overflow-wrap:anywhere}.swal2-popup .swal2-icon{margin:8px auto 16px!important}.swal2-popup .swal2-actions{justify-content:center!important;gap:8px;margin:22px auto 0!important}.swal2-popup .swal2-actions button{margin:0!important}@media(max-width:480px){.swal2-popup{padding:20px 18px!important}.swal2-popup .swal2-title{font-size:22px!important}}

@media screen {
  :root {
    --catalog-ink: #192e59;
    --catalog-line: #dce5f3;
    --catalog-tint: #f4f7fc;
    --catalog-shadow: 0 4px 18px rgba(36,70,120,.05);
  }
  #main-content .workspace-page > :is(.page-heading,.insights-heading) {
    border-bottom: 0;
  }
  #main-content .workspace-page:not(.inventory-page) :is(.page-heading,.insights-heading) {
    padding-bottom: 14px;
  }
  #main-content .workspace-page:not(.inventory-page) :is(.history-filters,.remision-filters,.insights-filters,.help-panel,.table-responsive,.card,.insights-panel,.form-section) {
    background-color: white;
    border: 1px solid var(--catalog-line);
    border-radius: 10px;
    box-shadow: var(--catalog-shadow);
  }
  #main-content .workspace-page :is(.history-filters,.remision-filters,.insights-filters) {
    padding: 12px;
    gap: 12px;
  }
  #main-content .workspace-page .table-responsive > .table { margin-bottom: 0; }
  #main-content .workspace-page .table tbody tr:hover { background-color: #f8faff; }
  #main-content .workspace-page:not(.inventory-page) .btn-primary,
  .auth-panel .auth-btn { background-color: var(--catalog-ink); border-color: var(--catalog-ink); }
  #main-content .workspace-page:not(.inventory-page) .btn-primary:hover,
  .auth-panel .auth-btn:hover { background-color: #274571; }
  #main-content :is(.workspace-page,.auth-panel) :is(.form-control,.auth-input):focus {
    border-color: #849bc4;
    box-shadow: 0 0 0 3px rgba(66,103,170,.13);
  }
  .modal:not(.quality-dialog) .modal-dialog {
    height: 100%; min-height: 0; margin: 0 auto; padding-block: 24px;
  }
  .modal:not(.quality-dialog) .modal-content { max-height: 100%; }
  .modal .md-dialog-heading {
    align-items: center;
    justify-content: flex-start;
    gap: 16px;
    padding: 0 18px 0 0;
    border-bottom: 1px solid var(--catalog-line);
    background: linear-gradient(110deg,white,#f6f9fd);
    border-radius: inherit;
  }
  .md-dialog-emblem {
    display: grid; place-items: center; flex: 0 0 78px; min-height: 68px;
    align-self: stretch; padding: 0 12px 6px 0;
    background: url('/img/quality-lots-header.svg') left top / 100% 100% no-repeat;
    color: white; font-size: 24px;
  }
  .modal .md-dialog-heading .modal-title { margin: 0; color: var(--catalog-ink); }
  .modal .md-dialog-heading .close {
    flex: none; margin: 0 0 0 auto; padding: 0;
    width: 34px; height: 34px; border-radius: 50%;
    background: #edf2fa; color: var(--catalog-ink); opacity: 1;
  }
  .modal:not(.quality-dialog) .modal-footer { border-color: var(--catalog-line); background: #fafcff; }
  @media (max-width: 575px) {
    .modal:not(.quality-dialog) .modal-dialog { width: calc(100% - 20px); padding-block: 10px; }
    .modal .md-dialog-heading { gap: 10px; padding-right: 12px; }
    .md-dialog-emblem { flex-basis: 60px; min-height: 56px; font-size: 20px; }
  }
}

@media screen {
  /* Catalog and administration forms, including the inventory menu dialogs. */
  .inventory-fields {
    --field-border: #bacce4;
    --field-focus: #5279ad;
    --field-height: 42px;
  }
  .inventory-fields :is(input.form-control, textarea.form-control, select.form-control, button.company-select-trigger) {
    box-sizing: border-box;
    min-width: 0;
    min-height: var(--field-height);
    padding: 9px 12px;
    border: 1px solid var(--field-border);
    border-radius: 8px;
    background-color: #fbfcff;
    color: #192e59;
  }
  .inventory-fields button.company-select-trigger { padding-right: 32px; }
  .inventory-fields textarea.form-control { min-height: 74px; resize: vertical; }
  .inventory-fields .reception-order-fields textarea[name="condition"] {
    height: var(--field-height);
    min-height: var(--field-height);
  }
  .inventory-fields :is(input.form-control,textarea.form-control,button.company-select-trigger):focus-visible,
  .inventory-fields button.company-select-trigger[aria-expanded="true"] {
    outline: 2px solid var(--field-focus);
    outline-offset: 1px;
    background-color: white;
  }
  .inventory-fields input[type="file"]::file-selector-button {
    padding: 5px 10px;
    margin-right: 10px;
    border: 1px solid #cbd8ec;
    border-radius: 6px;
    background: #eaf1fc;
    color: #203c70;
    font: inherit;
    cursor: pointer;
  }
  .inventory-fields input.form-control[type="file"] {
    height: auto;
    padding: 6px;
    border-style: dashed;
  }
  .inventory-fields .catalog-filters label {
    border-color: var(--field-border);
    border-radius: 8px;
    background: #fbfcff;
  }
  .inventory-fields .catalog-filters label:focus-within {
    outline: 2px solid var(--field-focus);
    outline-offset: 1px;
  }
  .inventory-fields .catalog-filters :is(.company-select-trigger,input.form-control) {
    min-height: 0;
    border: 0;
    background: transparent;
    outline: none;
    box-shadow: none;
  }
  .inventory-fields .catalog-filters .company-select-trigger { padding-block: 1px; padding-left: 0; }
}

.md-file-zone {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  min-height: 64px;
  padding: 12px;
  border: 1px dashed #8daee9;
  border-radius: 10px;
  background: #f7faff;
  color: #203c70;
  font-size: 13px;
  font-weight: 600;
  text-align: center;
}
.md-file-zone > i { font-size: 25px; }
.md-file-caption { min-width: 0; overflow-wrap: anywhere; }
.md-file-zone:hover, .md-file-zone:focus-within { background: #eaf1ff; border-color: #5279ad; }
.md-file-zone:focus-within { outline: 2px solid #5279ad; outline-offset: 2px; }
#main-content .md-file-zone input[type=file], .modal .md-file-zone input[type=file] {
  position: absolute; inset: 0; z-index: 1;
  width: 100%; height: 100%; margin: 0; padding: 0; opacity: 0; cursor: pointer;
}


@media screen {
  .reception-order-fields { --receipt-note-height: 64px; }
  .reception-order-fields .md-file-zone,
  .inventory-fields .reception-order-fields textarea[name="reason"] {
    box-sizing: border-box;
    min-height: var(--receipt-note-height);
  }
  .inventory-fields .reception-order-fields textarea[name="reason"] {
    height: var(--receipt-note-height);
  }
}
