/* efco Schnellbestellung – Farben wie NOVAChild my-nova ($primary #F8BF00, Text #525252) */
.efco-qo { padding-top: 1.5rem; padding-bottom: 3rem; color: #525252; }
.efco-qo-head h1 { margin-bottom: .25rem; }
.efco-qo-lead { color: #707070; margin-bottom: 1rem; }
.efco-qo-login { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem .75rem; padding: .75rem 1rem; margin-bottom: 1rem;
    background: #fff8e0; border: 1px solid #F8BF00; border-radius: 4px; }
.efco-qo-login .fa-lock { color: #b38a00; }
.efco-qo-link { font-weight: 600; text-decoration: underline; }
.efco-qo-tools { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1rem; margin-bottom: .75rem; }
.efco-qo-hint { font-size: .85rem; color: #707070; }
.efco-qo-paste { background: #f5f7fa; border: 1px solid #ebebeb; border-radius: 4px; padding: .75rem; margin-bottom: .75rem; }
.efco-qo-paste label { font-size: .9rem; }
.efco-qo-paste textarea { font-family: SFMono-Regular, Menlo, Consolas, monospace; font-size: .9rem; }
.efco-qo-paste-actions { margin-top: .5rem; display: flex; gap: .5rem; }
.efco-qo-table { border: 1px solid #ebebeb; border-radius: 4px; background: #fff; }
.efco-qo-add { margin-top: .5rem; }
.efco-qo-row > * { min-width: 0; }
.efco-qo-row { display: grid; grid-template-columns: 170px 1fr 150px 110px 36px; gap: .75rem; align-items: center; padding: .5rem .75rem; border-top: 1px solid #ebebeb; }
.efco-qo-row:first-child { border-top: 0; }
.efco-qo-row-head { font-size: .8rem; font-weight: 600; color: #707070; text-transform: uppercase; letter-spacing: .02em; background: #f5f7fa; }
.efco-qo-row.is-ok { box-shadow: inset 3px 0 0 #3a8a2e; }
.efco-qo-row.is-warn { box-shadow: inset 3px 0 0 #F8BF00; background: #fffbef; }
.efco-qo-row.is-error { box-shadow: inset 3px 0 0 #dc3545; background: #fdf3f4; }
.efco-qo-code input { font-family: SFMono-Regular, Menlo, Consolas, monospace; }
.efco-qo-item { display: flex; align-items: center; gap: .6rem; }
.efco-qo-item img, .efco-qo-noimg { width: 40px; height: 40px; object-fit: contain; flex: none; }
.efco-qo-noimg { background: #f5f7fa; border-radius: 3px; }
.efco-qo-name { font-weight: 600; color: #525252; display: block; line-height: 1.25; }
.efco-qo-meta { display: block; font-size: .8rem; color: #707070; }
.efco-qo-muted { color: #9b9b9b; }
.efco-qo-ok { color: #3a8a2e; }
.efco-qo-warn { display: block; font-size: .85rem; color: #8a6d00; }
.efco-qo-error { display: block; font-size: .85rem; color: #c82333; font-weight: 600; }
.efco-qo-stepper { display: inline-flex; border: 1px solid #c8c8c8; border-radius: 4px; overflow: hidden; background: #fff; }
.efco-qo-stepper button { width: 34px; border: 0; background: #f5f7fa; color: #525252; font-size: 1.1rem; cursor: pointer; }
.efco-qo-stepper button:hover { background: #ebebeb; }
.efco-qo-stepper input { width: 56px; border: 0; text-align: center; font-weight: 600; padding: .375rem .25rem; }
.efco-qo-stepper input::placeholder { color: #b5b5b5; font-weight: 400; }
.efco-qo-stepper input:focus, .efco-qo-code input:focus { outline: 2px solid #F8BF00; outline-offset: -2px; }
.efco-qo-col-sum { text-align: right; font-weight: 600; white-space: nowrap; }
.efco-qo-remove { border: 0; background: none; font-size: 1.4rem; line-height: 1; color: #9b9b9b; cursor: pointer; }
.efco-qo-remove:hover { color: #dc3545; }
.efco-qo-bar { position: sticky; bottom: 0; z-index: 5; display: flex; align-items: center; justify-content: space-between; gap: 1rem;
    margin-top: .75rem; padding: .75rem; background: #fff; border: 1px solid #ebebeb; border-radius: 4px; box-shadow: 0 -4px 12px rgba(0,0,0,.06); }
.efco-qo-bar.is-filled { border-color: #F8BF00; }
.efco-qo-summary { font-size: .95rem; }
.efco-qo-problems { display: block; font-size: .85rem; color: #8a6d00; }
.efco-qo-submit { font-weight: 600; white-space: nowrap; }
.efco-qo-message { margin-top: .75rem; padding: .5rem .75rem; border-radius: 4px; background: #eef7ec; }
.efco-qo-message.is-error { background: #fdf3f4; color: #a71d2a; }
.efco-qo-foot { font-size: .8rem; color: #707070; margin-top: .5rem; }
@media (max-width: 767.98px) {
    .efco-qo-row-head { display: none; }
    .efco-qo-row { grid-template-columns: 1fr auto; grid-template-areas: "code remove" "product product" "qty sum"; row-gap: .4rem; }
    .efco-qo-row > :nth-child(1) { grid-area: code; }
    .efco-qo-row > :nth-child(2) { grid-area: product; }
    .efco-qo-row > :nth-child(3) { grid-area: qty; }
    .efco-qo-row > :nth-child(4) { grid-area: sum; }
    .efco-qo-row > :nth-child(5) { grid-area: remove; }
    .efco-qo-stepper button { width: 44px; }
    .efco-qo-bar { flex-direction: column; align-items: stretch; }
    .efco-qo-submit { width: 100%; padding: .75rem; }
}
