@media (max-width: 900px) {
    .package1-manhole-features {
        margin-bottom: 16px;
    }

    .package1-manhole-legend {
        gap: 12px;
        margin-bottom: 14px;
    }

    .package1-legend-item {
        font-size: 0.88rem;
    }

    .package1-legend-swatch {
        width: 15px;
        height: 15px;
        flex: 0 0 15px;
    }

    .package1-manhole-tools {
        gap: 12px;
        margin-bottom: 14px;
    }

    .package1-manhole-search-input,
    .package1-manhole-filter-btn,
    .package1-manhole-filter-date,
    .package1-manhole-filter-select {
        height: 44px;
    }

    .package1-manhole-filter-box {
        max-width: 460px;
    }

    .package1-manhole-filter-body {
        padding: 16px;
        gap: 14px;
    }

    .package1-manhole-filter-section {
        padding: 14px;
        border-radius: 16px;
    }

    .package1-manhole-filter-section-title {
        font-size: 0.92rem;
        margin: 0 0 12px;
        padding-bottom: 8px;
    }

    .package1-manhole-filter-group {
        gap: 6px;
    }

    .package1-manhole-filter-group + .package1-manhole-filter-group {
        margin-top: 10px;
    }

    .package1-manhole-filter-group label {
        font-size: 0.84rem;
    }

    .package1-manhole-filter-actions {
        padding: 0 16px 16px;
        gap: 10px;
    }
}

@media (max-width: 480px) {
    .package1-manhole-features {
        margin-bottom: 14px;
    }

    .package1-manhole-legend {
        gap: 10px;
        margin-bottom: 12px;
    }

    .package1-legend-item {
        font-size: 0.8rem;
        gap: 6px;
    }

    .package1-legend-swatch {
        width: 14px;
        height: 14px;
        flex: 0 0 14px;
        border-radius: 999px;
    }

    .package1-manhole-tools {
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
        margin-bottom: 12px;
    }

    .package1-manhole-search {
        gap: 6px;
    }

    .package1-manhole-search-label {
        font-size: 0.84rem;
    }

    .package1-manhole-search-input,
    .package1-manhole-filter-btn,
    .package1-manhole-filter-date,
    .package1-manhole-filter-select {
        height: 42px;
    }

    .package1-manhole-search-input,
    .package1-manhole-filter-date,
    .package1-manhole-filter-select {
        font-size: 16px;
    }

    .package1-manhole-filter-btn {
        font-size: 0.95rem;
    }

    .package1-manhole-filter-modal {
        padding: 14px;
        align-items: flex-end;
    }

    .package1-manhole-filter-box {
        width: 100%;
        max-width: 100%;
        border-radius: 20px 20px 18px 18px;
    }

    .package1-manhole-filter-header {
        padding: 14px 16px;
    }

    .package1-manhole-filter-header h3 {
        font-size: 1rem;
    }

    .package1-manhole-filter-close {
        width: 34px;
        height: 34px;
        border-radius: 10px;
        font-size: 1.15rem;
    }

    .package1-manhole-filter-body {
        padding: 14px;
        gap: 12px;
        max-height: 58vh;
        overflow-y: auto;
    }

    .package1-manhole-filter-section {
        padding: 12px;
        border-radius: 14px;
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
    }

    .package1-manhole-filter-section-title {
        font-size: 0.86rem;
        margin: 0 0 10px;
        padding-bottom: 7px;
    }

    .package1-manhole-filter-group {
        gap: 6px;
    }

    .package1-manhole-filter-group + .package1-manhole-filter-group {
        margin-top: 10px;
    }

    .package1-manhole-filter-group label {
        font-size: 0.8rem;
        font-weight: 700;
    }

    .package1-manhole-filter-select,
    .package1-manhole-filter-date {
        border-radius: 12px;
        padding: 0 12px;
    }

    .package1-manhole-filter-actions {
        padding: 0 14px 14px;
        flex-direction: column;
        gap: 8px;
        border-top: 1px solid #f3edff;
    }

    .package1-manhole-filter-reset,
    .package1-manhole-filter-apply {
        width: 100%;
        height: 44px;
        font-size: 0.9rem;
        border-radius: 12px;
    }
}