.osc-open[hidden], .osc-dialog [hidden] { display: none !important; }
.osc-open { white-space: nowrap; }
.osc-dialog { width: min(1200px, calc(100vw - 24px)); max-width: none; max-height: calc(100dvh - 32px); padding: 0; border: 1px solid #cddbd8; border-radius: 18px; color: #193d39; background: #f8fbfa; box-shadow: 0 24px 90px #122e3955; }
.osc-dialog::backdrop { background: #102e3966; }
.osc-panel { display: flex; flex-direction: column; max-height: calc(100dvh - 34px); min-height: 320px; }
.osc-header, .osc-footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 22px; background: #fff; flex-shrink: 0; }
.osc-header { border-bottom: 1px solid #dbe6e3; align-items: flex-start; }
.osc-header h2 { margin: 4px 0 8px; font-size: 23px; }
.osc-header p { margin: 0; font-size: 13px; line-height: 1.6; }
.osc-header .eyebrow { color: #0d7c74; }
.osc-header button { flex-shrink: 0; }
.osc-content { min-height: 0; overflow: auto; padding: 16px 22px 22px; overscroll-behavior: contain; }
.osc-note { margin: 0 0 14px; line-height: 1.6; color: #536d68; }
.osc-search { display: grid; gap: 7px; margin-bottom: 16px; }
.osc-search label { font-size: 13px; font-weight: 700; }
.osc-search > div { display: flex; gap: 8px; }
.osc-search input { min-width: 0; flex: 1; border: 1px solid #b9cfca; border-radius: 9px; background: #fff; padding: 10px 12px; color: inherit; font: inherit; }
.osc-dialog button { cursor: pointer; font: inherit; }
.osc-dialog button:disabled { cursor: default; opacity: .55; }
.osc-dialog :focus-visible { outline: 3px solid #23a79b; outline-offset: 3px; }
.osc-operation { padding: 12px 14px; border: 1px solid #c9dfd7; background: #edf6f2; border-radius: 10px; margin-bottom: 14px; }
.osc-operation p { margin: 0 0 8px; line-height: 1.5; }
.osc-operation small { display: block; overflow-wrap: anywhere; margin-bottom: 8px; }
.osc-operation button { margin: 3px 8px 0 0; }
.osc-error { color: #a7312c; line-height: 1.5; }
.osc-empty { padding: 24px 16px; text-align: center; color: #627b74; border: 1px dashed #bdd1cb; border-radius: 12px; }
.osc-order { margin-top: 12px; border: 1px solid #d1dfda; border-radius: 12px; overflow: hidden; background: #fff; }
.osc-order-summary { display: flex; gap: 12px; align-items: center; justify-content: space-between; padding: 15px 16px; cursor: pointer; }
.osc-order-summary::before { content: "▸"; color: #0e786e; }
.osc-order[open] > .osc-order-summary::before { content: "▾"; }
.osc-order-title { display: grid; gap: 5px; margin-right: auto; min-width: 0; overflow-x: auto; }
.osc-order-title strong { font-size: 16px; }
.osc-order-title .osc-copy-order { justify-self: start; max-width: 100%; min-height: 24px; padding: 0; border: 0; border-radius: 3px; background: transparent; color: inherit; font-size: 16px; font-weight: 700; text-align: left; text-decoration: underline; text-decoration-style: dotted; text-underline-offset: 4px; user-select: text; }
.osc-order-title .osc-copy-order:hover { color: #086e66; }
.osc-order-title .osc-copy-status { color: #086e66; }
.osc-order-title .osc-copy-error { color: #a7312c; }
.osc-order-title span { font-size: 12px; color: #637b74; }
.osc-order-meta { display: flex; gap: 10px; flex-wrap: wrap; font-size: 12px; justify-content: flex-end; }
.osc-order-meta strong { color: #086e66; }
.osc-order-body { padding: 4px 16px 16px; border-top: 1px solid #e3ece8; }
.osc-table-wrap { max-width: 100%; overflow-x: auto; border: 1px solid #dbe6e2; border-radius: 8px; }
.osc-table { width: 100%; min-width: 1000px; border-collapse: collapse; font-size: 12px; }
.osc-table th { background: #edf4f1; color: #526c64; text-align: left; font-weight: 700; }
.osc-table td, .osc-table th { padding: 11px 9px; border-bottom: 1px solid #e3ebe7; vertical-align: top; line-height: 1.5; }
.osc-table td:first-child { text-align: center; }
.osc-table input[type="checkbox"] { width: 18px; height: 18px; accent-color: #0d8075; }
.osc-table tbody tr:last-child td { border-bottom: 0; }
.osc-line-disabled { background: #f5f7f6; color: #7b8983; }
.osc-nowrap { white-space: nowrap; }
.osc-muted { color: #6d8077; font-size: 12px; }
.osc-product { min-width: 130px; max-width: 220px; overflow-wrap: anywhere; }
.osc-date { width: 145px; border: 1px solid #bed2ca; border-radius: 7px; padding: 6px; color: inherit; background: #fff; font: inherit; }
.osc-date:disabled { background: #f1f4f2; border-color: #e0e6e2; }
.osc-line-actions { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; margin-top: 14px; }
.osc-line-actions .primary-link { margin-left: auto; }
.osc-footer { border-top: 1px solid #dbe6e3; font-size: 13px; }
@media (max-width: 650px) {
  .osc-dialog { width: calc(100vw - 12px); max-height: calc(100dvh - 12px); border-radius: 12px; }
  .osc-panel { max-height: calc(100dvh - 14px); }
  .osc-header, .osc-footer { padding: 14px 12px; gap: 8px; }
  .osc-header h2 { font-size: 20px; }
  .osc-content { padding: 12px; }
  .osc-search > div { flex-wrap: wrap; }
  .osc-search input { flex-basis: 100%; width: 100%; }
  .osc-order-summary { flex-wrap: wrap; padding: 12px; gap: 8px; }
  .osc-order-title { flex: 1; }
  .osc-order-meta { width: 100%; justify-content: flex-start; padding-left: 18px; }
  .osc-order-body { padding: 4px 10px 12px; }
  .osc-line-actions .primary-link { margin-left: 0; width: 100%; justify-content: center; }
}
