.priceGridModal {
    position: fixed;
    inset: 0;
    z-index: 100000000000;
    display: flex;
    align-items: center;
    justify-content: center;

    .priceGridBackdrop {
        position: absolute;
        inset: 0;
        background: #232F3E;
        opacity: 0.5;
    }

    .priceGridDialog {
        position: relative;
        background: #222;
        color: white;
        max-width: 1200px;
        width: 95vw;
        max-height: 90vh;
        border-radius: 0.25rem;
        overflow: hidden;
        box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.6);

        .priceGridClose {
            position: absolute;
            right: 1rem;
            background: transparent;
            border: 0;
            color: white;
            font-size: 2.5rem;
            z-index: 1000000;
            cursor: pointer;
        }

        .priceGridHeader {
            padding: 0.5rem;

            h2 {
                font-size: 1.25rem;
            }

            .priceGridSubtitle {
                margin-top: 0.5rem;
            }
        }

        .priceGridContent {
            padding: 0.5rem;
            overflow: auto;
            max-height: 65vh;

            .priceGridGrid {
                border: white solid 1px;
                border-radius: 0.25rem;
                padding: 0.5rem;

                .priceGridGridTitle {
                    margin-bottom: 0.5rem;
                    font-size: 1.25rem;
                }

                .priceGridTableWrapper {
                    overflow: auto;

                    .priceGridTable {
                        border-collapse: separate;
                        border-spacing: 0;
                        width: max-content;
                        min-width: 100%;

                        th, td {
                            padding: 0.5rem;
                            border: 1px solid #444;
                            text-align: center;
                            white-space: nowrap;
                        }

                        thead { 
                            tr {
                                .priceGridStickyCol {
                                    border-top-left-radius: 0.25rem;
                                    width: fit-content;
                                }

                                th {
                                    position: sticky;
                                    top: 0;
                                    background: #333;
                                    z-index: 2;

                                    &:last-child {
                                        border-top-right-radius: 0.25rem;
                                    }
                                }

                            }
                        }

                        .priceGridStickyCol {
                            background: #333;
                            text-align: left;
                        }

                        .priceGridRow-48h th { 
                            background: #359c4f; 
                        }

                        .priceGridRow-date th { 
                            background: #204b68; 
                        }
                    }
                }
            }
        }

        .priceGridFooter {
            padding: 1rem 1.5rem;
            display: flex;
            justify-content: flex-end;

            .priceGridAction {
                background: mediumseagreen;
                border: 0;
                color: white;
                padding: 0.5rem 0.25rem;
                border-radius: 0.25rem;
                cursor: pointer;
                text-transform: uppercase;
                box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.4);
            }
        }
    }
}