/* Material requests (stage 17): the list's late rows, the request form's lines with their stock hint, the request page's head and
   sections, the supply dialogs, the waiting parts' request links and the document numbering screen. */

.mr-late {
    margin-bottom: 12px;
}

.lt__row.is-late > td:first-child {
    box-shadow: inset 3px 0 0 var(--ft-streamer);
}

.mr-late-day {
    color: var(--ft-streamer);
    font-weight: 600;
}

/* ---------- Request form ---------- */

.mr-wo {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    padding: 8px 12px;
    border-radius: var(--ft-radius-sm);
    background: var(--ft-chalk);
    color: var(--ft-stencil-soft);
    font-size: 0.88rem;
}

.mr-lines {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin: 0 0 14px;
    padding: 0;
    list-style: none;
}

.mr-line {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 12px 14px;
    border: 1px solid var(--ft-line);
    border-radius: var(--ft-radius-sm);
    background: #FFFFFF;
}

.mr-line__part {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 8px;
}

.mr-line__name {
    color: var(--ft-stencil-soft);
}

.mr-line__fields {
    display: grid;
    grid-template-columns: 170px minmax(0, 1fr) auto;
    gap: 10px;
    align-items: start;
}

.mr-line__stock {
    color: var(--ft-stencil-soft);
    font-size: 0.8rem;
}

.mr-add {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding-top: 12px;
    border-top: 1px dashed var(--ft-line);
}

.mr-add__button {
    align-self: flex-end;
}

.mr-wo-pick {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.mr-wo-pick > .mud-button-root {
    align-self: flex-start;
}

.mr-wo-option {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

/* ---------- Request page ---------- */

.mr-head {
    margin-bottom: 18px;
    padding: 16px 20px;
}

.mr-head__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 12px;
}

.mr-facts__text {
    white-space: pre-wrap;
}

.mr-section-title {
    margin: 22px 0 10px;
    font-family: var(--ft-font-display);
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--ft-stencil);
}

.mr-files {
    margin-top: 22px;
}

/* ---------- Dialogs ---------- */

.mr-dialog {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.mr-dialog__line {
    margin: 0;
    font-weight: 600;
}

.mr-dialog__hint {
    margin: 0;
    color: var(--ft-stencil-soft);
    font-size: 0.86rem;
}

.mr-sources {
    max-height: 260px;
    overflow-y: auto;
}

.mr-sources li {
    cursor: pointer;
}

/* ---------- Waiting parts ---------- */

.wo-waiting__request {
    margin-left: auto;
}

.wo-waiting__req {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 4px;
    text-decoration: none;
}

/* ---------- Document numbering ---------- */

.num-format {
    padding: 2px 8px;
    border-radius: var(--ft-radius-xs);
    background: var(--ft-chalk);
    font-size: 0.86rem;
}

.num-format-field input {
    font-family: Consolas, "Cascadia Mono", monospace;
}

.num-preview {
    margin: 0;
    font-size: 0.92rem;
}

.num-help {
    margin: 0;
    padding-left: 18px;
    color: var(--ft-stencil-soft);
    font-size: 0.84rem;
    line-height: 1.7;
}

.num-help code {
    padding: 1px 6px;
    border-radius: var(--ft-radius-xs);
    background: var(--ft-chalk);
}

@media (max-width: 600px) {
    .mr-line__fields {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .mr-line__fields > :nth-child(2) {
        grid-column: 1 / -1;
        grid-row: 2;
    }

    .mr-head {
        padding: 14px;
    }
}
