/* 보조지표 설정창의 조밀한 행 배치와 순수 UI 버튼 정렬. */
.indicator-settings-dialog .moving-average-period-row {
    grid-template-columns: minmax(0, 1fr) 34px 38px;
    gap: 10px;
    min-height: 52px;
    padding: 6px 0;
}

.indicator-settings-dialog .moving-average-period-row label {
    display: grid;
    grid-template-columns: minmax(76px, 1fr) minmax(92px, 170px);
    align-items: center;
    gap: 12px;
    min-height: 40px;
}

.indicator-settings-dialog .moving-average-period-row label > span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.indicator-settings-dialog .moving-average-period-row input {
    justify-self: end;
    appearance: textfield;
    -moz-appearance: textfield;
}

.indicator-settings-dialog .moving-average-period-row input::-webkit-inner-spin-button,
.indicator-settings-dialog .moving-average-period-row input::-webkit-outer-spin-button {
    margin: 0;
    appearance: none;
    -webkit-appearance: none;
}

.indicator-settings-dialog .moving-average-period-stepper {
    display: grid;
    grid-template-rows: repeat(2, 20px);
    align-self: center;
    gap: 2px;
    box-sizing: border-box;
    width: 34px;
    height: 42px;
}

.indicator-settings-dialog .moving-average-period-stepper button {
    position: relative;
    display: grid;
    place-items: center;
    box-sizing: border-box;
    width: 34px;
    min-width: 34px;
    max-width: 34px;
    height: 20px;
    min-height: 20px;
    max-height: 20px;
    padding: 0;
    overflow: hidden;
    font-size: 0;
    line-height: 0;
}

.indicator-settings-dialog .moving-average-period-stepper button::before {
    content: "";
    display: block;
    width: 7px;
    height: 7px;
    border-top: 2px solid currentColor;
    border-left: 2px solid currentColor;
}

.indicator-settings-dialog .moving-average-period-stepper button[data-moving-average-period-step="1"]::before {
    transform: translateY(2px) rotate(45deg);
}

.indicator-settings-dialog .moving-average-period-stepper button[data-moving-average-period-step="-1"]::before {
    transform: translateY(-2px) rotate(225deg);
}

.indicator-settings-dialog .moving-average-period-remove {
    align-self: center;
    box-sizing: border-box;
    width: 38px;
    min-width: 38px;
    max-width: 38px;
    height: 40px;
    min-height: 40px;
    max-height: 40px;
    padding: 0;
}

@media (max-width: 620px) {
    .indicator-settings-dialog .moving-average-period-row {
        grid-template-columns: minmax(0, 1fr) 34px 38px;
    }

    .indicator-settings-dialog .moving-average-period-row label {
        grid-template-columns: minmax(64px, 1fr) minmax(74px, 118px);
        gap: 8px;
    }

    .indicator-settings-dialog footer {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .indicator-settings-dialog footer > span {
        display: none;
    }

    .indicator-settings-dialog footer button {
        width: 100%;
        min-width: 0;
        padding: 0 10px;
    }
}
