/*
        body { font-family: Arial, sans-serif; display: flex; justify-content: center; align-items: center; height: 100vh; margin: 0; background: #f4f4f4; }
*/
.zz_checkbox { appearance: auto;}
        .zz_body { font-family: Arial, sans-serif; display: flex; justify-content: center; align-items: center; height: 100vh; margin: 0; background: #f4f4f4; z-index: 1; }

/*zz_error-margin нет*/
        /* Ссылка-триггер */
        .zz_order-link {
            color: #007bff;
            text-decoration: none;
            font-weight: bold;
            font-size: 20px;
            cursor: pointer;
        }
        .zz_order-link:hover { text-decoration: underline; }

        /* Модальное окно (фон) */
        .zz_modal-overlay {
            position: fixed;
            top: 0;
            left: 0;
        }

        .zz_modal-overlay.active {
            display: flex;
        }

        /* Само модальное окно */
        .zz_modal-content {
            position: fixed;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            background: white;
            padding: 30px;
            border-radius: 12px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.3);
            width: 100%;
            max-width: 350px;
            display: none; /* Скрыто по умолчанию */
            flex-direction: column;
        }

        .zz_modal-overlay.active .zz_modal-content {
            display: flex;
        }

        /* Стилизация формы */
        .zz_modal-content h2 { margin-top: 0; font-size: 22px; }
        
        .zz_form-group { margin-bottom: 15px; padding-top: 15px; }

        label { display: block; margin-bottom: 5px; font-size: 14px; color: #333; }

        input[type="text"], input[type="tel"] {
            width: 100%;
            padding: 10px;
            border: 1px solid #ccc;
            border-radius: 6px;
            box-sizing: border-box;
        }

        .zz_checkbox-group {
            /*display: flex;*/
            align-items: flex-start;
            font-size: 13px;
            line-height: 1.4;
            color: #555;
        }

        .zz_checkbox-group input { margin-right: 10px; margin-top: 2px; }

        .zz_checkbox-group a { color: #007bff; text-decoration: none; }

        .zz_btn-submit {
            background: #28a745;
            color: white;
            border: none;
            padding: 12px;
            border-radius: 6px;
            cursor: pointer;
            font-size: 16px;
            margin-top: 15px;
            transition: background 0.3s;
        }

        .zz_btn-submit:hover { background: #218838; }

        .zz_btn-close {
            position: absolute;
            top: 10px;
            right: 15px;
            font-size: 24px;
            cursor: pointer;
            color: #aaa;
        }

        /* Сообщения об ошибках */
        .zz_error-msg { color: #dc3545; font-size: 12px; margin-top: 4px; display: none; }
        input.invalid { border-color: #dc3545; }
