/* Opt-in shared surface for operational pages; document previews keep their own layout. */
.page-surface { --page-title-colour:#172033; background:#fff; color:#172033; border:1px solid #cbd5e1; min-width:0; }
.page-surface .link { color:#0f766e; }
.page-surface .link:hover, .page-surface .link:focus-visible { color:#115e59; }
.page-surface--settings { padding:20px; }
.page-surface--settings > .page-title { color:#172033; }
.page-surface > .section-head { margin:0; padding:18px 20px; border:0; border-bottom:1px solid #cbd5e1; border-radius:0; background:#f1f5f9; flex-wrap:wrap; gap:12px; }
.page-surface > .section-head .action-row { flex-wrap:wrap; gap:8px; }
.page-surface .page-title { font-size:24px; margin:0; }
.page-surface label { display:grid; gap:5px; font-size:12px; font-weight:600; min-width:0; }
.page-surface input, .page-surface select { min-width:0; max-width:100%; box-sizing:border-box; }
.page-surface > .notice { margin:12px 20px; }
.page-surface__body { padding:20px; min-width:0; }
.page-surface__body > .page-title { margin-bottom:18px; }
.page-surface__body label :is(input, select) { width:100%; }
.page-surface.page-surface--document { padding:0; gap:0; }
.page-surface--document > .section-head { justify-content:flex-start; }
.page-surface--document > [role="alert"] { padding:12px 20px; color:#a51d28; }
.page-surface .button, .page-surface .button-secondary { max-width:100%; white-space:normal; overflow-wrap:anywhere; }
.page-surface__controls { padding:16px 20px; border-bottom:1px solid #dbe2ea; display:grid; gap:12px; }
.page-surface__controls > form > label:first-of-type { flex:1 1 260px; max-width:420px; }
.page-surface__controls > form { gap:10px; }
.page-surface__controls > .action-row { gap:8px; }
.page-surface__controls details > summary { font-size:12px; }
.page-surface__controls details[open] { flex:1 1 260px; }
.page-surface__controls details form { width:100%; }
.page-surface__table { overflow-x:auto; max-width:100%; }
.stock-quick-add { display:grid; grid-template-columns:minmax(0,1fr) 270px; gap:24px; align-items:start; }
.stock-quick-add__fields { display:flex; flex-wrap:wrap; align-items:end; gap:10px; min-width:0; }
.stock-quick-add__fields > label:first-of-type { flex:1 1 240px; }
.stock-quick-add__actions { display:grid; gap:8px; min-width:0; }
.stock-quick-add__actions details { min-width:0; }
.stock-quick-add__actions .stock-action { display:flex; align-items:center; justify-content:flex-start; gap:9px; width:100%; box-sizing:border-box; min-height:38px; text-align:left; font-size:12px; }
.stock-action img { width:18px; height:18px; flex:0 0 18px; filter:brightness(0) invert(1); }
.stock-toolbar-action { display:inline-flex; align-items:center; gap:8px; }
.stock-quick-add__actions summary { list-style:none; }
.stock-quick-add__actions summary::-webkit-details-marker { display:none; }
@media(max-width:700px) { .stock-quick-add { grid-template-columns:minmax(0,1fr); gap:16px; } }
.page-surface__table .data-table { width:100%; min-width:760px; }
.page-surface__table .data-table th { background:#e8edf2; color:#334155; padding:12px; }
.page-surface__table .data-table td { padding:12px; vertical-align:middle; background:#fff; border-bottom:1px solid #e2e8f0; }
.page-surface__table .data-table tr:nth-child(even) td { background:#f8fafc; }
.page-surface__table .data-table tr:hover td { background:#eef8f6; }
@media(max-width:640px) {
 .page-surface--settings { padding:12px; }
 .page-surface > .section-head { align-items:flex-start; flex-direction:column; }
 .page-surface > .section-head, .page-surface__controls, .page-surface__body { padding:12px; }
 .page-surface > .section-head .action-row { gap:6px; }
 .page-surface > .section-head a, .page-surface > .section-head button { font-size:12px; padding:8px 10px; }
}
@media print {
 .page-surface.page-surface--document { border:0; background:transparent; padding:0; margin:0; }
}
