:root {
    --rm-green: #51a121;
    --rm-green-dark: #3d7114;
    --rm-tint: #f3f5f1;
    --rm-text: #1f2937;
    --rm-text-muted: #6b7280;
    --rm-border: #e6e8e3;
    --rm-page-bg: #f6f8f5;
    --rm-radius: 14px;
    --rm-radius-sm: 12px;
    --rm-shadow: 0 1px 3px rgba(15, 23, 42, 0.06);
    --rm-shadow-hover: 0 10px 24px rgba(15, 23, 42, 0.10);
    --rm-transition: 0.2s ease;
}

.PWEB_RM_section {
    background-color: var(--rm-page-bg);
    padding: 1.5rem 0 3rem;
}

.PWEB_RM_container {
    width: min(1100px, calc(100vw - 3rem));
    margin: 0 auto;
}

.PWEB_RM_breadcrumb {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.85rem;
    color: var(--rm-text-muted);
    margin-bottom: 1rem;
}

    .PWEB_RM_breadcrumb a {
        color: var(--rm-text-muted);
        text-decoration: none;
    }

        .PWEB_RM_breadcrumb a:hover {
            color: var(--rm-green-dark);
        }

    .PWEB_RM_breadcrumb span.is-current {
        font-weight: 600;
        color: var(--rm-text);
    }

.PWEB_RM_title {
    font-size: 1.9rem;
    font-weight: 700;
    color: var(--rm-text);
    margin: 0 0 1.5rem;
}

.PWEB_RM_grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    align-items: start;
    gap: 1.5rem;
}

.PWEB_RM_card {
    background-color: #ffffff;
    border: 1px solid var(--rm-border);
    border-radius: var(--rm-radius);
    box-shadow: var(--rm-shadow);
    padding: 1.5rem;
    transition: border-color var(--rm-transition), box-shadow var(--rm-transition);
}

    .PWEB_RM_card:hover {
        border-color: rgba(81, 161, 33, 0.35);
        box-shadow: var(--rm-shadow-hover);
    }

    .PWEB_RM_card:hover .PWEB_RM_cardIcon {
        background: var(--rm-green);
        border-color: var(--rm-green);
        color: #ffffff;
    }

.PWEB_RM_cardHeader {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1.1rem;
}

.PWEB_RM_cardIcon {
    width: 2.4rem;
    height: 2.4rem;
    flex-shrink: 0;
    border-radius: 9px;
    background: var(--rm-tint);
    border: 1px solid var(--rm-border);
    color: var(--rm-green);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    transition: background-color var(--rm-transition), border-color var(--rm-transition), color var(--rm-transition);
}

.PWEB_RM_cardTitle {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
    color: var(--rm-text);
}

.PWEB_RM_cardSubtitle {
    margin: 0.1rem 0 0;
    font-size: 0.8rem;
    color: var(--rm-text-muted);
}

.PWEB_RM_card p.PWEB_RM_desc {
    margin: 0 0 1.25rem;
    font-size: 0.88rem;
    color: var(--rm-text-muted);
    line-height: 1.65;
}

.PWEB_RM_downloadBtn {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.72rem 1.35rem;
    border-radius: 999px;
    background: var(--rm-green);
    color: #ffffff;
    font-size: 0.85rem;
    font-weight: 700;
    text-decoration: none;
    transition: background-color var(--rm-transition), transform var(--rm-transition), box-shadow var(--rm-transition);
}

    .PWEB_RM_downloadBtn i {
        font-size: 1rem;
    }

    .PWEB_RM_downloadBtn:hover {
        background: var(--rm-green-dark);
        transform: translateY(-1px);
        box-shadow: 0 8px 18px -6px rgba(61, 113, 20, 0.5);
        color: #ffffff;
    }

.PWEB_RM_lineGrid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
}

.PWEB_RM_lineChip {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.75rem 0.9rem;
    border: 1px solid var(--rm-border);
    border-radius: var(--rm-radius-sm);
    background-color: var(--rm-page-bg);
    color: var(--rm-text);
    font-size: 0.82rem;
    font-weight: 600;
    text-decoration: none;
    text-align: center;
    transition: border-color var(--rm-transition), background-color var(--rm-transition), color var(--rm-transition);
}

    .PWEB_RM_lineChip i {
        color: var(--rm-green);
        font-size: 0.72rem;
        flex-shrink: 0;
        opacity: 0.75;
    }

    .PWEB_RM_lineChip:hover i {
        opacity: 1;
    }

    .PWEB_RM_lineChip:hover {
        background-color: #ffffff;
        border-color: rgba(81, 161, 33, 0.5);
        color: var(--rm-green-dark);
        box-shadow: var(--rm-shadow);
    }

@media (max-width: 480px) {
    .PWEB_RM_lineGrid {
        grid-template-columns: 1fr;
    }
}
