﻿html, body {
    --primary-green-primary-light-2: #dfe6e5;
    --brand-primary-dark-grey: #435254;
}


/*Css Small Devices*/
/*Iphone SE, Iphone XR, Iphone 12 Pro, Iphone 14 Pro Max, Pixel 7*/
@media (max-width: 699px) {
    footer {
        text-align: center;
    }
    .xs-mt-0{
        margin-top:0px !important;
    }
    .xs-mt-2 {
        margin-top: 8px !important;
    }

    .xs-mt-8{
        margin-top:32px;
    }

    .xs-mt-3 {
        margin-top: 12px !important;
    }
    .xs-pb-1{
        padding-bottom:4px !important;
    }
    .xs-pb-2{
        padding-bottom:8px !important;
    }
    .xs-mb-4 {
        margin-bottom: 16px !important;
    }
    .xs-pb-4 {
        padding-bottom: 16px !important;
    }
    .xs-mt-1 {
        margin-top: 4px !important;
    }

    .xs-mb-1 {
        margin-bottom: 4px !important;
    }

    .xs-mb-2 {
        margin-bottom: 8px !important;
    }
    .xs-py-0 {
        padding-top:0px !important;
        padding-bottom:0px !important;
    }
    .xs-pl-0 {
        padding-left: 0px !important;
    }

    .xs-my-4 {
        margin-top: 16px !important;
        margin-bottom: 16px !important;
    }

    .xs-my-3 {
        margin-top: 12px !important;
        margin-bottom: 12px !important;
    }
    .xs-pt-0{
        padding-top:0px !important;
    }
    .xs-my-2 {
        margin-top: 8px !important;
        margin-bottom: 8px !important;
    }

    .xs-pl-1 {
        padding-left: 4px !important;
    }

    .xs-t-12 {
        top: 12px !important;
    }

    .xs-mt-4 {
        margin-top: 16px !important;
    }
    .xs-py-4{
        padding-top:16px !important;
        padding-bottom:16px !important;
    }
    

    .display-none {
        display: none !important;
    }
    .reactive-request-status-panel {
        max-height: 135px;
    }
    .mobile-bottom-fix-button {
        right: 23px;
        position: fixed !important;
        bottom: 78px !important;
    }
    .signature-pad {
        min-height: 164px;
        width: 100%;
        border-radius: 6px;
    }

    .ptw-mobile-activity-body-container {
        padding-bottom: 80px;
    }

    .mobile-date-time-row {
        margin-top: 8px;
    }

        .mobile-date-time-row .mud-item {
            padding-left: 0;
            padding-right: 0;
        }
    /* Ensure containers adapt to different screen sizes */
    .mobile-dashboard-item-list-section {
        width: 100%;
        box-sizing: border-box;
    }

    /* Improve text handling across all mobile devices */
    .text-overflow-ellipsis {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 100%;
    }

    .mobile-filter-option-dropdown .mud-select-input > div.mud-input-root-outlined {
        padding: 16px 0px !important;
    }

    .gas-monitoring-reading-form-mobile .apac-monitoring-icon {
        padding-left: 0px !important;
    }

    .mobile-filter-option-dropdown .mud-icon-button {
        padding: 12px 4px;
    }

    .gas-monitoring-reading-form-mobile label.mud-radio:has(span.mud-icon-button) {
        padding-top: 0px;
        background-color: #ffffff !important;
        width: 50% !important;
        padding-bottom: 0px;
        height: 35px;
        padding-left: 35px;
        margin-bottom: 0px !important;
    }


    /* Ensure the popover content and list items also take full width */
    .mud-popover-fixed .mud-list {
        width: 100% !important;
        min-width: 100% !important;
    }

    /* Make individual list items in dropdown take full width */
    .mud-popover-fixed .mud-list-item {
        width: 100% !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    .auto-grid-minmax {
        grid-template-columns: none;
    }

    .work-request-body-container {
        padding-bottom: 32px;
    }

    .mobile-work-request-header .work-request-date {
        font-weight: 400;
    }

    .gas-monitoring-reading-form-mobile .air-monitoring-reading-status {
        padding-top: 0px !important;
        margin-top: 0px !important;
    }

        .gas-monitoring-reading-form-mobile .air-monitoring-reading-status .mud-radio-button .mud-radio-icons .mud-icon-root,
        .gas-monitoring-reading-form-mobile .air-monitoring-reading-status .mud-radio-button .mud-radio-icons .mud-svg-icon {
            width: 20px !important;
            height: 20px !important;
            min-width: 20px !important;
            min-height: 20px !important;
            vertical-align: middle;
        }

    .mobile-work-request-header .work-request-header-back-icon {
        margin-left: -4px;
        padding-top: 0px;
    }

        .mobile-work-request-header .work-request-header-back-icon .mud-icon-root {
            width: 24px;
            height: 22px;
        }

    .mobile-work-request-header .work-request-title, .mobile-dashboard-header .dashboard-header-text {
        font-size: 18px;
        font-weight: 500;
        padding-top: 2px;
    }

    .multi-sign-in-parent-section .multi-sign-in-child-section .signin-checkbox .mud-button-root {
        padding-left: 4px !important;
        padding-right: 8px !important;
    }

    .cbre-authorization-preview .signin-checkbox .mud-button-root, .cbre-authorisation-sign-in .signin-checkbox .mud-button-root {
        padding-right: 8px !important;
    }

    .cbre-authorization-preview .sign-in-signature-pad, .cbre-authorisation-sign-in .sign-in-signature-pad {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

        .cbre-authorization-preview .sign-in-signature-pad .signature-image-mobile, .cbre-authorisation-sign-in .sign-in-signature-pad .signature-pad {
            height: 164px;
        }

    .sign-in-signature-pad .signature-pad {
        height: 164px !important;
    }

    .sign-in-signature-pad .signature-image-mobile {
        height: 164px !important;
    }


    .multi-sign-in-parent-section .multi-sign-in-child-section .signin-checkbox .mud-disabled .mud-button-root {
        padding-left: 4px !important;
        padding-right: 8px !important;
    }

    .mobile-work-request-header .work-request-header-identifier {
        color: var(--light-grey)
    }

    .black-dot {
        display: inline-block;
        width: 5px;
        height: 5px;
        background-color: #222;
        border-radius: 50%;
        margin-right: 6px;
        vertical-align: middle;
    }

    .mud-radio-group .mud-radio .mud-button-root {
        display: block !important;
        background-color: transparent !important;
        padding-left: 0px !important;
    }

    .work-request-remote-body-container,
    .work-request-reactive-body-container,
    .reissue-work-request-body-container {
        padding-bottom: 64px;
    }

    .ptw-mobile-body-container {
        padding-bottom: 4px;
    }

    .personal-grid-heading {
        display: none !important;
    }

    .filter-block-row {
        display: flex;
        flex-direction: row;
        gap: 4px;
        overflow-x: auto;
        padding: 8px 0;
        scrollbar-width: none;
        -ms-overflow-style: none;
    }

        .filter-block-row::-webkit-scrollbar {
            display: none;
        }

    .filter-status-dot {
        width: 12px;
        height: 12px;
        border-radius: 50%;
        display: inline-block;
        margin-right: 8px;
        vertical-align: middle;
    }

        .filter-status-dot.green {
            background: #1E8D29;
        }

        .filter-status-dot.orange {
            background: #F2810F;
        }

        .filter-status-dot.red {
            background: #FF543E;
        }
    /* Add more colors as needed */
    .filter-block-row > * {
        background: #fff;
        border-radius: 4px;
        /*box-shadow: 0px 0px 4px 0px #00000020;*/
        /*border: 1px solid #eee;*/
        padding: 10px 16px;
        /*min-width: 80px;*/
        width: auto !important;
        white-space: nowrap;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-size: 16px;
        font-weight: 500;
        color: #222;
        text-align: center;
        text-overflow: ellipsis;
        /*overflow: hidden;*/
        box-sizing: border-box;
        cursor: pointer;
        transition: box-shadow 0.2s;
    }

    /*.filter-block-row > *:hover, .filter-block-row > *.selected {
                box-shadow: 0px 2px 8px 0px #00000030;
                border-color: #b2dfdb;
            }*/

    .personnel-detail-mobile {
        display: block;
    }

        .personnel-detail-mobile .personnel-detail-header {
            font-size: var(--mud-typography-body1-size) !important;
        }

    .personal-section-preview table {
        background-color: #f5f7f7;
    }

    .personal-section-preview tbody td {
        padding: 6px 14px !important;
    }

    .sm-fix-button-footer {
        position: fixed;
        left: 0;
        bottom: 0;
        width: 100%;
        text-align: center;
        width: 103%;
        left: 0;
        height: 68px;
        box-shadow: 0px 4px 14px rgba(0, 0, 0, 0.60);
        bottom: 0;
        width: 100%;
        width: -webkit-fill-available;
        background-color: var(--white-color);
        color: var(--white-color);
        text-align: center;
        padding-top: 16px !important;
        z-index: 2;
    }

    .sm-margin-35px {
        margin-bottom: 35px;
    }

    .file-upload {
        width: 100%;
        white-space: normal;
    }

    .file-name-in-edit {
        max-width: 180px;
    }

    .content {
        height: 100% !important;
        padding: 2px 9px 10px 10px !important;
        max-width: 335px;
    }

    .mobile-chunked-file-upload-card-content {
        height: 100% !important;
        padding: 4px 16px 10px 16px !important;
        max-width: 100%;
    }

    .mobile-visitor-card-content {
        height: 100% !important;
        padding: 10px 9px 0px 10px !important;
        max-width: 100%;
    }

    .work-order-reference-card, .visitor-component-card, .mobile-file-upload-card {
        box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08);
        border: 1px solid;
        border-color: rgba(0, 0, 0, 0.12);
        border-radius: 6px;
    }

    .mud-form .mud-grid .mobile-apac-person-name-adjustment {
        padding: 0px;
        padding-right: 10px;
        margin-top: 12px;
        margin-bottom: 12px !important;
    }

    .workOrderReferenceContent {
        height: 100% !important;
        padding: 24px 9px 0px 10px !important;
 
    }

    .file-upload-table .mud-table-row {
        margin-bottom: 2px !important;
    }

    .custom-tab-panel-mobile {
        max-height: 48px;
        max-width: 61px;
    }

    .custom-tab-panel-mobile-reactive {
        max-height: 48px;
        max-width: 65px;
    }

    .custom-tab-panel-mobile-remote {
        max-height: 48px;
        max-width: 80px;
    }

    .signature-image-mobile {
        max-width: 100%;
        height: auto;
        display: block;
        margin: 0 auto;
    }

    .mud-dialog-content .chunked-file-upload-component {
        padding: 10px !important;
    }

    .chunked-file-upload-component {
        padding: 0px 0px !important;
    }


    .mobile-personnel-sign-in-signature .signature-image-mobile {
        height: 165px;
    }

    /*    .mud-checkbox .mud-icon-button {
        padding-right: 0px !important;
    }*/

    .mud-dialog-width {
        width: 100% !important;
        max-width: 100% !important;
    }

    /*    .txt-monitoring {
        width: 50% !important;
        max-width: 50% !important;
    }*/
    /* Mobile responsive styles specific to Add Permits & Certificates dialog only */
    .add-pac-wizard-dialog.mud-dialog-width-xl {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        margin-left: 8px !important;
        margin-right: 8px !important;
    }

        /* Ensure the dialog container itself is properly constrained */
        .add-pac-wizard-dialog.mud-dialog-width-xl .mud-dialog-container {
            width: 100% !important;
            max-width: 100% !important;
        }

        /* Reduce padding in Add Permits & Certificates dialog on mobile */
        .add-pac-wizard-dialog.mud-dialog-width-xl .pa-2 {
            padding: 8px !important;
        }

        .add-pac-wizard-dialog.mud-dialog-width-xl .pl-4 {
            padding-left: 12px !important;
        }

        /* Ensure dialog content doesn't overflow */
        .add-pac-wizard-dialog.mud-dialog-width-xl .mud-dialog-content {
            overflow-x: hidden !important;
            padding: 16px 8px !important;
        }

        /* Ensure all grid items within the dialog are responsive */
        .add-pac-wizard-dialog.mud-dialog-width-xl .mud-grid-item {
            max-width: 100% !important;
        }

        /* Ensure form elements don't cause horizontal overflow */
        .add-pac-wizard-dialog.mud-dialog-width-xl .mud-input-root,
        .add-pac-wizard-dialog.mud-dialog-width-xl .mud-select,
        .add-pac-wizard-dialog.mud-dialog-width-xl .mud-form-input-control {
            max-width: 100% !important;
            box-sizing: border-box !important;
            height: 100% !important;
        }

            /* Ensure input fields and select dropdowns have proper height */
            .add-pac-wizard-dialog.mud-dialog-width-xl .mud-input,
            .add-pac-wizard-dialog.mud-dialog-width-xl .mud-select-input,
            .add-pac-wizard-dialog.mud-dialog-width-xl .mud-input-control,
            .add-pac-wizard-dialog.mud-dialog-width-xl .mud-input-root .mud-input-root-text,
            .add-pac-wizard-dialog.mud-dialog-width-xl .mud-select .mud-select-input {
                height: 100% !important;
                min-height: 40px !important;
            }

        /* Ensure the form field containers have proper height */
        .add-pac-wizard-dialog.mud-dialog-width-xl .mud-form-field,
        .add-pac-wizard-dialog.mud-dialog-width-xl .mud-form-field-container,
        .add-pac-wizard-dialog.mud-dialog-width-xl .mud-input-control-input-container {
            height: 100% !important;
        }

    .text-ellipsis {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 135px;
        display: inline-block;
        vertical-align: middle;
        cursor: pointer;
        position: relative;
    }
    .text-ellipsis-supporting-doc {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 116px;
        display: inline-block;
        vertical-align: middle;
        cursor: pointer;
        position: relative;
    }
    .sm-text-ellipsis-work-order-ref {
        text-overflow: ellipsis;
        white-space: nowrap;
        overflow: hidden;
        max-width: 150px;
        display: inline-block;
        vertical-align: middle;
        cursor: pointer;
        position: relative;
    }

    .text-ellipsis-with-no-wrap {
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 106px;
        white-space: nowrap;
        display: block;
        word-break: normal;
    }

    .duration-component .start-date,
    .duration-component .start-time,
    .duration-component .end-date,
    .duration-component .end-time {
        padding-left: 0px;
    }

    .mud-dialog-content .duration-component .start-date,
    .mud-dialog-content .duration-component .start-time,
    .mud-dialog-content .duration-component .end-date,
    .mud-dialog-content .duration-component .end-time {
        padding-left: 12px !important;
    }

    .signature-pad-border-radius canvas {
        border-radius: 1px;
        height: 223px;
    }

    .mud-tabs-toolbar {
        width: 100%;
    }

    .mud-tabs-toolbar-content .mud-tabs-toolbar-wrapper {
        justify-content: space-between !important;
        padding-left: 12px;
    }

    .mud-tab-slider.mud-tab-slider-horizontal {
        height: 0 !important;
    }

    .mud-tab.mud-tab-active {
        background-color: var(--mud-palette-primary-hover);
        color: var(--mud-palette-primary);
        border-radius: 0px;
        border-style: solid;
        border-width: 0 0 2px 0;
    }

    .emergency-card {
        border: none !important;
        box-shadow: none !important;
    }

    .emergency-card-content {
        height: 100% !important;
        padding: 6px 14px !important;
        max-width: 335px;
    }

    .file-upload-card {
        background-color: #f5f7f7 !important;
    }

    .work-request-reactive-body-container:has(.sm-fix-button-footer),
    .work-request-remote-body-container:has(.sm-fix-button-footer),
    .work-request-body-container:has(.sm-fix-button-footer) {
        padding-bottom: 70px !important;
    }

    /*View Passes and permits*/
    .passes-permits-container {
        width: 534px !important;
        height: 604px !important;
    }
    .mud-dialog-width-view-passes {
        width: 498px !important;
    }

    .mud-table-root {
        /*background-color: #F5F7F7;*/
        background-color: #FFFFFF;
    }

    .mud-table-view-passes-date {
        padding-top: 16px !important;
    }

    .mud-table-view-passes-icon {
        border-bottom: 16px solid var(--mud-palette-tertiary-text) !important;
        padding-bottom: 16px !important;
    }

    .scrollable-container-vertical {
        height: 532px;
        overflow-y: auto;
        scrollbar-width: thin !important;
        padding-right: 12px;
        box-sizing: content-box;
    }
    
    .mud-dialog-content {
        padding-right: 8px !important;
    }

        .mud-dialog-content .mud-input-control-input-container {
            width: 100%;
        }

        .mud-dialog-content .mud-form .mud-grid .dialog-textbox-with-icon {
            flex-grow: 0;
            max-width: 83.333333%;
            flex-basis: 83.333333%;
        }

        .mud-dialog-content .mud-dialog-actions {
            margin-right: 0px;
        }


    .passes-permits-container .mud-dialog-content {
        padding: 8px 24px !important;
    }

    .icon-button-padding {
        padding: 0px !important;
    }

    .workrequest-actions .mud-icon-root.mud-svg-icon {
        fill: #003F2D;
    }

    .view-passes-dialog {
        padding-top: 12px;
        padding-left: 0px;
    }

    .view-passes-container {
        height: 650px;
        overflow: auto;
        scrollbar-width: thin !important;
        padding: 8px;
    }

    .view-passes-horizontal-container {
        width: 1000px
    }

    .view-atw-container {
        width: 96% !important;
        margin-right: 0px !important;
        margin-left: 8px !important;
    }

    .view-passes-action-button {
        width: 100%;
    }

    .email-pass {
        color: var(--Text-Dark-Text-Dark);
        line-height: 16px !important;
        font-family: 'Calibre-R' !important;
        font-size: 16px !important;
    }

    .send-email-overflow {
        overflow: hidden;
    }

    .view-passes-action-button-action-PTW {
        padding: 8px !important;
        padding-right: 4px !important;
        margin-top: 12px !important;
        margin-bottom: 4px !important;
    }

    .view-passes-action-button-print-PTW {
        margin-left: 0px !important;
        margin-right: 8px !important;
    }

    .view-passes-action-button-action-ATW {
        padding-bottom: 8px !important;
        padding-top: 8px !important;
        padding-right: 4px !important;
        padding-left: 0px !important;
        margin-top: 12px !important;
        margin-bottom: 4px !important;
    }

    .view-passes-action-button-email-margin-ATW {
        margin-right: 4px !important;
        margin-left: 0px !important;
    }

    .view-passes-action-button-checkout-margin-ATW {
        margin-right: 4px !important;
        margin-left: 4px !important;
    }

    .view-passes-action-button-print-margin-ATW {
        margin-right: 0px !important;
        margin-left: 4px !important;
    }

    .view-passes-padding-action-button {
        padding-left: 6px !important;
        padding-right: 6px !important;
    }

    .pass {
        box-shadow: none !important;
    }

    .custom-padding-menu .mud-icon-button {
        padding: 0px !important;
    }

    .mobile-person-in-charge-section .label-disabled {
        color: #1A1A1A75 !important;
    }


    @media (max-width: 380px) {
        .view-passes-container {
            height: 480px;
        }

        .scrollable-container-vertical {
            height: 450px;
        }
    }

    @media (max-width: 365px) {

        .view-passes-padding-action-button {
            padding-left: 2px !important;
            padding-right: 2px !important;
        }
    }

    .mobile-tile-list {
        display: flex;
        flex-direction: column;
        gap: 16px;
    }

    .mobile-tile-card {
        background: #fff;
        border-radius: 8px;
        box-shadow: 0px 0px 4px 0px #00000040;
        padding: 16px;
        padding-bottom: 0px;
        border: 1px solid #eee;
        display: flex;
        flex-direction: column;
        min-height: 120px;
        position: relative;
    }

    .mobile-tile-row {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 16px;
        gap: 14px;
    }

    .mobile-tile-label {
        color: #222;
        font-weight: 500;
        font-size: 1rem;
        width: 128px;
    }

    .mobile-tile-value {
        color: #222;
        font-size: 1rem;
        text-align: right;
        word-break: break-word;
        width: 188px;
        text-align: right;
    }

    .mobile-tile-actions {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        margin-top: 8px;
    }

    .pivot-table-wrapper {
        overflow-x: auto;
        width: 100%;
        min-width: 300px;
    }

    .pivot-table {
        border-radius: 8px;
        box-shadow: 0px 0px 4px 0px #00000040;
        background: #fff;
        min-width: 300px;
        border-collapse: separate;
        border-spacing: 0;
        width: max-content;
    }

        .pivot-table th,
        .pivot-table td {
            padding: 8px 16px;
            text-align: left;
            border-bottom: 1px solid #eee;
            min-width: 66px;
            vertical-align: middle;
            font-size: 1rem;
            align-items: center;
            gap: 6px;
        }

    td :is(.float-right), td .float-right {
        float: none;
    }

    .pivot-table th {
        background: #f5f7f6;
        font-weight: 600;
        text-align: center;
        color: #222;
    }

        .pivot-table th.fixed-col,
        .pivot-table td.fixed-col {
            position: sticky;
            left: 0;
            background: #fff;
            z-index: 2;
            min-width: 66px;
            font-weight: 600;
            border-right: 1px solid #eee;
            box-shadow: 2px 0 2px -2px #eee;
        }

    .pivot-table tr:last-child td {
        border-bottom: none;
    }

    .pivot-table td {
        color: #222;
    }

    .pivot-table-actions {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        gap: 8px;
    }

    .pivot-table td:nth-child(even) {
        background-color: #F5F7F7;
    }

    .icon-success {
        color: #1a7f5a;
        font-size: 1.2em;
        vertical-align: middle;
        margin-left: 4px;
    }

    .icon-comment {
        color: #616161;
        font-size: 1.2em;
        vertical-align: middle;
        margin-left: 4px;
    }

    .icon-delete {
        color: #d32f2f;
        font-size: 1.4em;
        vertical-align: middle;
        margin-left: 4px;
        cursor: pointer;
    }

    .ptw-hazard-header-text {
        width: fit-content !important;
    }

    .ptw-hazard-header-count {
        padding-left: 8px;
        position: relative;
        left: 0px;
        width: fit-content !important;
    }

    .checkout-dialog-mobile {
        overflow-x: hidden;
    }

        .checkout-dialog-mobile button.mud-button-close {
            top: 28px !important;
        }

    @media (max-width: 600px) {
        .pivot-table th,
        .pivot-table td {
            font-size: 0.95rem;
            padding: 8px 16px;
            min-width: 66px;
        }

            .pivot-table th.fixed-col,
            .pivot-table td.fixed-col {
                min-width: 66px;
                width: 66px;
            }
    }
}



/* Device-specific fixes for iPhone models */
/* iPhone 12, iPhone 12 Pro (390px wide) */
@media (max-width: 390px) {
    .file-name-in-edit {
        max-width: 128px !important;
    }
    .mobile-dashboard-item .dashboard-card-title {
        gap: 60px; /* Reduce gap for smaller screens */
    }

    .mobile-dashboard-item .vendor-section {
        width: 100%; /* Use full width instead of fixed 312px */
        max-width: 280px;
    }

    .mobile-dashboard-item .request-id-section {
        width: 100%; /* Use full width instead of fixed 312px */
    }

    .mobile-dashboard-item .round-chip {
        max-width: 47%; /* Slightly reduce to prevent wrapping */
    }

    .mobile-dashboard-item .request-type-text {
        max-width: 60%; /* Reduce to prevent text overflow */
    }

    .mobile-dashboard-item {
        margin: 10px; /* Reduce margin for smaller screens */
    }

    .bottom-nav-container {
        display: flex !important;
        justify-content: space-between !important;
        width: 100% !important;
        height: 62px;
        margin-top: 0px !important;
        flex-wrap: nowrap !important;
    }

    .checkout-dialog-mobile {
        overflow-x: hidden;
    }

        .checkout-dialog-mobile button.mud-button-close {
            top: 28px !important;
        }
}

/* iPhone 14 Pro Max and similar larger phones (430px+ wide) */
@media (min-width: 430px) and (max-width: 699px) {
    .mobile-dashboard-item .dashboard-card-title {
        gap: 100px; /* Increase gap for larger screens */
    }

    .mobile-dashboard-item .vendor-section {
        width: 100%;
        max-width: 350px;
    }

    .mobile-dashboard-item .request-id-section {
        width: 100%;
    }

    .mobile-dashboard-item .round-chip {
        max-width: 49%; /* Use more space on larger screens */
    }

    .mobile-dashboard-item .request-type-text {
        max-width: 70%; /* Allow more text space */
    }
}

/* iPhone 12 Mini and smaller devices (375px and below) */
@media (max-width: 375px) {
    .mobile-dashboard-item .dashboard-card-title {
        gap: 40px; /* Further reduce gap */
    }

    .mobile-dashboard-item .round-chip {
        max-width: 46%;
        font-size: 11px; /* Slightly smaller text */
    }

    .mobile-dashboard-item .customer-contract-text {
        font-size: 11px;
    }

    .mobile-dashboard-item .request-type-text {
        max-width: 55%;
        font-size: 13px;
    }

    .mobile-dashboard-item .ptw-request-type-text {
        font-size: 13px;
    }

    .mobile-dashboard-item {
        margin: 8px;
        padding: 10px 12px;
    }

        /* Ensure text doesn't overflow on very small screens */
        .mobile-dashboard-item .vendor-title,
        .mobile-dashboard-item .location,
        .mobile-dashboard-item .request-id-text {
            word-wrap: break-word;
            overflow-wrap: break-word;
            hyphens: auto;
        }
}


.mobile-ptw-header {
    background: #fff;
    padding: 8px;
}

.header-actions {
    margin-bottom: 2px;
}

.identifier-line {
    font-weight: 400;
    font-size: 16px;
}

.permit-title {
    font-weight: 500;
    line-height: 1.15;
    margin: 0 0 2px 0;
    font-size: 20px;
    line-height: 24px;
    padding-left: 12px;
}

.status-line {
    padding-left: 12px;
    font-size: 14px;
}

.back-btn {
    padding-top: 0;
}

.journey-stage-container {
    box-shadow: 0 1px 2px rgba(0,0,0,.05);
}

.mobile-ptw-stages-wrapper {
    position: relative;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding: .35rem .25rem .55rem .25rem;
}

.menu-popover-spacing {
    margin-top: 4px;
}

.mobile-ptw-stage {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 64px;
}

    .mobile-ptw-stage:last-child {
        margin-right: 0;
    }

.stage-connector {
    flex: 1;
    height: 2px;
    min-width: 40px;
    background: var(--flat-disable,#c4c4c4);
    position: relative;
    top: -12px;
}

.mobile-stage-avatar {
    z-index: 2;
    cursor: pointer;
}

.mobile-stage-label {
    margin-top: 4px;
    white-space: nowrap;
    max-width: 72px;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: center;
}

.hide-mobile-section {
    display: none !important;
}
