/* Purchase order overview: screenshot-aligned layout, scoped to this page. */
.purchase-orders-page {
  --po-border:#dde6f0;
  --po-muted:#6f829d;
  --po-accent:#0b8278;
  display:grid;
  gap:14px;
  width:100%;
  min-width:0;
  max-width:1900px;
  margin-inline:auto;
}
.purchase-orders-page > .ops-title-row { align-items:center; gap:18px; min-height:57px; }
.purchase-orders-page > .ops-title-row h1 { font-size:25px; line-height:1.2; letter-spacing:-.7px; }
.purchase-orders-page > .ops-title-row p { margin-top:6px; font-size:12px; line-height:1.5; color:#71839b; }
.purchase-orders-page > .ops-title-row .toolbar { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; margin:0; }
.purchase-orders-page > .ops-title-row .btn { min-height:36px; padding:8px 13px; border-radius:8px; font-size:12px; }
.purchase-orders-page > .ops-title-row .btn.primary { background:#0d8278; border-color:#0d8278; }
.purchase-orders-page .purchase-order-summary-grid {
  display:grid !important;
  grid-template-columns:repeat(7,minmax(0,1fr)) !important;
  flex-wrap:initial;
  gap:10px;
  align-items:stretch;
  width:100%;
  min-width:0;
  margin:0;
}
.purchase-orders-page .purchase-order-summary-grid .ops-stat-card {
  min-width:0;
  min-height:92px;
  grid-template-columns:30px minmax(0,1fr) !important;
  align-items:center;
  gap:8px !important;
  padding:10px !important;
  border:1px solid var(--po-border);
  border-radius:8px;
  box-shadow:0 2px 4px #203b5010;
  transform:none;
  transition:border-color 140ms ease,box-shadow 140ms ease;
}
.purchase-orders-page .purchase-order-summary-grid .ops-stat-card:hover {
  transform:none;
  border-color:#93c9c3;
  box-shadow:0 3px 9px #1d5f6810;
}
.purchase-orders-page .purchase-order-summary-grid .ops-stat-card:focus-visible {
  outline:3px solid #85cec5;
  outline-offset:2px;
}
.purchase-orders-page .purchase-order-summary-grid .ops-stat-icon {
  width:30px !important;
  height:30px !important;
  border-radius:8px;
}
.purchase-orders-page .purchase-order-summary-grid .ops-stat-icon .icon { width:16px; height:16px; }
.purchase-orders-page .purchase-order-summary-grid .ops-stat-card p {
  font-size:clamp(9px,4.7cqw,11px) !important;
  line-height:1.4 !important;
  letter-spacing:-.25px !important;
  white-space:normal !important;
  overflow-wrap:anywhere;
  margin:0 0 5px;
}
.purchase-orders-page .purchase-order-summary-grid .ops-stat-card strong {
  font-size:clamp(12px,6.2cqw,15px) !important;
  line-height:1.25 !important;
  letter-spacing:-.3px !important;
  font-variant-numeric:tabular-nums;
}
.purchase-orders-page .purchase-order-summary-grid .ops-stat-card small {
  display:block;
  margin-top:5px;
  font-size:clamp(8px,4cqw,10px) !important;
  line-height:1.5 !important;
  white-space:normal !important;
  overflow-wrap:anywhere;
}
.purchase-orders-page .purchase-order-summary-grid .purchase-amount-card { align-items:start; }
.purchase-orders-page .purchase-amount-card .ops-stat-icon { margin-top:1px; }
.purchase-orders-page .purchase-amount-main { display:grid; gap:3px; margin:0 0 6px; }
.purchase-orders-page .purchase-amount-main em,
.purchase-orders-page .purchase-amount-lines em { white-space:normal; font-size:10px; line-height:1.4; }
.purchase-orders-page .purchase-order-summary-grid .purchase-amount-main-value {
  text-align:right;
  font-size:clamp(11px,5.8cqw,15px) !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
  word-break:normal !important;
}
.purchase-orders-page .purchase-amount-lines { margin-top:4px; }
.purchase-orders-page .purchase-amount-lines span { grid-template-columns:minmax(0,1fr); gap:2px; }
.purchase-orders-page .purchase-amount-lines b { font-size:10px; white-space:normal; overflow-wrap:anywhere; }
.purchase-orders-page > .ops-filter-bar {
  display:flex;
  flex-wrap:wrap;
  align-items:flex-end;
  gap:12px 18px;
  padding:16px;
  min-height:92px;
  border:1px solid var(--po-border);
  border-radius:9px;
  box-shadow:0 2px 4px #203b5005;
}
.purchase-orders-page .ops-filter-fields {
  display:grid;
  grid-template-columns:minmax(220px,1.65fr) minmax(138px,1fr) 12px minmax(138px,1fr) minmax(140px,1fr) minmax(140px,1fr);
  align-items:end;
  gap:10px;
  flex:1 1 1060px;
  min-width:0;
}
.purchase-orders-page .ops-filter-fields > label { min-width:0; width:100%; }
.purchase-orders-page .ops-search-field { min-width:0; }
.purchase-orders-page .ops-filter-fields input,
.purchase-orders-page .ops-filter-fields select {
  width:100%;
  min-width:0;
  min-height:38px;
  border:1px solid #d2deec;
  border-radius:8px;
  background:#fff;
  color:#26394e;
  font-size:12px;
}
.purchase-orders-page .ops-filter-fields .ops-search-field input { padding-left:35px; }
.purchase-orders-page .ops-filter-fields .ops-date-sep { padding-bottom:11px; }
.purchase-orders-page .ops-select-field > span { font-size:11px; color:var(--po-muted); }
.purchase-orders-page .ops-filter-actions { margin-left:auto; justify-content:flex-end; flex-shrink:0; gap:8px; }
.purchase-orders-page .ops-filter-actions .btn { min-height:31px; padding:6px 10px; font-size:11px; }
.purchase-orders-page .purchase-orders-main-layout { display:block; min-width:0; width:100%; }
.purchase-orders-page .purchase-order-surface {
  min-height:168px;
  padding:16px;
  border:1px solid var(--po-border);
  border-radius:9px;
  box-shadow:0 2px 4px #203b5005;
}
.purchase-orders-page .purchase-order-surface > .surface-head {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.purchase-orders-page .surface-head h2 { margin:0; font-size:14px; font-weight:800; }
.purchase-orders-page .document-list-controls { min-width:0; display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:center; gap:8px; }
.purchase-orders-page .document-page-size { gap:6px; }
.purchase-orders-page .document-page-size select { min-height:31px; min-width:68px; width:auto; padding:4px 8px; font-size:12px; }
.purchase-orders-page .document-page-size span,
.purchase-orders-page .document-page-range,
.purchase-orders-page .document-page-current { font-size:11px; white-space:nowrap; }
.purchase-orders-page .document-page-buttons { gap:6px; }
.purchase-orders-page .document-page-buttons .btn { min-height:29px; padding:5px 10px; font-size:11px; }
.purchase-orders-page .purchase-order-empty { display:grid; min-height:92px; align-items:center; justify-items:center; color:#8190a4; }
.purchase-orders-page .purchase-order-empty > * { margin:0; }
.purchase-orders-page .purchase-order-table-wrap {
  width:100%;
  max-width:100%;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  scrollbar-width:thin;
  border-radius:6px;
}
.purchase-orders-page .purchase-order-table {
  min-width:1490px !important;
  width:100%;
  table-layout:fixed !important;
}
.purchase-orders-page .purchase-order-table .po-col-number { width:130px; }
.purchase-orders-page .purchase-order-table .po-col-date { width:100px; }
.purchase-orders-page .purchase-order-table .po-col-vendor { width:150px; }
.purchase-orders-page .purchase-order-table .po-col-money { width:100px; }
.purchase-orders-page .purchase-order-table .po-col-payment-method { width:92px; }
.purchase-orders-page .purchase-order-table .po-col-status { width:108px; }
.purchase-orders-page .purchase-order-table .po-col-export { width:130px; }
.purchase-orders-page .purchase-order-table .po-col-certificate { width:148px; }
.purchase-orders-page .purchase-order-table .po-col-action { width:124px; }
.purchase-orders-page .purchase-order-table th,
.purchase-orders-page .purchase-order-table td { padding:9px 7px; }
.purchase-orders-page .purchase-order-table .document-action-cell { overflow:visible; padding-inline:6px; }
.purchase-orders-page .purchase-order-table .document-action-cell .btn { padding:6px 8px !important; font-size:10px; min-height:30px; }
.purchase-orders-page .purchase-order-secondary-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:stretch;
  gap:14px;
  margin-top:12px;
  min-width:0;
}
.purchase-orders-page .purchase-order-secondary-grid > .ops-side-panel {
  padding:16px;
  min-width:0;
  min-height:192px;
  border:1px solid var(--po-border);
  border-radius:9px;
  background:#fff;
  box-shadow:0 2px 4px #203b5005;
}
.purchase-orders-page .purchase-order-secondary-grid .surface-head { gap:10px; margin-bottom:14px; }
.purchase-orders-page .purchase-order-secondary-grid .link-button { font-size:11px; color:var(--po-accent); white-space:nowrap; }
.purchase-orders-page .purchase-order-secondary-grid .ops-empty-line { padding:24px 4px; font-size:12px; }
.purchase-orders-page .purchase-order-secondary-grid .ops-donut-block { grid-template-columns:132px minmax(0,1fr); gap:12px; }
.purchase-orders-page .purchase-order-secondary-grid .ops-donut { width:126px; height:126px; }
.purchase-orders-page .purchase-order-secondary-grid .ops-donut-legend { min-width:0; }
.purchase-orders-page .purchase-order-secondary-grid .ops-donut-legend > span { display:grid; grid-template-columns:9px minmax(0,1fr) auto; align-items:center; gap:8px; font-size:12px; }
.purchase-orders-page .purchase-order-secondary-grid .ops-row { padding:9px 10px; font-size:11px; }
.purchase-orders-page .purchase-order-secondary-grid .ops-row strong { font-size:11px; }
.purchase-orders-page .purchase-order-secondary-grid .ops-row span { font-size:11px; }
.purchase-orders-page .po-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:1550px) {
  .purchase-orders-page .ops-filter-fields { flex-basis:100%; }
}
@media(max-width:1450px) {
  .purchase-orders-page .purchase-order-summary-grid { grid-template-columns:repeat(4,minmax(0,1fr)) !important; }
  .purchase-orders-page .purchase-amount-card { grid-column:span 2; }
  .purchase-orders-page .purchase-amount-main { grid-template-columns:minmax(0,1fr) auto; align-items:baseline; }
  .purchase-orders-page .purchase-amount-lines span { grid-template-columns:minmax(0,1fr) auto; align-items:baseline; }
}
@media(max-width:1150px) {
  .purchase-orders-page .ops-filter-fields { grid-template-columns:minmax(200px,1.5fr) minmax(135px,1fr) 10px minmax(135px,1fr); }
  .purchase-orders-page .ops-filter-fields .ops-select-field { grid-column:span 2; }
  .purchase-orders-page .purchase-order-secondary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .purchase-orders-page .purchase-order-secondary-grid > :last-child { grid-column:1/-1; }
}
@media(max-width:800px) {
  .purchase-orders-page > .ops-title-row { align-items:flex-start; flex-wrap:wrap; }
  .purchase-orders-page > .ops-title-row .toolbar { justify-content:flex-start; }
  .purchase-orders-page .purchase-order-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  .purchase-orders-page .purchase-order-secondary-grid { grid-template-columns:minmax(0,1fr); }
  .purchase-orders-page .purchase-order-secondary-grid > :last-child { grid-column:auto; }
  .purchase-orders-page .purchase-order-surface > .surface-head { align-items:flex-start; }
}
@media(max-width:600px) {
  .purchase-orders-page { gap:12px; }
  .purchase-orders-page > .ops-title-row h1 { font-size:23px; }
  .purchase-orders-page > .ops-title-row p { font-size:11px; }
  .purchase-orders-page > .ops-title-row .toolbar { width:100%; }
  .purchase-orders-page > .ops-title-row .toolbar .btn { flex:1; padding:8px; font-size:11px; }
  .purchase-orders-page > .ops-filter-bar { padding:12px; }
  .purchase-orders-page .ops-filter-fields { grid-template-columns:minmax(0,1fr) 12px minmax(0,1fr); gap:9px; }
  .purchase-orders-page .ops-filter-fields > .ops-search-field { grid-column:1/-1; }
  .purchase-orders-page .ops-filter-fields > .ops-date-field { grid-column:auto; }
  .purchase-orders-page .ops-filter-fields > .ops-select-field { grid-column:1/-1; }
  .purchase-orders-page .ops-filter-actions { width:100%; }
  .purchase-orders-page .ops-filter-actions .btn { flex:1; }
  .purchase-orders-page .purchase-order-surface { padding:12px; }
  .purchase-orders-page .document-list-controls { width:100%; justify-content:space-between; gap:7px; }
  .purchase-orders-page .document-page-buttons { margin-left:auto; }
  .purchase-orders-page .document-page-buttons .btn { padding:5px 8px; }
  .purchase-orders-page .purchase-order-secondary-grid { margin-top:0; }
  .purchase-orders-page .purchase-order-secondary-grid > .ops-side-panel { padding:14px; }
}
@media(max-width:360px) {
  .purchase-orders-page .purchase-order-summary-grid { grid-template-columns:minmax(0,1fr) !important; }
  .purchase-orders-page .purchase-amount-card { grid-column:auto; }
  .purchase-orders-page .purchase-order-secondary-grid .ops-donut-block { grid-template-columns:110px minmax(0,1fr); gap:8px; }
  .purchase-orders-page .purchase-order-secondary-grid .ops-donut { width:105px; height:105px; }
}
@media(prefers-reduced-motion:reduce) {
  .purchase-orders-page .purchase-order-summary-grid .ops-stat-card { transition:none; }
}
