/* Shared typography for application screens; printed PDFs retain their own layout. */
:root{--ui-title:29px;--ui-section:16px;--ui-text:14px;--ui-small:12px;--ui-stat:27px}
body{font-size:var(--ui-text);line-height:1.5}
#main-content h1{font-size:var(--ui-title)!important;line-height:1.2!important;font-weight:700;letter-spacing:-.5px;margin-top:0;margin-bottom:8px}
#main-content h2,#main-content h3,#main-content h4,#main-content h5,.modal .modal-title{font-size:var(--ui-section)!important;line-height:1.35!important;font-weight:600}
#main-content .eyebrow{font-size:11px!important;line-height:1.4;letter-spacing:1.6px}
#main-content .page-heading p,#main-content .insights-heading p,#main-content .reception-page p,#main-content .insights-panel>p,#main-content .reference-actions p{font-size:var(--ui-text)!important;line-height:1.5!important}
#main-content .page-heading,#main-content .insights-heading{margin-bottom:18px}
#main-content .btn,#main-content .product-links button,.modal .btn{font-size:13px!important;line-height:1.3}
#main-content label,.modal label{font-size:13px;line-height:1.4}
#main-content .product-code,#main-content .product-meta,#main-content .stock-quantity-copy>span,#main-content .signature-status strong,#main-content .remision-folio{font-size:var(--ui-small)!important;line-height:1.4!important}
#main-content .stock-quantity-copy strong,#main-content .stock-quantity-copy strong small{font-size:16px!important;line-height:1.35}
#main-content .insight-metric strong,#main-content .catalog-metrics strong,#main-content .remision-metrics strong{font-size:var(--ui-stat)!important;line-height:1.2}
#main-content .insight-metric>div>span,#main-content .catalog-metrics span,#main-content .remision-metrics span{font-size:13px!important}
#main-content .insight-metric small,#main-content .catalog-metrics small,#main-content .remision-metrics small{font-size:11px!important;line-height:1.4}
#main-content table th{font-size:11px!important;line-height:1.4;vertical-align:middle}
#main-content table td{font-size:13px!important;line-height:1.45;vertical-align:middle}
#main-content .recent-compact td{font-size:12px!important;padding-top:9px;padding-bottom:9px}
#main-content .badge,#main-content .stock-status,#main-content .remision-state,#main-content .metric-trend{font-size:11px!important;line-height:1.2}
#main-content .reception-reader,#main-content .reception-review{padding:20px;margin-bottom:16px}
#main-content .reception-heading{gap:12px;margin-bottom:14px}
#main-content .reception-heading h2{margin:0 0 5px}
#main-content .reception-footer{margin-top:14px}
#main-content .form-control,.modal .form-control{font-size:14px}
#main-content input,#main-content textarea,.modal input,.modal textarea{max-width:100%}
@media(max-width:600px){#main-content h1{overflow-wrap:anywhere}#main-content .reception-reader,#main-content .reception-review{padding:16px}#main-content input,#main-content select,#main-content textarea,.modal input,.modal select,.modal textarea,.company-select-trigger{font-size:16px!important}#main-content .reception-heading{flex-wrap:wrap}#main-content .page-heading,#main-content .insights-heading{gap:12px}}

/* One shared page frame and heading alignment across the application. */
#main-content .workspace-page{box-sizing:border-box;width:88%!important;max-width:1480px!important;margin-left:auto!important;margin-right:auto!important;padding:32px 0!important}
#main-content .workspace-page>.page-heading,#main-content .workspace-page>.insights-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;min-height:0;margin:0 0 20px!important;padding:0!important;text-align:left}
#main-content .workspace-page>.page-heading>div,#main-content .workspace-page>.insights-heading>div{min-width:0;text-align:left;margin:0;padding:0}
#main-content .workspace-page .page-heading h1,#main-content .workspace-page .insights-heading h1{display:block;text-align:left!important;margin:5px 0 8px!important;padding:0!important;text-indent:0;max-width:none}
#main-content .workspace-page .page-heading .eyebrow,#main-content .workspace-page .insights-heading .eyebrow{display:block;margin:0!important;padding:0!important;text-align:left}
#main-content .workspace-page .page-heading p,#main-content .workspace-page .insights-heading p{margin:0!important;padding:0!important;text-align:left;max-width:none}
#main-content .workspace-page>.card,#main-content .workspace-page>.insights-panel{margin-bottom:20px}
@media(max-width:900px){#main-content .workspace-page{width:94%!important;padding:24px 0!important}}
@media(max-width:600px){#main-content .workspace-page{width:100%!important;padding:20px 16px!important}#main-content .workspace-page>.page-heading,#main-content .workspace-page>.insights-heading{flex-direction:column;align-items:stretch;gap:12px}#main-content .workspace-page>.page-heading>div,#main-content .workspace-page>.insights-heading>div{max-width:100%}}

body:has(.auth-site-footer){min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:#fff}
body:has(.auth-site-footer)>#main-content{flex:1;display:flex;flex-direction:column;width:100%}
.auth-site-footer{margin-top:auto;background:#fff;border-top:1px solid #dce5f2;padding:18px 0 32px;color:#7589a9;font-size:11px;line-height:1.5}
.auth-site-footer>div{width:88%;max-width:1480px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:16px}
.auth-site-footer em{font-weight:400}.auth-site-footer i{margin-left:8px}
@media(max-width:600px){.auth-site-footer>div{width:auto;margin:0 16px;flex-wrap:wrap;gap:8px}.auth-site-footer{padding:16px 0 24px}}

/* Authentication footer matches Profile's dimensions. */
.auth-site-footer{padding:16px 6%;border-top:1px solid #dce4f1;color:#647b9e;font-size:11px;line-height:1.5}
.auth-site-footer>div{width:100%;max-width:none;margin:0;display:flex;align-items:baseline;justify-content:space-between;gap:12px}
@media(max-width:600px){.auth-site-footer{padding:16px 6%}.auth-site-footer>div{width:100%;margin:0;gap:12px;flex-wrap:wrap}}
/* Acciones superiores: misma geometría que Ver inventario. */
#main-content .page-heading > .btn,
#main-content .insights-heading > .btn {
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:40px!important;
  height:auto!important;
  padding:10px 18px!important;
  border-radius:7px!important;
  font-size:13px!important;
  font-weight:600!important;
  line-height:18px!important;
  margin:0!important;
  flex-shrink:0;
  text-align:center;
}
#main-content .page-heading > .btn-secondary,
#main-content .insights-heading > .btn-secondary {
  background:#f5f7fb!important;
  border:1px solid #d5dfef!important;
  color:#1d315b!important;
}
#main-content .page-heading > .btn-secondary:hover,
#main-content .insights-heading > .btn-secondary:hover { background:#eaf0f8!important; }
