.quote-filter{
    grid-template-columns:minmax(240px,1fr) 220px auto;
}

.quote-form{
    display:grid;
    gap:18px;
}

.quote-items-editor{
    display:grid;
    gap:12px;
}

.quote-item-card{
    padding:14px;
    border:1px solid var(--border);
    border-radius:10px;
    background:var(--neutral);
}

.quote-item-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:12px;
}

.quote-item-grid{
    display:grid;
    grid-template-columns:2fr 3fr .8fr .8fr 1fr .8fr .8fr 1fr;
    gap:10px;
    align-items:end;
}

.quote-item-total{
    padding:9px 10px;
    border:1px solid var(--border);
    border-radius:8px;
    background:#fff;
}

.quote-item-total span{
    display:block;
    color:var(--text-soft);
    font-size:11px;
    margin-bottom:4px;
}

.quote-item-total strong{
    color:var(--hw-navy);
}

.quote-totals-preview,
.quote-totals{
    width:min(100%,420px);
    margin-left:auto;
    margin-top:18px;
}

.quote-totals-preview > div,
.quote-totals > div{
    display:flex;
    justify-content:space-between;
    gap:18px;
    padding:6px 0;
}

.quote-grand-total,
.quote-total-final{
    border-top:2px solid var(--hw-navy);
    margin-top:6px;
    padding-top:10px !important;
    color:var(--hw-navy);
    font-size:16px;
}

.quote-header-actions{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}

.quote-summary-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    margin-bottom:18px;
}

.quote-summary-grid article{
    padding:14px;
    border:1px solid var(--border);
    border-radius:10px;
    background:#fff;
}

.quote-summary-grid span{
    display:block;
    color:var(--text-soft);
    font-size:12px;
    margin-bottom:5px;
}

.quote-summary-grid strong{
    color:var(--hw-navy);
    font-size:18px;
}

.quote-address-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:30px;
}

.quote-actions-panel{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
}

.quote-workflow-actions{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}

.quote-workflow-actions form{
    margin:0;
}


.quote-item-head-main{
    display:flex;
    align-items:center;
    min-width:0;
}

.quote-item-head-actions{
    display:flex;
    align-items:center;
    gap:10px;
}

.quote-item-mobile-summary,
.quote-item-toggle{
    display:none;
}

@media(max-width:1200px){
    .quote-item-grid{
        grid-template-columns:repeat(4,1fr);
    }

    .quote-item-article,
    .quote-item-description{
        grid-column:span 2;
    }
}

@media(max-width:850px){
    .quote-summary-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .quote-address-grid{
        grid-template-columns:1fr;
    }

    .quote-actions-panel{
        align-items:flex-start;
        flex-direction:column;
    }
}

@media(max-width:650px){
    .quote-filter,
    .quote-summary-grid,
    .quote-item-grid{
        grid-template-columns:1fr;
    }

    .quote-item-article,
    .quote-item-description{
        grid-column:auto;
    }

    .quote-header-actions{
        align-items:flex-start;
        flex-direction:column;
    }

    .quote-item-card{
        padding:0;
        overflow:hidden;
        background:#fff;
    }

    .quote-item-head{
        margin:0;
        min-height:62px;
        padding:10px 12px;
        gap:8px;
        cursor:pointer;
        background:var(--neutral);
    }

    .quote-item-head-main{
        flex:1;
        min-width:0;
        display:grid;
        gap:3px;
    }

    .quote-item-head-main > strong{
        font-size:11px;
        color:var(--text-soft);
        font-weight:700;
    }

    .quote-item-head-actions{
        flex:0 0 auto;
        gap:7px;
    }

    .quote-item-mobile-summary{
        display:grid;
        gap:3px;
        min-width:0;
    }

    .quote-item-mobile-name{
        display:block;
        overflow:hidden;
        text-overflow:ellipsis;
        white-space:nowrap;
        color:var(--hw-navy);
        font-weight:800;
        font-size:15px;
    }

    .quote-item-mobile-values{
        display:flex;
        gap:8px;
        align-items:center;
        flex-wrap:wrap;
        font-size:12px;
        color:var(--text-soft);
    }

    .quote-item-mobile-values strong{
        color:var(--hw-navy);
    }

    .quote-item-toggle{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        width:32px;
        height:32px;
        padding:0;
        border:1px solid var(--border);
        border-radius:8px;
        background:#fff;
        color:var(--hw-navy);
        font-size:22px;
        line-height:1;
        cursor:pointer;
    }

    .quote-item-head .danger-text{
        font-size:12px;
    }

    .quote-item-grid{
        padding:12px;
        border-top:1px solid var(--border);
    }

    .quote-item-card.is-collapsed .quote-item-head{
        background:#fff;
    }

    .quote-item-card.is-collapsed{
        box-shadow:none;
    }

    .position-add-action .btn{
        width:100%;
    }
}

.vat-notice{
    background:var(--hw-neutral);
    color:#475569;
    font-size:12px;
}
