/* Shared modal shell: the content scrolls; the heading and actions remain reachable. */
.mud-dialog:not(.mud-dialog-fullscreen) {
    max-height: calc(100dvh - 48px);
    border: 1px solid var(--mud-palette-lines-default);
    border-radius: 16px;
    box-shadow: 0 24px 80px rgb(15 23 42 / 24%);
}
.mud-dialog .mud-dialog-title {
    flex-shrink: 0;
    padding: 24px 60px 20px 28px;
    border-bottom: 1px solid var(--mud-palette-lines-default);
}
.mud-dialog .mud-dialog-title .mud-typography-h6 { font-size: 1.25rem; font-weight: 700; line-height: 1.5; }
.mud-dialog .mud-dialog-content { min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 24px 28px; }
.mud-dialog .mud-dialog-actions {
    flex-shrink: 0;
    gap: 10px;
    padding: 18px 28px;
    border-top: 1px solid var(--mud-palette-lines-default);
    background: var(--mud-palette-surface);
}
.mud-dialog .mud-dialog-actions .mud-button-root { min-height: 44px; min-width: 88px; padding-inline: 22px; }
.mud-dialog .mud-input-helper-text { font-size: .8125rem; line-height: 1.55; }
.eggsf-dialog-subtitle { margin-top: 4px; font-size: .875rem; line-height: 1.6; color: var(--mud-palette-text-secondary); }
.eggsf-dialog-code { display: inline-block; margin-inline-start: 8px; font-size: .75rem; overflow-wrap: anywhere; }
.mud-dialog .eggsf-company-dialog-content { padding: 0; }
.eggsf-editor-tabs .mud-tabs-toolbar { position: sticky; top: 0; z-index: 2; background: var(--mud-palette-surface); border-bottom: 1px solid var(--mud-palette-lines-default); }
.eggsf-editor-tabs .mud-tab { min-height: 52px; padding-inline: 24px; font-size: .9375rem; font-weight: 600; }
.eggsf-editor-tabs .mud-tabs-panels { min-height: 450px; }
.eggsf-editor-panel { padding: 24px 28px 28px; }
.eggsf-form-intro { font-size: .875rem; line-height: 1.6; color: var(--mud-palette-text-secondary); margin-bottom: 24px; }
.eggsf-form-intro > span { display: block; margin-top: 4px; font-size: .8125rem; }
.eggsf-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 24px; align-items: start; }
.eggsf-field-wide { grid-column: 1 / -1; }
.eggsf-form-field { min-width: 0; }
.eggsf-field-label { display: block; margin-bottom: 8px; color: var(--mud-palette-text-primary); font-size: .875rem; line-height: 1.5; font-weight: 600; }
.eggsf-required { color: var(--mud-palette-error); }
.eggsf-form-field .mud-input-control { margin-top: 0; }
.eggsf-form-field .mud-input-outlined { border-radius: 8px; background: var(--mud-palette-surface); }
.eggsf-form-field .mud-input-outlined .mud-input-root { padding: 12px 14px; font-size: 1rem; line-height: 1.5; }
.eggsf-form-field .mud-input-outlined-border { border-color: var(--mud-palette-text-secondary); opacity: .5; }
.eggsf-form-field .mud-input-outlined:focus-within .mud-input-outlined-border { opacity: 1; }
.eggsf-form-field textarea { resize: vertical; }
.eggsf-company-capabilities { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--mud-palette-lines-default); }
.eggsf-capability-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.eggsf-capability-chips .mud-chip { margin: 0; }
.eggsf-field-help { font-size: .8125rem; line-height: 1.6; margin-top: 8px; color: var(--mud-palette-text-secondary); }
.eggsf-branding-card { padding: 20px; border: 1px solid var(--mud-palette-lines-default); border-radius: 12px; }
.eggsf-branding-card h3 { font-size: .9375rem; font-weight: 600; }
.eggsf-branding-preview { display: grid; place-items: center; height: 144px; margin-block: 16px; border-radius: 8px; color: var(--mud-palette-text-secondary); background: var(--mud-palette-background-gray); }
.eggsf-branding-preview img { max-width: 90%; max-height: 116px; object-fit: contain; }
.eggsf-upload-note { margin-top: 24px; }
/* Entry workspaces use available desktop width; units never occupy numeric inputs. */
.mud-dialog.eggsf-order-dialog:not(.mud-dialog-fullscreen) {
    width: calc(100vw - 48px);
    max-width: 1760px;
    margin: 24px;
}
.eggsf-order-defaults {
    display: flex; flex-wrap: wrap; gap: 10px 24px; align-items: baseline;
    padding: 12px 16px; margin-bottom: 24px; border-radius: 10px;
    background: var(--mud-palette-background-gray); color: var(--mud-palette-text-secondary);
    font-size: .875rem; line-height: 1.6;
}
.eggsf-order-defaults strong, .eggsf-order-defaults b { color: var(--mud-palette-text-primary); }
.eggsf-order-lines { display: grid; gap: 16px; }
.eggsf-order-line { padding: 20px; border: 1px solid var(--mud-palette-lines-default); border-radius: 12px; }
.eggsf-order-line-fields {
    display: grid; grid-template-columns: minmax(240px, 2fr) minmax(170px, 1fr) minmax(200px, 1.2fr) minmax(150px, .8fr) 48px;
    gap: 20px; align-items: start;
}
.eggsf-order-line-fields > * { min-width: 0; }
.eggsf-order-dialog .mud-input-control { margin-top: 0; }
.eggsf-order-dialog .mud-input-outlined .mud-input-root { font-size: 1rem; padding-block: 16px; }
.eggsf-order-number .mud-input-root { font-size: 1.125rem !important; font-variant-numeric: tabular-nums; }
.eggsf-order-field-meta { margin-top: 8px; color: var(--mud-palette-text-secondary); font-size: .8125rem; line-height: 1.5; overflow-wrap: anywhere; }
.eggsf-order-line-total { display: flex; flex-direction: column; gap: 8px; padding-block: 4px; text-align: right; }
.eggsf-order-line-total span { color: var(--mud-palette-text-secondary); font-size: .8125rem; }
.eggsf-order-line-total strong { font-size: 1.25rem; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.eggsf-order-remove { margin-top: 6px; }
.eggsf-order-description { margin-top: 18px !important; }
.eggsf-order-grand-total { display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: baseline; margin-right: auto; }
.eggsf-order-grand-total span { color: var(--mud-palette-text-secondary); }
.eggsf-order-grand-total strong { font-size: 1.375rem; font-variant-numeric: tabular-nums; }
.eggsf-order-grand-total small { font-size: .8125rem; font-weight: 500; }
@media (max-width: 1199px) {
    .eggsf-order-line-fields { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 48px; }
    .eggsf-order-product { grid-column: 1 / 3; }
    .eggsf-order-remove { grid-column: 3; grid-row: 1; }
    .eggsf-order-number { grid-row: 2; }
    .eggsf-order-line-total { grid-column: 1 / -1; flex-direction: row; justify-content: space-between; align-items: baseline; }
}
@media (max-width: 600px) {
    .mud-dialog:not(.mud-dialog-fullscreen) { margin: 12px; width: calc(100% - 24px); max-height: calc(100dvh - 24px); border-radius: 12px; }
    .mud-dialog .mud-dialog-title { padding: 20px 52px 16px 20px; }
    .mud-dialog .mud-dialog-content { padding: 20px; }
    .mud-dialog .eggsf-company-dialog-content { padding: 0; }
    .mud-dialog .mud-dialog-actions { padding: 14px 20px; }
    .eggsf-dialog-code { display: block; margin-inline-start: 0; }
    .eggsf-editor-tabs .mud-tab { min-width: 0; flex: 1; padding-inline: 12px; }
    .eggsf-editor-tabs .mud-tabs-panels { min-height: 0; }
    .eggsf-editor-panel { padding: 20px; }
    .eggsf-form-grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
    .mud-dialog.eggsf-order-dialog:not(.mud-dialog-fullscreen) { width: calc(100vw - 16px); margin: 8px; max-height: calc(100dvh - 16px); }
    .eggsf-order-dialog .mud-dialog-content { padding: 16px; }
    .eggsf-order-line { padding: 16px; }
    .eggsf-order-line-fields { gap: 16px 12px; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 40px; }
    .eggsf-order-number:nth-child(2) { grid-column: 1 / -1; grid-row: 2; }
    .eggsf-order-number:nth-child(3) { grid-column: 1 / -1; grid-row: 3; }
    .eggsf-order-grand-total { flex-basis: 100%; justify-content: space-between; }
    .eggsf-order-dialog .mud-dialog-actions { flex-wrap: wrap; }
}
