.leaflet-control-attribution > a:first-child {
            display: none !important;
        }
        .leaflet-routing-container {
            display: none !important;
        }

        .order-widget {
            max-width: 480px;
            width: 100%;
            background: #fff;
            border-radius: 20px;
            box-shadow: 0 4px 20px rgba(0,0,0,0.08);
            overflow: hidden;
        }

        .widget-header {
            background: #1a3e50;
            color: white;
            padding: 1px 16px;
            text-align: center;
        }
        .widget-header h2 {
            font-size: 18px;
            font-weight: 600;
			color:white;
        }
        .widget-header p {
            font-size: 11px;
            opacity: 0.8;
            margin-top: 2px;
        }

        .widget-body {
            padding: 16px;
        }

        .address-row {
            margin-bottom: 8px;
            position: relative;
        }
        .address-row.waypoint {
            padding-left: 26px;
            position: relative;
        }
        .address-row.waypoint::before {
            content: '📍';
            position: absolute;
            left: 0;
            top: 32px;
            font-size: 14px;
        }
        .address-label {
            font-weight: 600;
            font-size: 12px;
            color: #2c3e4e;
            margin-bottom: 4px;
            display: flex;
            align-items: center;
            gap: 4px;
        }
        .address-label .waypoint-number {
            display: inline-block;
            background: #2c7da0;
            color: white;
            border-radius: 50%;
            width: 18px;
            height: 18px;
            text-align: center;
            line-height: 18px;
            font-size: 10px;
            font-weight: 700;
        }
        .address-input-wrapper {
            display: flex;
            gap: 6px;
            position: relative;
        }
        .address-input-wrapper input {
            flex: 1;
            padding: 8px 12px;
            border: 1.5px solid #e2e8f0;
            border-radius: 10px;
            font-size: 13px;
            background: #fefefe;
            min-width: 0;
            height: 38px;
        }
        .address-input-wrapper input:focus {
            border-color: #2c7da0;
            outline: none;
        }
        .address-input-wrapper input.waypoint-input {
            border-color: #f0c27a;
        }
        .address-input-wrapper input.waypoint-input:focus {
            border-color: #e6b34a;
        }
        .map-btn {
            background: #f0f4f9;
            border: none;
            padding: 0 12px;
            border-radius: 10px;
            font-size: 12px;
            font-weight: 500;
            cursor: pointer;
            display: flex;
            align-items: center;
            gap: 4px;
            color: #2c7da0;
            white-space: nowrap;
            flex-shrink: 0;
            height: 38px;
        }
        .map-btn:hover {
            background: #e6edf5;
        }
        .remove-waypoint-btn {
            background: #fee2e2;
            border: none;
            border-radius: 50%;
            width: 28px;
            height: 28px;
            cursor: pointer;
            color: #dc2626;
            font-size: 14px;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: all 0.2s ease;
            flex-shrink: 0;
            margin-top: 5px;
        }
        .remove-waypoint-btn:hover {
            background: #fecaca;
            transform: scale(1.1);
        }

        .add-waypoint-btn {
            display: flex;
            align-items: center;
            gap: 6px;
            background: transparent;
            border: 2px dashed #cbd5e1;
            border-radius: 10px;
            padding: 8px 14px;
            width: 100%;
            cursor: pointer;
            color: #64748b;
            font-weight: 500;
            font-size: 13px;
            transition: all 0.2s ease;
            margin-bottom: 8px;
        }
        .add-waypoint-btn:hover {
            border-color: #2c7da0;
            color: #2c7da0;
            background: #f0f7fa;
        }
        .add-waypoint-btn svg {
            width: 16px;
            height: 16px;
        }

        .distance-info {
            background: #f0f7fa;
            border-radius: 10px;
            padding: 10px 14px;
            margin: 8px 0 12px;
            display: none;
            align-items: center;
            justify-content: space-between;
            flex-wrap: wrap;
            gap: 6px;
        }
        .distance-info.show {
            display: flex;
        }
        .distance-info .label {
            font-size: 12px;
            color: #4a6a7a;
            display: flex;
            align-items: center;
            gap: 4px;
        }
        .distance-info .value {
            font-size: 17px;
            font-weight: 700;
            color: #1a3e50;
        }
        .distance-info .value span {
            font-size: 12px;
            font-weight: 400;
            color: #6a8a9a;
        }
        .distance-info .right-block {
            display: flex;
            align-items: center;
            gap: 8px;
            flex-wrap: wrap;
        }
        .show-route-btn {
            background: #2c7da0;
            color: white;
            border: none;
            border-radius: 30px;
            padding: 4px 12px;
            font-size: 11px;
            font-weight: 600;
            cursor: pointer;
            transition: all 0.2s ease;
            white-space: nowrap;
            display: flex;
            align-items: center;
            gap: 4px;
            height: 30px;
        }
        .show-route-btn:hover {
            background: #1a5d7a;
            transform: scale(1.02);
        }
        .show-route-btn svg {
            width: 14px;
            height: 14px;
            fill: none;
            stroke: currentColor;
            stroke-width: 2;
        }

        .truck-section {
            background: #f8fafc;
            border-radius: 14px;
            padding: 12px;
            margin: 12px 0;
        }
        .truck-preview {
            text-align: center;
            margin-bottom: 8px;
        }
        .truck-preview img {
            max-width: 100%;
            height: 60px;
            object-fit: contain;
        }
        .size-buttons {
            display: flex;
            gap: 6px;
            margin: 8px 0 4px;
            flex-wrap: wrap;
        }
        .size-btn {
            flex: 1;
            background: white;
            border: 1.5px solid #e2e8f0;
            border-radius: 30px;
            padding: 5px 0;
            font-weight: 700;
            font-size: 13px;
            cursor: pointer;
            text-align: center;
            min-width: 32px;
        }
        .size-btn.active {
            background: #2c7da0;
            border-color: #2c7da0;
            color: white;
        }
        .size-desc {
            font-size: 10px;
            color: #5a6e7c;
            text-align: center;
            margin-top: 4px;
        }

        .helpers-row {
            display: flex;
            justify-content: space-between;
            align-items: center;
            background: #f8fafc;
            border-radius: 12px;
            padding: 8px 12px;
            margin: 10px 0;
            flex-wrap: wrap;
            gap: 6px;
        }
        .helpers-title {
            font-weight: 600;
            font-size: 13px;
        }
        .helpers-switch {
            display: flex;
            gap: 4px;
            background: #eef2f5;
            border-radius: 30px;
            padding: 2px;
        }
        .switch-opt {
            padding: 4px 12px;
            border-radius: 20px;
            font-size: 11px;
            font-weight: 500;
            cursor: pointer;
            background: transparent;
            white-space: nowrap;
        }
        .switch-opt.active {
            background: white;
            box-shadow: 0 1px 4px rgba(0,0,0,0.1);
            color: #1a5d7a;
        }
        .helpers-counter {
            display: flex;
            align-items: center;
            gap: 8px;
            margin-top: 6px;
            flex-wrap: wrap;
        }
        .counter-item {
            display: flex;
            align-items: center;
            gap: 6px;
            background: white;
            padding: 2px 10px;
            border-radius: 30px;
            border: 1px solid #e2e8f0;
        }
        .counter-btn {
            width: 22px;
            height: 22px;
            border-radius: 50%;
            background: #f0f4f9;
            border: none;
            font-size: 14px;
            font-weight: bold;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        .counter-value {
            min-width: 22px;
            text-align: center;
            font-weight: 600;
            font-size: 13px;
        }

        .valid-until-section {
            margin: 10px 0 8px;
        }
        .valid-until-section .valid-label {
            font-weight: 600;
            font-size: 12px;
            color: #2c3e4e;
            margin-bottom: 4px;
            display: flex;
            align-items: center;
            gap: 4px;
        }
        .valid-until-section .valid-input-wrapper {
            display: flex;
            gap: 6px;
            align-items: center;
            flex-wrap: wrap;
        }
        .valid-until-section input[type="date"] {
            flex: 1;
            padding: 8px 12px;
            border: 1.5px solid #e2e8f0;
            border-radius: 10px;
            font-size: 13px;
            background: #fefefe;
            height: 38px;
            min-width: 0;
            cursor: pointer;
        }
        .valid-until-section input[type="date"]:focus {
            border-color: #2c7da0;
            outline: none;
        }
        .valid-until-section .quick-buttons {
            display: flex;
            gap: 4px;
            flex-wrap: wrap;
        }
        .valid-until-section .quick-btn {
            padding: 4px 10px;
            border: 1px solid #e2e8f0;
            border-radius: 20px;
            background: white;
            font-size: 11px;
            cursor: pointer;
            white-space: nowrap;
            height: 30px;
            display: flex;
            align-items: center;
        }
        .valid-until-section .quick-btn:hover {
            background: #f0f7fa;
            border-color: #2c7da0;
        }

        .comment-section {
            margin: 8px 0;
        }
        .comment-section .comment-label {
            font-weight: 600;
            font-size: 12px;
            color: #2c3e4e;
            margin-bottom: 4px;
            display: flex;
            align-items: center;
            gap: 4px;
        }
        .comment-section textarea {
            width: 100%;
            padding: 8px 12px;
            border: 1.5px solid #e2e8f0;
            border-radius: 10px;
            font-size: 13px;
            font-family: inherit;
            resize: vertical;
            min-height: 50px;
            background: #fefefe;
        }
        .comment-section textarea:focus {
            border-color: #2c7da0;
            outline: none;
        }

        /* Поле телефона - скрыто по умолчанию */
        .phone-section {
            margin: 8px 0;
            display: none;
            animation: slideDown 0.3s ease;
        }
        .phone-section.show {
            display: block;
        }
        @keyframes slideDown {
            from {
                opacity: 0;
                transform: translateY(-10px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
        .phone-section .phone-label {
            font-weight: 600;
            font-size: 12px;
            color: #2c3e4e;
            margin-bottom: 4px;
            display: flex;
            align-items: center;
            gap: 4px;
        }
        .phone-section .phone-input-wrapper {
            position: relative;
        }
        .phone-section input {
            width: 100%;
            padding: 8px 12px 8px 34px;
            border: 2px solid #dc2626;
            border-radius: 10px;
            font-size: 14px;
            height: 38px;
            transition: border-color 0.3s ease;
            background: #fff5f5;
        }
        .phone-section input:focus {
            border-color: #dc2626;
            outline: none;
        }
        .phone-section input.filled {
            border-color: #2c7da0;
            background: #fefefe;
        }
        .phone-section input.filled:focus {
            border-color: #2c7da0;
        }
        .phone-section input.error {
            border-color: #dc2626;
            background: #fff5f5;
        }
        .phone-section .phone-icon {
            position: absolute;
            left: 10px;
            top: 50%;
            transform: translateY(-50%);
            font-size: 16px;
            color: #6a8a9a;
        }
        .phone-section .error-message {
            color: #dc2626;
            font-size: 11px;
            margin-top: 4px;
            display: none;
        }
        .phone-section .error-message.show {
            display: block;
        }

        .order-submit {
            width: 100%;
            background: #f4a261;
            border: none;
            border-radius: 30px;
            padding: 12px;
            font-weight: 700;
            font-size: 15px;
            color: #1e2f3a;
            cursor: pointer;
            margin-top: 6px;
            transition: all 0.3s ease;
        }
        .order-submit:hover {
            background: #e76f51;
            color: white;
        }
        .order-submit.secondary {
            background: #2c7da0;
            color: white;
        }
        .order-submit.secondary:hover {
            background: #1a5d7a;
        }

        .modal-overlay {
            display: none;
            position: fixed;
            top: 0; left: 0;
            width: 100%; height: 100%;
            background: rgba(0,0,0,0.6);
            z-index: 1000;
            justify-content: center;
            align-items: center;
        }
        .modal-container {
            background: white;
            border-radius: 20px;
            width: 90%;
            max-width: 650px;
            height: 450px;
            display: flex;
            flex-direction: column;
            overflow: hidden;
        }
        .modal-header {
            padding: 12px 16px;
            background: #1a3e50;
            color: white;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }
        .modal-header h4 {
            font-size: 16px;
			color:white;
        }
        .modal-header h4 .route-distance {
            font-weight: 400;
            font-size: 12px;
            opacity: 0.8;
            margin-left: 8px;
						color:white;

        }
        .close-modal {
            background: none;
            border: none;
            color: white;
            font-size: 24px;
            cursor: pointer;
        }
        .search-panel {
            padding: 10px 12px;
            background: #f8fafc;
            border-bottom: 1px solid #e2e8f0;
            display: flex;
            gap: 6px;
            position: relative;
            flex-wrap: wrap;
        }
        .search-panel input {
            flex: 1;
            padding: 8px 12px;
            border: 1px solid #d0d8e7;
            border-radius: 30px;
            font-size: 13px;
            min-width: 120px;
            height: 36px;
        }
        .search-panel button {
            background: #2c7da0;
            border: none;
            color: white;
            padding: 0 16px;
            border-radius: 30px;
            font-weight: 500;
            cursor: pointer;
            white-space: nowrap;
            height: 36px;
            font-size: 13px;
        }
        #modalMap {
            flex: 1;
            width: 100%;
            background: #cde0ec;
            min-height: 250px;
        }
        .suggest-list {
            position: absolute;
            background: white;
            border-radius: 12px;
            box-shadow: 0 8px 20px rgba(0,0,0,0.15);
            max-height: 180px;
            overflow-y: auto;
            z-index: 1200;
            width: 100%;
            left: 0;
            top: 100%;
            margin-top: 4px;
        }
        .suggest-item {
            padding: 8px 12px;
            cursor: pointer;
            border-bottom: 1px solid #f0f2f5;
            font-size: 12px;
        }
        .suggest-item:hover {
            background: #eef2fa;
        }

        .address-input-wrapper {
            position: relative;
        }
        .address-input-wrapper .suggest-list {
            position: absolute;
            top: calc(100% + 4px);
            left: 0;
            right: 0;
            width: 100%;
            z-index: 500;
        }

        .waypoints-container {
            margin-bottom: 6px;
        }
        
        .leaflet-routing-container {
            display: none !important;
        }

        @media (max-width: 480px) {
            .distance-info {
                flex-direction: column;
                align-items: stretch;
            }
            .distance-info .right-block {
                justify-content: space-between;
            }
            .distance-info .label {
                font-size: 11px;
            }
            .distance-info .value {
                font-size: 15px;
            }
            .address-input-wrapper {
                flex-wrap: wrap;
            }
            .address-input-wrapper input {
                min-width: 100px;
                font-size: 12px;
                padding: 6px 10px;
                height: 34px;
            }
            .map-btn {
                font-size: 11px;
                padding: 0 10px;
                height: 34px;
            }
            .widget-body {
                padding: 12px;
            }
            .helpers-row {
                flex-direction: column;
                align-items: stretch;
            }
            .helpers-switch {
                justify-content: center;
            }
            .switch-opt {
                font-size: 10px;
                padding: 3px 10px;
            }
            .modal-header h4 {
                font-size: 14px;
            }
            .modal-header h4 .route-distance {
                font-size: 11px;
                margin-left: 4px;
            }
            .comment-section textarea {
                min-height: 40px;
                font-size: 12px;
                padding: 6px 10px;
            }
            .valid-until-section input[type="date"] {
                font-size: 12px;
                padding: 6px 10px;
                height: 34px;
            }
            .valid-until-section .quick-btn {
                font-size: 10px;
                padding: 3px 8px;
                height: 26px;
            }
            .size-btn {
                font-size: 12px;
                padding: 4px 0;
            }
            .truck-preview img {
                height: 50px;
            }
            .order-submit {
                font-size: 14px;
                padding: 10px;
            }
            .phone-section input {
                font-size: 13px;
                padding: 6px 10px 6px 30px;
                height: 34px;
            }
            .phone-section .phone-icon {
                font-size: 14px;
                left: 8px;
            }
        }

        @media (max-width: 380px) {
            .size-btn {
                font-size: 11px;
                padding: 3px 0;
            }
            .address-input-wrapper input {
                font-size: 11px;
                padding: 5px 8px;
                height: 30px;
            }
            .map-btn {
                font-size: 10px;
                padding: 0 8px;
                height: 30px;
            }
            .phone-section input {
                font-size: 12px;
                padding: 5px 8px 5px 28px;
                height: 30px;
            }
            .phone-section .phone-icon {
                font-size: 12px;
                left: 6px;
            }
        }